import { Pool, CoinInfo, PoolConfig } from "./types"; import { getLatestProtocolPackageId } from "./libs/PoolInfo/index"; let globalPackageId: string; let globalPackageIdExpireAt: number; let cacheUpdatePromise: Promise | null = null; export const AddressMap: Record = { "0x2::sui::SUI": "Sui", "0xa99b8952d4f7d947ea77fe0ecdcc9e5fc0bcab2841d6e2a5aa00c3044e5544b5::navx::NAVX": "NAVX", "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55::cert::CERT": "vSui", "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdc::USDC": "wUSDC", //test usdc "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdt::USDT": "USDT", //test usdt "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::weth::WETH": "WETH", //test weth "0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc::afsui::AFSUI": "AFSUI", //test afsui "0xa45fa952a312a0a504fafb9bf3fc95faaccdfe613a740190c511663600d39010::usdys::USDYS": "USDYs", //test usdy "0x6775698681ebe5a3bd931f80c71eda65941d92ce1b8ee17b6fe59aacc2c489b6::tdai::TDAI": "TDAI", //test tdai "0x0ae6b3b3117ab4d524eaa16d74483324eb1885888ef0370803b331e1b04ee65c::ausd::AUSD": "AUSDS", //test ausd "0x06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS": "CETUS", "0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::hasui::HASUI": "haSui", "0x027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881::coin::COIN": "WBTC", "0x2053d08c1e2bd02791056171aab0fd12bd7cd7efad2ab8f6b9c8902f14df2ff2::ausd::AUSD": "AUSD", "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC": "nUSDC", "0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29::eth::ETH": "ETH", // native eth "0x960b531667636f39e85867775f52f6b1f220a058c4de786905bdf761e06a56bb::usdy::USDY": "USDY", "0x5145494a5f5100e645e4b0aa950fa6b68f614e8c59e17bc5ded3495123a79178::ns::NS": "NS", "0x5f496ed5d9d045c5b788dc1bb85f54100f2ede11e46f6a232c29daada4c5bdb6::coin::COIN": "stBTC", "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP": "DEEP", "0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a::fdusd::FDUSD": "FDUSD", "0xe1b45a0e641b9955a20aa0ad1c1f4ad86aad8afb07296d4085e349a50e90bdca::blue::BLUE": "BLUE", "0xce7ff77a83ea0cb6fd39bd8748e2ec89a3f41e8efdc3f4eb123e0ca37b184db2::buck::BUCK": "BUCK", "0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068::usdt::USDT": "suiUSDT", "0xd1b72982e40348d069bb1ff701e634c117bb5f741f44dff91e472d3b01461e55::stsui::STSUI": "stSUI", "0xaafb102dd0902f5055cadecd687fb5b71ca82ef0e0285d90afde828ec58ca96b::btc::BTC": "suiBTC", "0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8::coin::COIN": "WSOL", "0x3e8e9423d80e1774a7ca128fccd8bf5f1f7753be658c5e645929037f7c819040::lbtc::LBTC": "LBTC", "0x93b6e3432bdf986099feee41910b0dcc8d1db9040e2d3c27ccf20330c18a79ca::wal_test::WAL_TEST": "WAL", "0x3a304c7feba2d819ea57c3542d68439ca2c386ba02159c740f7b406e592c62ea::haedal::HAEDAL": "HAEDAL", "0x876a4b7bce8aeaef60464c11f4026903e9afacab79b9b142686158aa86560b50::xbtc::XBTC": "XBTC", "0x7262fb2f7a3a14c888c438a3cd9b912469a58cf60f367352c46584262e8299aa::ika::IKA": "IKA", "0x8f2b5eb696ed88b71fea398d330bccfa52f6e2a5a8e1ac6180fcb25c6de42ebc::coin::COIN": "EnzoBTC", "0xd1a91b46bd6d966b62686263609074ad16cfdffc63c31a4775870a2d54d20c6b::mbtc::MBTC": "MBTC", "0x83556891f4a0f233ce7b05cfe7f957d4020492a34f5405b2cb9377d060bef4bf::spring_sui::SPRING_SUI": "SpringSui", "0xa03ab7eee2c8e97111977b77374eaf6324ba617e7027382228350db08469189e::ybtc::YBTC": "YBTC", "0x9d297676e7a4b771ab023291377b2adfaa4938fb9080b8d12430e4b108b836a9::xaum::XAUM": "XAUM", }; export function getPackageCache(): string | undefined { return globalPackageId; } export function isPackageCacheExpired(): boolean { if (!globalPackageIdExpireAt || globalPackageIdExpireAt < Date.now()) { return true; } return false; } export async function setPackageCache( expirationLength: number = 3600 ): Promise { const id = await getLatestProtocolPackageId(); if (!id) { return; } globalPackageId = id; globalPackageIdExpireAt = Date.now() + expirationLength * 1000; // Convert seconds to milliseconds } async function updateCacheIfNeeded() { if (isPackageCacheExpired() && !cacheUpdatePromise) { cacheUpdatePromise = setPackageCache(); await cacheUpdatePromise; cacheUpdatePromise = null; } else if (cacheUpdatePromise) { await cacheUpdatePromise; } } export const getConfig = async () => { // await updateCacheIfNeeded(); // const protocolPackage = getPackageCache(); const protocolPackage = "0x8200ce83e1bc0894b641f0a466694b4f6e25d3f9cc3093915a887ec9e7f3395e"; return { ProtocolPackage: protocolPackage, StorageId: "0x111b9d70174462646e7e47e6fec5da9eb50cea14e6c5a55a910c8b0e44cd2913", IncentiveV2: "0x952b6726bbcc08eb14f38a3632a3f98b823f301468d7de36f1d05faaef1bdd2a", IncentiveV3: "0x5db4063954356f37ebdc791ec30f4cfd39734feff18820ee44dc2d2de96db899", PriceOracle: "0x25c718f494ff63021f75642ecaaeda826f44b2d9d59859a8ad45ef0fba9626f2", ReserveParentId: "0x287399b936f75e810e460f3d70ddb21d804d2224f16d04e9f3be12fe80115175", // get it from storage object id. storage.reserves uiGetter: "0xa37cf08e27973bc437d1adc77d910aa7dc908f263a3378163fb929f7146a2973", flashloanConfig: "0x3672b2bf471a60c30a03325f104f92fb195c9d337ba58072dce764fe2aa5e2dc", flashloanSupportedAssets: "0x6c8fc404b4f22443302bbcc50ee593e5b898cc1e6755d72af0a6aab5a7a6f6d3", }; }; export const pool: { [key: string]: PoolConfig } = { Sui: { name: "SUI", assetId: 0, poolId: "0x68b420259e3adcdadf165350984f59dfdaf677c3d639aaa54c1d907dae2dd1a3", type: "0x2::sui::SUI", reserveObjectId: "0x278cec0691f79d7ba7a4dfef5490d9419eb4e7a48d6cab88d9fa187952ee5462", borrowBalanceParentId: "0x040ee0bd51ff0adc3fff41d51a9b4d8e55213fee9b97324ee2ecfa76af1cdc55", supplyBalanceParentId: "0x0864aabbdcab5da56964b70fe6ad8fc592b01dfbb6254cb9bc2a965e517c1029", rewardFundId: "0x5fdbd4ae16b58784bc898d81c732815c46f92b915ba3a188a520424482b6bdd9", }, wUSDC: { name: "wUSDC", assetId: 1, poolId: "0x8bf81e96302d4307d8da07e49328875e1f2e205dc0c4d457bffe6a8c1740ba25", type: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdc::USDC", reserveObjectId: "0x4ae60e09f6b326b2c29054f1381a74e6cb7688220a1dad5cead3b2ab3decf029", borrowBalanceParentId: "0xd41bd348dd5a2a6ed42ecccf296dcf8c0fcb49880d3d07958352269e68cc6648", supplyBalanceParentId: "0xa3c613f37db324f30947230761bc5980a6d682bdc9027bb75656452d0d44bebc", rewardFundId: "", }, USDT: { name: "USDT", assetId: 2, poolId: "0x8c07168a57d3734e6fa710e734d228507159b567f8bee9becf2847cd5c5954ec", type: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdt::USDT", reserveObjectId: "0x4d712e2acea9339b4613a31501fafd03cb2987285da25e8254c731d29c8f11e8", borrowBalanceParentId: "0x035e3d850b52de17115ee95f1841bdca045d0040ff6681bfac57a46dbea61646", supplyBalanceParentId: "0x2eeb81b66f58670b497bde60bfb5b5cab07e0b7971f7b9add981f8c714100c41", rewardFundId: "0x619cc3b88a0901e972ae88bdfb51f901170a4b6276bde101e20b7eb852b92632", }, WETH: { name: "WETH", assetId: 3, poolId: "0x459f8732415859e4fba362e372db4b3a474d1d18ec54176ac401a2a2ee21f29b", type: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::weth::WETH", reserveObjectId: "0x06b658f63902ffe866787d5dfa8b5335d57a26b186cbdb60aeddeea75e1701a3", borrowBalanceParentId: "0xafdeaaaf8cff53acfa116687489dd2a86abb07e3142d57a9743b57241fa691d5", supplyBalanceParentId: "0x9a0a58a85f515f65ff05272ae48d0e7e3a38d8e7f26fd7e71e74f125624eedd9", rewardFundId: "0xfb0de07cd39509ecb312464daa9442fac0eb4487d7a9b984cdfc39c1fb7d2791", }, vSui: { name: "VoloSui", assetId: 4, poolId: "0xd386c359fd6295254d92022e902319e85c552bc5a8bd7af003ebe3074bd7f155", type: "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55::cert::CERT", reserveObjectId: "0x5bb709497addd45ad3c56e03feebaac002d854b3037243dcf7927018a0b797d4", borrowBalanceParentId: "0xedec31e75c912133fcd6865efbab331fac9c799d800e28ace77f0930c31ad41f", supplyBalanceParentId: "0x20f5f360d7efd835dbda0a14de00a72579b77ef3e30c6c6b70ff850b92fe9fab", rewardFundId: "0x4a1bf763bdf03c1fae15d7329db115ed37b8bf3c323938a3ddaa6b6e31a89789", }, AFSUI: { name: "AFSUI", assetId: 5, poolId: "0x3131b488d328d12869f0e32d0d3f20b0613963c795f8197f118fe2d6561adde7", type: "0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc::afsui::AFSUI", reserveObjectId: "0xaa7f15b7f2bfce2d6d50dfbe16ab712c6d855e60e406098f6e34ee4a5de5bc2f", borrowBalanceParentId: "0x272a678d94b099aa7a3bbd99825b124fc606fa609ea18db6a2b3405f592dd137", supplyBalanceParentId: "0x19807c58a9ba177673e7950208059c7bfe158943fc12a5f015a6e4a2625ac8a9", rewardFundId: "", }, haSui: { name: "HASUI", assetId: 6, poolId: "0x2e2fe883402d0b077fc000ab947192fc8c055ad9213bc6d4e8ebc73aaf315f5a", type: "0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::hasui::HASUI", reserveObjectId: "0xd2e0865bb361e21109ace6569625804c988b7a7865b57ef3dba25f445dbb1b5a", borrowBalanceParentId: "0x10680695eee60fde8fb2ca8fbe91c61feee8a83850b51143725b40821f8e82b0", supplyBalanceParentId: "0x180055b8cb7ce9b032e3383f5719bad5d56caf98ce0648f29efffb1d3cde7da5", rewardFundId: "", }, CETUS: { name: "CETUS", assetId: 7, poolId: "0xf6a2e1d9fd7c788f1e0763fc8fe277da8b21805d66aa31ea54e56f85a0f32f86", type: "0x06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS", reserveObjectId: "0x0b9180b5ce4654a31a58bdbdba4df5f4e6c44db606a665f33732177577b3feba", borrowBalanceParentId: "0x0ebffa79684eca608c72914e0dd0bdc94819de83aff755be9d31e0bb2296b99c", supplyBalanceParentId: "0x277683ed790d0a8b18e27fb1a731ae279be2f60e0c559b593605318d002c9a83", rewardFundId: "", }, NAVX: { name: "NAVX", assetId: 8, poolId: "0x521451b6329a41b7c49395e93cd718d821a6bb803ef9c8087d31d6056fe67819", type: "0xa99b8952d4f7d947ea77fe0ecdcc9e5fc0bcab2841d6e2a5aa00c3044e5544b5::navx::NAVX", reserveObjectId: "0x239b1026413181a1e78b8b187bc9954e8f488f0d62c33246bd4bfb3af3382341", borrowBalanceParentId: "0x2a5e8d1c0e6c9c35d6be4b415a29eb0ff08ed2c425f826f571e287dbf4d9c210", supplyBalanceParentId: "0xa28b2b2ffb3b3c611b272fa6877d00fd9352746557b758b54d03825b7dac4058", rewardFundId: "0x96945c944a7263ad6631c0ec4ef31adcf611563ef951d3b420bf0480338174ba", }, USDYS: { name: "USDYS", assetId: 9, poolId: "0xf76c7a424142c14da26659cd623e154b0a54c3952f2a684cc9a1fde8e766150a", type: "0xa45fa952a312a0a504fafb9bf3fc95faaccdfe613a740190c511663600d39010::usdys::USDYS", reserveObjectId: "0x44dbd23ca122eda5bb982371ffb5deb24daf31e42befa66bedc111f626d8de37", borrowBalanceParentId: "0x0fc4b6cc252579b6349b70d2f080a091d97ab6f944dbb395f5e56c0d484f6bdf", supplyBalanceParentId: "0xa1aaf010c20c32a716fbc52dfe4ddcbcf3cee1ba5a0c806147a2cc576fa0bcac", rewardFundId: "", }, USDY: { name: "USDY", assetId: 10, poolId: "0x8a08b94bb4ba4564446eb051cbab9e0438d8c2dd8ccf9bb29281e220973e3a61", type: "0x960b531667636f39e85867775f52f6b1f220a058c4de786905bdf761e06a56bb::usdy::USDY", reserveObjectId: "0xe1fdcbad49a6c094c9434a77b0ea8d3cc68dd9966926aa6fcd7251c16f7e5897", borrowBalanceParentId: "0x2d92220d0d99c235acc8041f6c9b25e14085eee230b5bb38b38832493a307142", supplyBalanceParentId: "0x4a5637d4461378a0a048d970bc34f3c93b40e1b2decb538782966dd671e2636f", rewardFundId: "", }, BUCK: { name: "BUCK", assetId: 11, poolId: "0x33f07c409f427c3c898a386bf8e15b52b5a0ecd287e30cba0ef9904e97e76ed8", type: "0xce7ff77a83ea0cb6fd39bd8748e2ec89a3f41e8efdc3f4eb123e0ca37b184db2::buck::BUCK", reserveObjectId: "0x61ab088159c9ac868e5292869190b72185ab7ea28839f74184b81d0546c66fa5", borrowBalanceParentId: "0x91343bd0358e508e5a3a47f471996750d3453f28f959d1f2fc7b6c10ed319125", supplyBalanceParentId: "0x9e394fb34811396b80bb9bec3156c7d8e97f99584624cf27720ce0d8cf0a8b20", rewardFundId: "", }, FDUSD: { name: "FDUSD", assetId: 12, poolId: "0xae84d70b04ef658231d88639ab7186da88a3328a4638752944a2ad3a2d2efa31", type: "0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a::fdusd::FDUSD", reserveObjectId: "0xd81096867c2177b61134df549a282c80f207380f581a52bf7b0789a4d984f6cf", borrowBalanceParentId: "0x8f061998eb6030ec626a84761f5d0762516c8f32e49eafd6d07cd85630eb4331", supplyBalanceParentId: "0xfee9f9f94995e5af4e8c1441b01fede684c96d370665bcb7633cb51569f7f744", rewardFundId: "", }, TDAI: { name: "TDAI", assetId: 13, poolId: "0xdd0f01b3483e99d51455541d1744e4aade22721d3e89d83bd6b681134ed17cc3", type: "0x6775698681ebe5a3bd931f80c71eda65941d92ce1b8ee17b6fe59aacc2c489b6::tdai::TDAI", reserveObjectId: "0x19218b90c7a219497fa4050eaf94c5e76a911b059b97f99466a38db9ec625e5b", borrowBalanceParentId: "0x16dacabb682d0ff050b7cb038ae07af4925d0f0022ef740e8dba4489c18fe836", supplyBalanceParentId: "0x47693490df9ce025217eacecad302b79308c68edf8d6bfa54ab62aadd9f0c611", rewardFundId: "", }, AUSDs: { name: "AUSDs", assetId: 14, poolId: "0x83579779b30fdd43a1d302e43974b992a24ee5eb7fedf35717f86219577996a9", type: "0x0ae6b3b3117ab4d524eaa16d74483324eb1885888ef0370803b331e1b04ee65c::ausd::AUSD", reserveObjectId: "0x95e25ef72ab7b1613dcbbb0aa2554cb7ae9f9048aa09a99b96d3ccaf1213a0d3", borrowBalanceParentId: "0xce71078dff569c43069c552d843ec57b7207e6f6374e6c0916243b824246c6c5", supplyBalanceParentId: "0x3dd645e67697dc68beb07ef97d6a22d80602544a2efb5ff2e75f78e5862792ef", rewardFundId: "", }, WBTC: { name: "WBTC", assetId: 15, poolId: "0x45d56b57c3d9015ea8a3f017414116ab428f9c97a0db00fb418f83c003d2a09c", type: "0x027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881::coin::COIN", reserveObjectId: "0x85023c9a57a95c5c08d37e275e8be6b40f12a2eb09bfb4cc258f3576523b4d4f", borrowBalanceParentId: "0x919efa3099cac69f39f971a4943e2ed211d5339f8ddf25b14555211418093875", supplyBalanceParentId: "0x6422fd09a988e27e2d2fb48461ea5e74224185e9e3528275d923f2f53522fb41", rewardFundId: "", }, AUSD: { name: "AUSD", assetId: 16, poolId: "0x90b4d0f180692203316d047825c19a66a53c9938ddd1ed1acc3e05a8438e813c", type: "0x2053d08c1e2bd02791056171aab0fd12bd7cd7efad2ab8f6b9c8902f14df2ff2::ausd::AUSD", reserveObjectId: "0x95e25ef72ab7b1613dcbbb0aa2554cb7ae9f9048aa09a99b96d3ccaf1213a0d3", borrowBalanceParentId: "0xce71078dff569c43069c552d843ec57b7207e6f6374e6c0916243b824246c6c5", supplyBalanceParentId: "0x3dd645e67697dc68beb07ef97d6a22d80602544a2efb5ff2e75f78e5862792ef", rewardFundId: "", }, ETH: { name: "ETH", assetId: 17, poolId: "0xc0dd8dc69de288c37d531cbca6098ded14d06d21e595053759435d68e12fe434", type: "0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29::eth::ETH", reserveObjectId: "0x5e89d2f1efeceed394e5feca32ccb873afa3ac494124d3d5247e706c12214870", borrowBalanceParentId: "0xda2f2cc0a1d83f5ccda12a7c2b317f69cb8b8b04a6de50ad4b8c44079a5233b6", supplyBalanceParentId: "0xc9608a574fffe857cde6b1e26ac2e544a3cdc564f829a228667722417dad9b12", rewardFundId: "", }, NS: { name: "NS", assetId: 18, poolId: "0x9560bd8276ec2a2dce85e53c4fd6c541fa383b802fa49c8e6fd4555a2a964eb4", type: "0x5145494a5f5100e645e4b0aa950fa6b68f614e8c59e17bc5ded3495123a79178::ns::NS", reserveObjectId: "0x3321b80228ac92e9f6d3c58be1a859053f513bbfb340d4527f1cc0000bd68c42", borrowBalanceParentId: "0x69d878fe4f5eb3083ff7b2ca71a009924c0857f2984ea0b3b982eff5fa84ef33", supplyBalanceParentId: "0xfaf7e58bb35c565f58ca479ef0bdb74ac9a8352f85310b68185e97d788fdf9a8", rewardFundId: "", }, LorenzoBTC: { name: "stBTC", assetId: 19, poolId: "0xb7b48430bfeb7f30ec9fbc8c2d67b0188aa19ff0f03e6b39193bae01fb19489b", type: "0x5f496ed5d9d045c5b788dc1bb85f54100f2ede11e46f6a232c29daada4c5bdb6::coin::COIN", reserveObjectId: "0x5ed96cb34c2005f6be120bac670760f673062236d5215c05569a003d73b50e2e", borrowBalanceParentId: "0x34b1fa39bc329f82ef24f05f8e67e3e77f67ca2d44a9f90427338505680a2263", supplyBalanceParentId: "0x66eaae717f228f798f3177ec5587319621ba077bfd1151ae40d9992f6e573fe8", rewardFundId: "", }, DEEP: { name: "DEEP", assetId: 20, poolId: "0x9582044bd2a7682c6c6c7e0028c79cdb7c9452a9a7600b0653051649ef93e8eb", type: "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP", reserveObjectId: "0x61da4ef8555558997b4428a34d8ba1bc9335041f4c3cfc3260e8523e5859fdb0", borrowBalanceParentId: "0x5842c5e448220155d414a44d4c8e0e47170b3b3df56492bf264995038cfe5170", supplyBalanceParentId: "0xfc61d47b3f8ffbed926fd1f6f5374ccf81bdc70fbfbab06489c4806314db6a10", rewardFundId: "", }, stSUI: { name: "stSUI", assetId: 21, poolId: "0xf6ab1d1838a64e3684161e3b958a4f2bb7bb4edb0ba79480796ecd149673b3de", type: "0xd1b72982e40348d069bb1ff701e634c117bb5f741f44dff91e472d3b01461e55::stsui::STSUI", reserveObjectId: "0x09072667183f8f634f75656fd7b065e3f96d14bcdc5d95eaed3303974baa0ec1", borrowBalanceParentId: "0x871f55514a0b37672e4435e32c61cc921e176006d85c9a07823ced3e8cdfaf00", supplyBalanceParentId: "0x7d53c267d7727ea48488620f1ae1afe49d6fdacfd8ed23d4c55c2bb3189d4e9e", rewardFundId: "", }, BLUE: { name: "BLUE", assetId: 22, poolId: "0xa07495c10a08a16848d23c31ce28d6f29d2e15cb7570f43c574efe8523ef548e", type: "0xe1b45a0e641b9955a20aa0ad1c1f4ad86aad8afb07296d4085e349a50e90bdca::blue::BLUE", reserveObjectId: "0xbf20842ec67af28c3cf30e65a95890b0b78057b14e1297d8c4aa2c7453639555", borrowBalanceParentId: "0xf8599cce8d8bc326112f0a2c77f2616f2b587411df3ec9ca308132abcd92e954", supplyBalanceParentId: "0xb1126323a5f349cb4699d34dcf019b173787d288f621ab9a8046eaa4296bf05c", rewardFundId: "", }, suiUSDT: { name: "suiUSDT", assetId: 23, poolId: "0x35410660a4dad5f8a036d8a3cfe1cd81ae8152acea9615855e1e8a6f32c50085", type: "0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068::usdt::USDT", reserveObjectId: "0xcffbf7ce9a1766b9cd109bd42b14e364c078c07f43c2bbae47ecd7dc9bca2d46", borrowBalanceParentId: "0x68dfa0a7a25e1b9bff3fb64d33e739fce92dd85c19970a48bd943e9c97f365b5", supplyBalanceParentId: "0xd4aa50314bfba95cba658890c73efc618668916df7a8f37ece2769c31e935070", rewardFundId: "", }, suiBTC: { name: "suiBTC", assetId: 24, poolId: "0x599aeb1f69a24262e5f13bae2960ba10f928c75888d3de7ab3940567fa52108a", type: "0xaafb102dd0902f5055cadecd687fb5b71ca82ef0e0285d90afde828ec58ca96b::btc::BTC", reserveObjectId: "0xadceed70c7c83a390e200854ef399a9cf895c9e09843e053db21308079eb2ff4", borrowBalanceParentId: "0xf233de5c743da3f20722570846cb1832a2f5c1c26c939f1b4031a8a39592c11e", supplyBalanceParentId: "0x0e2717209650d4eb7b3a0cf85e014840982c6605c4772310fdead9e858bf5375", rewardFundId: "", }, WSOL: { name: "WSOL", assetId: 25, poolId: "0x026d8c51bbdbbc0438148ab8a21570f47cc4a5e1087014648af03fa2981936a1", type: "0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8::coin::COIN", reserveObjectId: "0xcf020fdd93f47c63c2d8e853492b442f792d2203a51034ecea22e325e7ea8206", borrowBalanceParentId: "0x9ead83e3c40c81d41892d9196bf0a7ca83a9114b4f0c77c9cd4a796bc536edd6", supplyBalanceParentId: "0xdbb2f6a5503195d7c113321702d1d1d389c84ce1a0413eb440ca20a35af7cdf9", rewardFundId: "", }, LBTC: { name: "LBTC", assetId: 26, poolId: "0x79bbc465a041d13cf82c33567d6b6e5ad3a09743145b6cc418700506c07717e5", type: "0x3e8e9423d80e1774a7ca128fccd8bf5f1f7753be658c5e645929037f7c819040::lbtc::LBTC", reserveObjectId: "0xe4ceb4a1ff88768f0efeef0c3867adff577e593f6b4c78a8b5530456f36d8ffd", borrowBalanceParentId: "0x9a29792a2c3bb22000da2640c9a9903fdc8ac76f0f170447c945639c05b00536", supplyBalanceParentId: "0x017c91c2a61152ebdc135c0574d286911308166d08c2934bb94fa9f693682346", rewardFundId: "", }, WAL: { name: "WAL", assetId: 27, poolId: "0x464e5d31faad52217a72f70aa547f0c76d951215a643f1127c0a50f3e1e1465e", type: "0x93b6e3432bdf986099feee41910b0dcc8d1db9040e2d3c27ccf20330c18a79ca::wal_test::WAL_TEST", reserveObjectId: "0xf33a49d855b51f118f4d5f30e23b739b19f7c00d5211ec543ea45494483e9e94", borrowBalanceParentId: "0x70a5bfe9bac87dd52143797c9c35b80749f79064f1e169aba486e3f98e2fb67f", supplyBalanceParentId: "0xe185780cd3aa7ab792b7e4a032bd10351df20e4377050d3dea00de7d965c6118", rewardFundId: "", }, HAEDAL: { name: "HAEDAL", assetId: 28, poolId: "0x1c1a32850593c77b92eac4dcb8cefefb338118e6af030b400180f9d8d36357fb", type: "0x3a304c7feba2d819ea57c3542d68439ca2c386ba02159c740f7b406e592c62ea::haedal::HAEDAL", reserveObjectId: "0xe368e392a53da9ede3e4a48cd90723a7fd2160e9dfb6740ae768f6ffb15694dd", borrowBalanceParentId: "0x3d65233aec5f488cacdfdbcb4cd00e728e0f3f74970a2623cf6e41f5e6417fd2", supplyBalanceParentId: "0xd74ae98a59f5bbbe8779856b063c0344cd6cab179c78685e697fac154f0c42f2", rewardFundId: "", }, XBTC: { name: "XBTC", assetId: 29, poolId: "0x49e911df8f378001ea29445d1a688dae6e6f3d43d704647f29e1ca870195df74", type: "0x876a4b7bce8aeaef60464c11f4026903e9afacab79b9b142686158aa86560b50::xbtc::XBTC", reserveObjectId: "0xda2688e419988284723993987aa2b2ebf7009ab62e353c80725a033846f9435c", borrowBalanceParentId: "0xd1e5741f6db1f507fbbc8913ec739755b874584114ab1e33b61bdac2dbe08fae", supplyBalanceParentId: "0x0cf9f62b259ca38f95c236db4f55a84e0cb0e5bd7865ccd6ebf327da426bd8c1", rewardFundId: "", }, IKA: { name: "IKA", assetId: 30, poolId: "0xc897b53642b2e2cf0408fc9b6977330ee22f36c34ab85c87fcb9c83b68720e10", type: "0x7262fb2f7a3a14c888c438a3cd9b912469a58cf60f367352c46584262e8299aa::ika::IKA", reserveObjectId: "0x1c260cd2eb1ec482a1964b1e743c2730d744b52d2a354d36ba19c36d4b619c36", borrowBalanceParentId: "0xcbfd9c3c89d7078a3b6caa41600b9a9a7b58b251e7b630fef41116cd9fdaca52", supplyBalanceParentId: "0x4cdb2f0b2635f8651f9ab6cd769e8429dbd57e81181090cd8691a25081c1221c", rewardFundId: "", }, EnzoBTC: { name: "EnzoBTC", assetId: 31, poolId: "0x62ea1762ce20b0a51686c955b609a078d6b08fb682f6f7f38944662a3d01ba1b", type: "0x8f2b5eb696ed88b71fea398d330bccfa52f6e2a5a8e1ac6180fcb25c6de42ebc::coin::COIN", reserveObjectId: "0x1b79ebbe34535e90ec7f17782689dbc05ab026f15c5d96be88f821a22ff94335", borrowBalanceParentId: "0xec94b35c2e19d8483b263cbd7091c27a5b15b0cc6ad3b5e0074e33ee1250de8e", supplyBalanceParentId: "0x7ef03598e17c43945fba615731ea7128b06e8779146614ee48d65c75e9ec48fa", rewardFundId: "", }, MBTC: { name: "MBTC", assetId: 32, poolId: "0x30dab9ab6ad00d3faed9c05c127e8d17caf3a3ddff17298651824056c714a0fb", type: "0xd1a91b46bd6d966b62686263609074ad16cfdffc63c31a4775870a2d54d20c6b::mbtc::MBTC", reserveObjectId: "0xa688befe69f9e0533550ed68a2fee88ceb24fe8276c36ef8ad7f10832b9bd4ef", borrowBalanceParentId: "0xc170c3897a3d74ecd9e8512af54b93c1441b227d9711b27f1e61c4b3cf90a834", supplyBalanceParentId: "0x7e13096c08060830411c885400db6ce537827c3307c4a63e2be288ad7433a177", rewardFundId: "", }, YBTC: { name: "YBTC", assetId: 33, poolId: "0xa6df2a4a9d482bdf26c387ebf501b1465de90dec3ade179e9bc84a53c8645b34", type: "0xa03ab7eee2c8e97111977b77374eaf6324ba617e7027382228350db08469189e::ybtc::YBTC", reserveObjectId: "0xbc5ea09319b6e6bf5e9865aa3024e092182f221255e89d138526802e3d58c607", borrowBalanceParentId: "0xb3bac374d2248bd12af437d17225a6ece45572638937dceaf937d021e28d0dbc", supplyBalanceParentId: "0xe3aeebf6cefe07077bb2e5a2e96adc876536ab3ec0d2934036666b89ed52166d", rewardFundId: "", }, XAUM: { name: "XAUM", assetId: 34, poolId: "0xa5bbef453a8349229b6b5a4cb01a0af0ded6ebe4fa9cf933f718889188520c44", type: "0x9d297676e7a4b771ab023291377b2adfaa4938fb9080b8d12430e4b108b836a9::xaum::XAUM", reserveObjectId: "0x28c89419d055cc96d13e6c2db670b33911b052e9ad5cc20d77b998c5d7a04021", borrowBalanceParentId: "0x7ef34fc2e265dc1ac164de5db2c3268b5d5326f06f3c3c40bd4b4a4d03311dde", supplyBalanceParentId: "0xf88f0e0f7dcac3b0c12412ce35ae83a039d8fce5fc69022d644bf291d48f874c", rewardFundId: "", }, HIPPO: { name: "HIPPO", assetId: 88, poolId: "0x464e5d31faad52217a72f70aa547f0c76d951215a643f1127c0a50f3e1e1465e", type: "0x8993129d72e733985f7f1a00396cbd055bad6f817fee36576ce483c8bbb8b87b::sudeng::SUDENG", reserveObjectId: "0xf33a49d855b51f118f4d5f30e23b739b19f7c00d5211ec543ea45494483e9e94", borrowBalanceParentId: "0x70a5bfe9bac87dd52143797c9c35b80749f79064f1e169aba486e3f98e2fb67f", supplyBalanceParentId: "0xe185780cd3aa7ab792b7e4a032bd10351df20e4377050d3dea00de7d965c6118", rewardFundId: "", }, }; export const flashloanConfig = { id: "0x3672b2bf471a60c30a03325f104f92fb195c9d337ba58072dce764fe2aa5e2dc", }; export const Sui: CoinInfo = { symbol: "Sui", address: "0x2::sui::SUI", decimal: 9, }; export const wUSDC: CoinInfo = { symbol: "wUSDC", address: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdc::USDC", decimal: 6, }; export const USDT: CoinInfo = { symbol: "USDT", address: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdt::USDT", decimal: 6, }; export const WETH: CoinInfo = { symbol: "WETH", address: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::weth::WETH", decimal: 8, }; export const vSui: CoinInfo = { symbol: "vSui", address: "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55::cert::CERT", decimal: 9, }; export const AFSUI: CoinInfo = { symbol: "AFSUI", address: "0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc::afsui::AFSUI", decimal: 9, }; export const haSui: CoinInfo = { symbol: "haSui", address: "0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::hasui::HASUI", decimal: 9, }; export const CETUS: CoinInfo = { symbol: "CETUS", address: "0x06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS", decimal: 9, }; export const NAVX: CoinInfo = { symbol: "NAVX", address: "0xa99b8952d4f7d947ea77fe0ecdcc9e5fc0bcab2841d6e2a5aa00c3044e5544b5::navx::NAVX", decimal: 9, }; export const USDYS: CoinInfo = { symbol: "USDYS", address: "0xa45fa952a312a0a504fafb9bf3fc95faaccdfe613a740190c511663600d39010::usdys::USDYS", decimal: 6, }; export const USDY: CoinInfo = { symbol: "USDY", address: "0x960b531667636f39e85867775f52f6b1f220a058c4de786905bdf761e06a56bb::usdy::USDY", decimal: 6, }; export const BUCK: CoinInfo = { symbol: "BUCK", address: "0xce7ff77a83ea0cb6fd39bd8748e2ec89a3f41e8efdc3f4eb123e0ca37b184db2::buck::BUCK", decimal: 9, }; export const FDUSD: CoinInfo = { symbol: "FDUSD", address: "0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a::fdusd::FDUSD", decimal: 6, }; export const TDAI: CoinInfo = { symbol: "TDAI", address: "0x6775698681ebe5a3bd931f80c71eda65941d92ce1b8ee17b6fe59aacc2c489b6::tdai::TDAI", decimal: 6, }; export const AUSDS: CoinInfo = { symbol: "AUSD", address: "0x0ae6b3b3117ab4d524eaa16d74483324eb1885888ef0370803b331e1b04ee65c::ausd::AUSD", decimal: 6, }; export const WBTC: CoinInfo = { symbol: "WBTC", address: "0x027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881::coin::COIN", decimal: 8, }; export const AUSD: CoinInfo = { symbol: "AUSD", address: "0x2053d08c1e2bd02791056171aab0fd12bd7cd7efad2ab8f6b9c8902f14df2ff2::ausd::AUSD", decimal: 6, }; export const ETH: CoinInfo = { symbol: "ETH", address: "0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29::eth::ETH", decimal: 8, }; export const NS: CoinInfo = { symbol: "NS", address: "0x5145494a5f5100e645e4b0aa950fa6b68f614e8c59e17bc5ded3495123a79178::ns::NS", decimal: 6, }; export const LorenzoBTC: CoinInfo = { symbol: "stBTC", address: "0x5f496ed5d9d045c5b788dc1bb85f54100f2ede11e46f6a232c29daada4c5bdb6::coin::COIN", decimal: 8, }; export const DEEP: CoinInfo = { symbol: "DEEP", address: "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP", decimal: 6, }; export const stSUI: CoinInfo = { symbol: "stSUI", address: "0xd1b72982e40348d069bb1ff701e634c117bb5f741f44dff91e472d3b01461e55::stsui::STSUI", decimal: 9, }; export const BLUE: CoinInfo = { symbol: "BLUE", address: "0xe1b45a0e641b9955a20aa0ad1c1f4ad86aad8afb07296d4085e349a50e90bdca::blue::BLUE", decimal: 9, }; export const suiUSDT: CoinInfo = { symbol: "suiUSDT", address: "0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068::usdt::USDT", decimal: 6, }; export const suiBTC: CoinInfo = { symbol: "suiBTC", address: "0xaafb102dd0902f5055cadecd687fb5b71ca82ef0e0285d90afde828ec58ca96b::btc::BTC", decimal: 8, }; export const nUSDC: CoinInfo = { symbol: "nUSDC", address: "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC", decimal: 6, }; export const WSOL: CoinInfo = { symbol: "WSOL", address: "0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8::coin::COIN", decimal: 8, }; export const LBTC: CoinInfo = { symbol: "LBTC", address: "0x3e8e9423d80e1774a7ca128fccd8bf5f1f7753be658c5e645929037f7c819040::lbtc::LBTC", decimal: 8, }; export const WAL: CoinInfo = { symbol: "WAL", address: "0x93b6e3432bdf986099feee41910b0dcc8d1db9040e2d3c27ccf20330c18a79ca::wal_test::WAL_TEST", decimal: 9, }; export const HAEDAL: CoinInfo = { symbol: "HAEDAL", address: "0x3a304c7feba2d819ea57c3542d68439ca2c386ba02159c740f7b406e592c62ea::haedal::HAEDAL", decimal: 9, }; export const XBTC: CoinInfo = { symbol: "XBTC", address: "0x876a4b7bce8aeaef60464c11f4026903e9afacab79b9b142686158aa86560b50::xbtc::XBTC", decimal: 8, }; export const IKA: CoinInfo = { symbol: "IKA", address: "0x7262fb2f7a3a14c888c438a3cd9b912469a58cf60f367352c46584262e8299aa::ika::IKA", decimal: 9, }; export const EnzoBTC: CoinInfo = { symbol: "EnzoBTC", address: "0x8f2b5eb696ed88b71fea398d330bccfa52f6e2a5a8e1ac6180fcb25c6de42ebc::coin::COIN", decimal: 8, }; export const MBTC: CoinInfo = { symbol: "MBTC", address: "0xd1a91b46bd6d966b62686263609074ad16cfdffc63c31a4775870a2d54d20c6b::mbtc::MBTC", decimal: 8, }; export const SpringSui: CoinInfo = { symbol: "sSui", address: "0x83556891f4a0f233ce7b05cfe7f957d4020492a34f5405b2cb9377d060bef4bf::spring_sui::SPRING_SUI", decimal: 9, }; export const YBTC: CoinInfo = { symbol: "YBTC", address: "0xa03ab7eee2c8e97111977b77374eaf6324ba617e7027382228350db08469189e::ybtc::YBTC", decimal: 8, }; export const XAUM: CoinInfo = { symbol: "XAUM", address: "0x9d297676e7a4b771ab023291377b2adfaa4938fb9080b8d12430e4b108b836a9::xaum::XAUM", decimal: 9, }; export const HIPPO: CoinInfo = { symbol: "HIPPO", address: "0x8993129d72e733985f7f1a00396cbd055bad6f817fee36576ce483c8bbb8b87b::sudeng::SUDENG", decimal: 9, }; export const vSuiConfig = { ProtocolPackage: "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55", pool: "0x7fa2faa111b8c65bea48a23049bfd81ca8f971a262d981dcd9a17c3825cb5baf", metadata: "0x680cd26af32b2bde8d3361e804c53ec1d1cfe24c7f039eb7f549e8dfde389a60", wrapper: "0x05", }; export const springSuiConfig = { id: "0x15eda7330c8f99c30e430b4d82fd7ab2af3ead4ae17046fcb224aa9bad394f6b", publishAt: "0xb0575765166030556a6eafd3b1b970eba8183ff748860680245b9edd41c716e7", type: "0x83556891f4a0f233ce7b05cfe7f957d4020492a34f5405b2cb9377d060bef4bf::spring_sui::SPRING_SUI", weightHookId: "0xbbafcb2d7399c0846f8185da3f273ad5b26b3b35993050affa44cfa890f1f144", }; export interface IPriceFeed { oracleId: number; maxTimestampDiff: number; priceDiffThreshold1: number; priceDiffThreshold2: number; maxDurationWithinThresholds: number; maximumAllowedSpanPercentage: number; maximumEffectivePrice: number; minimumEffectivePrice: number; historicalPriceTTL: number; coinType: string; feedId: string; supraPairId: number; pythPriceFeedId: string; pythPriceInfoObject: string; priceDecimal: number; expiration: number; } export const PriceFeedConfig: { [key: string]: IPriceFeed } = { SUI: { oracleId: 0, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 3000000000, // 3 = 3 * 1e9 = 3000000000 minimumEffectivePrice: 100000000, // 0.1 = 0.1 * 1e9 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI", feedId: "0x2cab9b151ca1721624b09b421cc57d0bb26a1feb5da1f821492204b098ec35c9", // TODO: value supraPairId: 90, // SUI_USDT -> 90, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Under%20Supervision-,SUI_USDT,-90 pythPriceFeedId: "0x23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744", // **fixed value: Crypto.SUI/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37", priceDecimal: 9, expiration: 30, }, WUSDC: { oracleId: 1, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 100000, // 0.1 = 0.1 * 1e6 = 100000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdc::USDC", feedId: "0x70a79226dda5c080378b639d1bb540ddea64761629aa4ad7355d79266d55af61", // TODO: value supraPairId: 47, // USDC_USDT -> 47, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Supra%20Standard-,USDC_USDT,-47 pythPriceFeedId: "0xeaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a", // **fixed value: Crypto.USDC/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x5dec622733a204ca27f5a90d8c2fad453cc6665186fd5dff13a83d0b6c9027ab", priceDecimal: 6, expiration: 30, }, USDT: { oracleId: 2, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 100000, // 0.1 = 0.1 * 1e6 = 100000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdt::USDT", feedId: "0xf72d8933873bb4e5bfa1edbfa9ff6443ec5fac25c1d99ba2ef37f50a125826f3", // TODO: value supraPairId: 48, // USDT_USD -> 48, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Supra%20Premium-,USDT_USD,-48 pythPriceFeedId: "0x2b89b9dc8fdf9f34709a5b106b472f0f39bb6ca9ce04b0fd7f2e971688e2e53b", // **fixed value: Crypto.USDT/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x985e3db9f93f76ee8bace7c3dd5cc676a096accd5d9e09e9ae0fb6e492b14572", priceDecimal: 6, expiration: 30, }, WETH: { oracleId: 3, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 600000000000, // 6000 = 6000 * 1e8 = 600000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::weth::WETH", feedId: "0x44d92366eba1f1652ec81f34585406726bef267565a2db1664ffd5ef18e21693", // TODO: value supraPairId: 1, // ETH_USDT -> 1, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Supra%20Premium-,ETH_USDT,-1 pythPriceFeedId: "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace", // **fixed value: Crypto.ETH/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x9193fd47f9a0ab99b6e365a464c8a9ae30e6150fc37ed2a89c1586631f6fc4ab", priceDecimal: 8, expiration: 30, }, CERT: { oracleId: 4, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 3000000000, // 3 = 3 * 1e9 = 3000000000 minimumEffectivePrice: 100000000, // 0.1 = 0.1 * 1e9 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55::cert::CERT", feedId: "0x086bb5540047b3c77ae5e2f9b811c7ef085517a73510f776753c8ee83d19e62c", // TODO: value supraPairId: 90, // SUI_USDT -> 90, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Under%20Supervision-,SUI_USDT,-90 pythPriceFeedId: "0x23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744", // **fixed value: Crypto.SUI/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37", priceDecimal: 9, expiration: 30, }, AFSUI: { oracleId: 5, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 3000000000, // 3 = 3 * 1e9 = 3000000000 minimumEffectivePrice: 100000000, // 0.1 = 0.1 * 1e9 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc::afsui::AFSUI", feedId: "0x086bb5540047b3c77ae5e2f9b811c7ef085517a73510f776753c8ee83d19e62c", // TODO: value supraPairId: 90, // SUI_USDT -> 90, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Under%20Supervision-,SUI_USDT,-90 pythPriceFeedId: "0x23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744", // **fixed value: Crypto.SUI/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37", priceDecimal: 9, expiration: 30, }, HASUI: { oracleId: 6, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 3000000000, // 3 = 3 * 1e9 = 3000000000 minimumEffectivePrice: 100000000, // 0.1 = 0.1 * 1e9 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::hasui::HASUI", feedId: "0xac934a2a2d406085e7f73b460221fe1b11935864605ba58cdbb8e21c15f12acd", // TODO: value supraPairId: 90, // SUI_USDT -> 90, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Under%20Supervision-,SUI_USDT,-90 pythPriceFeedId: "0x23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744", // **fixed value: Crypto.SUI/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37", priceDecimal: 9, expiration: 30, }, CETUS: { oracleId: 7, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 200, // x1: 2% = 0.02 * 10000 = 200 priceDiffThreshold2: 400, // x2: 4% = 0.04 * 10000 = 400 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 1000000000, // 1 = 1 * 1e9 = 1000000000 minimumEffectivePrice: 1000000, // 0.001 = 0.001 * 1e9 = 1000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x6864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS", feedId: "0x5ac98fc1e6723af2a6d9a68a5d771654a6043f9c4d2b836b2d5fb4832a3be4f2", // TODO: value supraPairId: 93, // CETUS_USDT -> 93, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Supra%20Premium-,CETUS_USDT,-93 pythPriceFeedId: "0xe5b274b2611143df055d6e7cd8d93fe1961716bcd4dca1cad87a83bc1e78c1ef", // **fixed value: Crypto.CETUS/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x24c0247fb22457a719efac7f670cdc79be321b521460bd6bd2ccfa9f80713b14", priceDecimal: 9, expiration: 30, }, NAVX: { oracleId: 8, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 200, // x1: 2% = 0.02 * 10000 = 200 priceDiffThreshold2: 400, // x2: 4% = 0.04 * 10000 = 400 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 1000000000, // 1 = 1 * 1e9 = 1000000000 minimumEffectivePrice: 1000000, // 0.001 = 0.001 * 1e9 = 1000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0xa99b8952d4f7d947ea77fe0ecdcc9e5fc0bcab2841d6e2a5aa00c3044e5544b5::navx::NAVX", feedId: "0x4324c797d2f19eff517c24adec8b92aa2d282e44f3a5cafb36d6c4b30d7f2dca", // TODO: value supraPairId: 408, // NAVX_USDT -> 408, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Supra%20Premium-,NAVX_USDT,-408 pythPriceFeedId: "0x88250f854c019ef4f88a5c073d52a18bb1c6ac437033f5932cd017d24917ab46", // **fixed value: Crypto.NAVX/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x5b117a6a2de70796bffe36495bad576b788a34c33ca0648bd57852ead3f41e32", priceDecimal: 9, expiration: 30, }, USDYS: { oracleId: 9, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 10000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "a45fa952a312a0a504fafb9bf3fc95faaccdfe613a740190c511663600d39010::usdys::USDYS", feedId: "0x11ddf2ac1868d493e2487deeb2a0c2791bb7ca69632c8c5fefe85e09390be093", // TODO: values supraPairId: 185, pythPriceFeedId: "0xe393449f6aff8a4b6d3e1165a7c9ebec103685f3b41e60db4277b5b6d10e7326", pythPriceInfoObject: "0x62e15c2fd1437a4d0e111dbd8a193f244878ba25cc7caa9120d0ee41ac151ea5", priceDecimal: 6, expiration: 30, }, USDY: { oracleId: 10, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 10000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x960b531667636f39e85867775f52f6b1f220a058c4de786905bdf761e06a56bb::usdy::USDY", feedId: "0x11ddf2ac1868d493e2487deeb2a0c2791bb7ca69632c8c5fefe85e09390be093", // TODO: values supraPairId: 185, pythPriceFeedId: "0xe393449f6aff8a4b6d3e1165a7c9ebec103685f3b41e60db4277b5b6d10e7326", pythPriceInfoObject: "0x62e15c2fd1437a4d0e111dbd8a193f244878ba25cc7caa9120d0ee41ac151ea5", priceDecimal: 6, expiration: 30, }, BUCK: { oracleId: 11, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 80, priceDiffThreshold2: 150, maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000000, minimumEffectivePrice: 1000000, historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0xce7ff77a83ea0cb6fd39bd8748e2ec89a3f41e8efdc3f4eb123e0ca37b184db2::buck::BUCK", feedId: "0x93c1b815f64ef7c4311d74ff7c0ca1e47739c3ac31fdee0068c30887633ba2fb", supraPairId: 161, pythPriceFeedId: "0xfdf28a46570252b25fd31cb257973f865afc5ca2f320439e45d95e0394bc7382", pythPriceInfoObject: "0x3ef821a54dbdfe3f211b2ff7261dea0f0330c72fd292422ce586e21f43809a56", priceDecimal: 9, expiration: 30, }, FDUSD: { oracleId: 12, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 10000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a::fdusd::FDUSD", feedId: "0x843b39829166bd97d61843b8967405f13d443e066ce2f4fa0685f187974d34bd", supraPairId: 474, pythPriceFeedId: "0xccdc1a08923e2e4f4b1e6ea89de6acbc5fe1948e9706f5604b8cb50bc1ed3979", pythPriceInfoObject: "0x5f6583b2b0fe1ecf94aaffeaab8a838794693960cea48c0da282d5f4a24be027", priceDecimal: 6, expiration: 30, }, TDAI: { oracleId: 13, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 10000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0x6775698681ebe5a3bd931f80c71eda65941d92ce1b8ee17b6fe59aacc2c489b6::tdai::TDAI", feedId: "0x843b39829166bd97d61843b8967405f13d443e066ce2f4fa0685f187974d34bd", supraPairId: 474, pythPriceFeedId: "0xccdc1a08923e2e4f4b1e6ea89de6acbc5fe1948e9706f5604b8cb50bc1ed3979", pythPriceInfoObject: "0x5f6583b2b0fe1ecf94aaffeaab8a838794693960cea48c0da282d5f4a24be027", priceDecimal: 6, expiration: 30, }, AUSDS: { oracleId: 14, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 10000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x0ae6b3b3117ab4d524eaa16d74483324eb1885888ef0370803b331e1b04ee65c::ausd::AUSD", feedId: "0x9a0656e1e10a0cdf3f03dce9db9ad931f51dc6eac2e52ebfbf535dfbcf8100ef", // TODO: values supraPairId: 99999, pythPriceFeedId: "0xd9912df360b5b7f21a122f15bdd5e27f62ce5e72bd316c291f7c86620e07fb2a", pythPriceInfoObject: "0x94ef89923e7beccd4a52043a9451a87c614684b847426fb5fd76faa8cb1e907f", priceDecimal: 6, expiration: 30, }, WBTC: { oracleId: 15, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 10000000000000, // 100000 = 100000 * 1e8 = 10000000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881::coin::COIN", feedId: "0x1bf4727242a61d892feef6616d3e40a3bd24b64b5deb884054e86cb9360556c4", // TODO: value supraPairId: 0, // BTC_USDT -> 0, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Pair%20Category-,BTC_USDT,-0 pythPriceFeedId: "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43", // Crypto.BTC/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2", priceDecimal: 8, expiration: 30, }, AUSD: { oracleId: 16, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 10000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x2053d08c1e2bd02791056171aab0fd12bd7cd7efad2ab8f6b9c8902f14df2ff2::ausd::AUSD", feedId: "0x9a0656e1e10a0cdf3f03dce9db9ad931f51dc6eac2e52ebfbf535dfbcf8100ef", // TODO: values supraPairId: 99999, pythPriceFeedId: "0xd9912df360b5b7f21a122f15bdd5e27f62ce5e72bd316c291f7c86620e07fb2a", pythPriceInfoObject: "0x94ef89923e7beccd4a52043a9451a87c614684b847426fb5fd76faa8cb1e907f", priceDecimal: 6, expiration: 30, }, ETH: { oracleId: 18, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 600000000000, // 6000 = 6000 * 1e8 = 600000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29::eth::ETH", feedId: "0x9a6ffc707270286e98e8d0f654ce38f69efbc302ac98e2deb11fbad2211600f0", // TODO: value supraPairId: 1, // ETH_USDT -> 1, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Supra%20Premium-,ETH_USDT,-1 pythPriceFeedId: "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace", // **fixed value: Crypto.ETH/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x9193fd47f9a0ab99b6e365a464c8a9ae30e6150fc37ed2a89c1586631f6fc4ab", priceDecimal: 8, expiration: 30, }, NS: { oracleId: 20, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 100000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0x5145494a5f5100e645e4b0aa950fa6b68f614e8c59e17bc5ded3495123a79178::ns::NS", feedId: "0xc771ec0ca245857f30195ce05197a7b3ab41c58c1e8abe0661919d90675ad63d", supraPairId: 99999, // ignore for now pythPriceFeedId: "0xbb5ff26e47a3a6cc7ec2fce1db996c2a145300edc5acaabe43bf9ff7c5dd5d32", pythPriceInfoObject: "0xc6352e1ea55d7b5acc3ed690cc3cdf8007978071d7bfd6a189445018cfb366e0", priceDecimal: 6, expiration: 30, }, LORENZOBTC: { oracleId: 21, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 20000000000000, // 20000000000000 = 200000 * 1e8 = 20000000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0x5f496ed5d9d045c5b788dc1bb85f54100f2ede11e46f6a232c29daada4c5bdb6::coin::COIN", feedId: "0xdf9b254a7a64742e1edf8c48bd2a1f182b52f020de2ab070ae0e3f9228d05280", supraPairId: 0, pythPriceFeedId: "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43", pythPriceInfoObject: "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2", priceDecimal: 8, expiration: 30, }, DEEP: { oracleId: 19, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 200, // x1: 2% = 0.02 * 10000 = 200 priceDiffThreshold2: 400, // x2: 4% = 0.04 * 10000 = 400 maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 400000, // 0.4 = 0.4 * 1e6 = 400000 minimumEffectivePrice: 1000, // 0.001 = 0.001 * 1e6 = 1000 historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP", feedId: "0x4558092b08ad1b33b0eb536f91a4655693c2390ac568f06de6f6fad827888600", supraPairId: 491, pythPriceFeedId: "0x29bdd5248234e33bd93d3b81100b5fa32eaa5997843847e2c2cb16d7c6d9f7ff", pythPriceInfoObject: "0x8c7f3a322b94cc69db2a2ac575cbd94bf5766113324c3a3eceac91e3e88a51ed", priceDecimal: 6, expiration: 30, }, STSUI: { oracleId: 22, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 100, priceDiffThreshold2: 300, maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 10000000000, minimumEffectivePrice: 100000000, historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0xd1b72982e40348d069bb1ff701e634c117bb5f741f44dff91e472d3b01461e55::stsui::STSUI", feedId: "0xd7a8c920db9f8b5c3c300307d88fca53684fd15b760977dbf8f0adc6e55783bd", supraPairId: 90, pythPriceFeedId: "0x23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744", pythPriceInfoObject: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37", priceDecimal: 9, expiration: 30, }, BLUE: { oracleId: 23, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 200, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 400, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 1000000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0xe1b45a0e641b9955a20aa0ad1c1f4ad86aad8afb07296d4085e349a50e90bdca::blue::BLUE", feedId: "0xd8286c11df7e49496ee75622ae4132c56385c30b4bedb392e36c0699a52a1d52", supraPairId: 99999, pythPriceFeedId: "0x04cfeb7b143eb9c48e9b074125c1a3447b85f59c31164dc20c1beaa6f21f2b6b", pythPriceInfoObject: "0x5515a34fc610bba6b601575ed1d2535b2f9df1f339fd0d435fef487c1ee3df9c", priceDecimal: 9, expiration: 30, }, SUIUSDT: { oracleId: 24, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 80, priceDiffThreshold2: 150, maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, minimumEffectivePrice: 100000, historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068::usdt::USDT", feedId: "0xdeba21105ff41300f8829aaeba45fdec25d1533a64d504ef0348ff005da3fbe5", supraPairId: 48, pythPriceFeedId: "0x2b89b9dc8fdf9f34709a5b106b472f0f39bb6ca9ce04b0fd7f2e971688e2e53b", pythPriceInfoObject: "0x985e3db9f93f76ee8bace7c3dd5cc676a096accd5d9e09e9ae0fb6e492b14572", priceDecimal: 6, expiration: 30, }, SUIBTC: { oracleId: 25, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 20000000000000, // 200000 = 200000 * 1e8 = 20000000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0xaafb102dd0902f5055cadecd687fb5b71ca82ef0e0285d90afde828ec58ca96b::btc::BTC", feedId: "0x4e4666c82c476f0b51b27c5ed8c77ab960aa5e4c3a48796e179d721b471e3b7e", // TODO: value supraPairId: 0, // BTC_USDT -> 0, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Pair%20Category-,BTC_USDT,-0 pythPriceFeedId: "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43", // Crypto.BTC/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2", priceDecimal: 8, expiration: 30, }, WSOL: { oracleId: 26, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 100000000000, // 1000 * 1e8 = 100000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8::coin::COIN", feedId: "0x9a7d68cd26885be09472b2cc140cd53d73a42ea112a9d15511ca41894951ddef", supraPairId: 10, // SOL_USDT -> 10 pythPriceFeedId: "0xef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d", // **fixed value: Crypto.SOL/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x9d0d275efbd37d8a8855f6f2c761fa5983293dd8ce202ee5196626de8fcd4469", priceDecimal: 8, expiration: 30, }, LBTC: { oracleId: 27, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 15000000000000, // 150000 = 150000 * 1e8 = 15000000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x3e8e9423d80e1774a7ca128fccd8bf5f1f7753be658c5e645929037f7c819040::lbtc::LBTC", feedId: "0x33bad24fd78655cf4f1703072f78e5b56b9e940d7b331f9edd41ba261ca22d07", // TODO: value supraPairId: 0, // BTC_USDT -> 0, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Pair%20Category-,BTC_USDT,-0 pythPriceFeedId: "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43", // Crypto.BTC/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2", priceDecimal: 8, expiration: 30, }, WAL: { oracleId: 29, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 100, priceDiffThreshold2: 300, maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 10000000000, // 10 * 1e9 = 10000000000 minimumEffectivePrice: 1000000, // 0.001 * 1e9 = 1000000 historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0x93b6e3432bdf986099feee41910b0dcc8d1db9040e2d3c27ccf20330c18a79ca::wal_test::WAL_TEST", // TODO: test verison feedId: "0xc18d1471524a7666ca89b7b7fb25c0f9fa55034280b0143218e311390dbad5d8", // TODO: value supraPairId: 99999, // none pythPriceFeedId: "0xeba0732395fae9dec4bae12e52760b35fc1c5671e2da8b449c9af4efe5d54341", // **fixed value: Crypto.SUI/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0xeb7e669f74d976c0b99b6ef9801e3a77716a95f1a15754e0f1399ce3fb60973d", priceDecimal: 9, expiration: 30, }, HAEDAL: { oracleId: 30, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 100, priceDiffThreshold2: 300, maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 10000000000, // 10 * 1e9 = 10000000000 minimumEffectivePrice: 1000000, // 0.001 * 1e9 = 1000000 historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0x3a304c7feba2d819ea57c3542d68439ca2c386ba02159c740f7b406e592c62ea::haedal::HAEDAL", // feedId: "0xf37501b0b8e56f51af45db3e3a358ac6dcbd752aab87bcdeacc62cdcef3afb21", // TODO: value supraPairId: 99999, // none pythPriceFeedId: "0xe67d98cc1fbd94f569d5ba6c3c3c759eb3ffc5d2b28e64538a53ae13efad8fd1", // **fixed value: Crypto.SUI/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0xbc98681c15de1ca1b80a8e26500d43c77f7113368b024de1bf490afcb0387109", priceDecimal: 9, expiration: 30, }, XBTC: { oracleId: 31, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 50000000000000, // 100000 = 100000 * 1e8 = 10000000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x876a4b7bce8aeaef60464c11f4026903e9afacab79b9b142686158aa86560b50::xbtc::XBTC", feedId: "0xdd61dcdf4fce2eb3c20fb14d0f1d69fdb64242338ec9e95eb6753980d4c5dd03", // TODO: value supraPairId: 0, pythPriceFeedId: "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43", pythPriceInfoObject: "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2", priceDecimal: 8, expiration: 30, }, IKA: { oracleId: 32, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 4000, // 40% = 0.4 * 10000 = 4000 maximumEffectivePrice: 2000000000, // 2 = 2 * 1e9 = 2000000000 minimumEffectivePrice: 10000000, // 0.01 = 0.01 * 1e9 = 10000000 historicalPriceTTL: 2 * 60 * 1000, // 2min(millisecond) coinType: "0x7262fb2f7a3a14c888c438a3cd9b912469a58cf60f367352c46584262e8299aa::ika::IKA", feedId: "0xf263a09abec30287661136eb9e71d2d9cb2cf8bde57f1bed8214dd5abcb7493f", // TODO: value supraPairId: 99999, // none pythPriceFeedId: "0xeaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a", // **fixed value: Crypto.USDC/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x5dec622733a204ca27f5a90d8c2fad453cc6665186fd5dff13a83d0b6c9027ab", priceDecimal: 9, expiration: 30, }, EnzoBTC: { oracleId: 33, maxTimestampDiff: 60 * 1000, // 60s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 50000000000000, // 500000 = 500000 * 1e8 = 50000000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 2 * 60 * 1000, // 2min(millisecond) coinType: "0x8f2b5eb696ed88b71fea398d330bccfa52f6e2a5a8e1ac6180fcb25c6de42ebc::coin::COIN", feedId: "0xf45e84ab99e5ca2c1c1476a2435f7440313197ed0d35eda63dd2bf4cf2ce4b36", // TODO: value supraPairId: 99999, pythPriceFeedId: "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43", pythPriceInfoObject: "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2", priceDecimal: 8, expiration: 60, }, MBTC: { oracleId: 34, maxTimestampDiff: 60 * 1000, // 60s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 50000000000000, // 500000 = 500000 * 1e8 = 50000000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 2 * 60 * 1000, // 2min(millisecond) coinType: "0xd1a91b46bd6d966b62686263609074ad16cfdffc63c31a4775870a2d54d20c6b::mbtc::MBTC", feedId: "0x6b1a30b11e74e15212feb2bcea9cc7139e3234f8a6947c3e3678382e9c603aa5", // TODO: value supraPairId: 99999, pythPriceFeedId: "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43", pythPriceInfoObject: "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2", priceDecimal: 8, expiration: 60, }, YBTC: { oracleId: 35, maxTimestampDiff: 60 * 1000, // 60s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 50000000000000, // 500000 = 500000 * 1e8 = 50000000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 2 * 60 * 1000, // 2min(millisecond) coinType: "0xa03ab7eee2c8e97111977b77374eaf6324ba617e7027382228350db08469189e::ybtc::YBTC", feedId: "0x5ce3dafe1235f5b4ed685124ff09b891c60da6037891691a03b343b6ecfdc236", // TODO: value supraPairId: 99999, pythPriceFeedId: "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43", pythPriceInfoObject: "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2", priceDecimal: 8, expiration: 60, }, XAUM: { oracleId: 36, maxTimestampDiff: 60 * 1000, // 60s(millisecond) priceDiffThreshold1: 200, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 400, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 3000, // 30% = 0.3 * 10000 = 3000 maximumEffectivePrice: 50000000000000, // 500000 = 500000 * 1e9 = 500000000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e9 = 1000000000 historicalPriceTTL: 2 * 60 * 1000, // 2min(millisecond) coinType: "0x9d297676e7a4b771ab023291377b2adfaa4938fb9080b8d12430e4b108b836a9::xaum::XAUM", feedId: "0xc170e4662da1788f67552205dd587de26c5cf4eaae180d09cef4293ee3d57ce1", supraPairId: 99999, pythPriceFeedId: "0xd7db067954e28f51a96fd50c6d51775094025ced2d60af61ec9803e553471c88", pythPriceInfoObject: "0x2731a8e3e9bc69b2d6af6f4c032fcd4856c77e2c21f839134d1ebcc3a16e4b1b", priceDecimal: 9, expiration: 60, }, HIPPO: { oracleId: 88, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 100, priceDiffThreshold2: 300, maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 10000000000, minimumEffectivePrice: 100000000, historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0x8993129d72e733985f7f1a00396cbd055bad6f817fee36576ce483c8bbb8b87b::sudeng::SUDENG", // TODO: test verison feedId: "0xc18d1471524a7666ca89b7b7fb25c0f9fa55034280b0143218e311390dbad5d8", // TODO: value supraPairId: 90, // SUI_USDT -> 90, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Under%20Supervision-,SUI_USDT,-90 pythPriceFeedId: "0x23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744", // **fixed value: Crypto.SUI/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37", priceDecimal: 9, expiration: 30, }, }; export interface IOracleProConfig { PackageId: string; PriceOracle: string; OracleAdminCap: string; OracleConfig: string; PythStateId: string; WormholeStateId: string; SupraOracleHolder: string; Sender: string; GasObject: string; } export const OracleProConfig: IOracleProConfig = { PackageId: "0x203728f46eb10d19f8f8081db849c86aa8f2a19341b7fd84d7a0e74f053f6242", // TODO: value PriceOracle: "0x1568865ed9a0b5ec414220e8f79b3d04c77acc82358f6e5ae4635687392ffbef", // TODO: value OracleAdminCap: "0x7204e37882baf10f31b66cd1ac78ac65b3b8ad29c265d1e474fb4b24ccd6d5b7", // TODO: value OracleConfig: "0x1afe1cb83634f581606cc73c4487ddd8cc39a944b951283af23f7d69d5589478", // TODO: value PythStateId: "0x1f9310238ee9298fb703c3419030b35b22bb1cc37113e3bb5007c99aec79e5b8", // **fixed value WormholeStateId: "0xaeab97f96cf9877fee2883315d459552b2b921edc16d7ceac6eab944dd88919c", // **fixed value SupraOracleHolder: "0xaa0315f0748c1f24ddb2b45f7939cff40f7a8104af5ccbc4a1d32f870c0b4105", // **fixed value Sender: "0x39c70d4ce3ce769a46f46ad80184a88bc25be9b49545751f5425796ef0c3d9ba", // TODO: value GasObject: "0x1e30410559ed83708ee1bb6b21e3a1dae96f1768ce35ed8233590b130ddc0086", // TODO: value }; export const ProFundsPoolInfo: Record< string, { coinType: string; oracleId: number } > = { "524e28adcb04fe8b0ac5ddc23e6ca78f9a7d8afa17b680f6e59e7ab406ba60a9": { coinType: "0x2::sui::SUI", oracleId: 0, }, "6797966d809eccdd4827a49012c32172e2cac7dda27109aab922c513e83cf0c9": { coinType: "0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdc::USDC", oracleId: 1, }, f78f9269623a8a4b8b46b84ac4382ad450deea3d305cd8143870577332399e1f: { coinType: "0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdt::USDT", oracleId: 2, }, "1ca8aff8df0296a8dcdbce782c468a9474d5575d16c484359587c3b26a7229e4": { coinType: "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55::cert::CERT", oracleId: 4, }, "68505acdc8f9d73446f08b160d6fbfb878ec9c81f6b706883240c030545d2c8a": { coinType: "f325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc::afsui::AFSUI", oracleId: 5, }, "29659ecf615b9431f52c8e0cb9895b3610620acc988232fa7bbe877ba2f682e2": { coinType: "0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::hasui::HASUI", oracleId: 6, }, "015a4aa921fa99e071e0440d5d8c522b076bda63a0395a083adaafaf9061d4fa": { coinType: "0xa99b8952d4f7d947ea77fe0ecdcc9e5fc0bcab2841d6e2a5aa00c3044e5544b5::navx::NAVX", oracleId: 8, }, }; export const noDepositCoinType = [ "0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdt::USDT", "0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::weth::WETH", "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdc::USDC", ];