From 737d2bda6f6c712e072335e07d260993b0e420b2 Mon Sep 17 00:00:00 2001 From: Andrey Date: Tue, 28 Jan 2025 11:47:36 +0400 Subject: [PATCH] chore: add mainnet --- lib/core | 2 +- .../DefaultCollateralMigrator.json | 2 +- test/integration/SymbioticPeripheryConstants.sol | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/core b/lib/core index ca7258b..3b6add2 160000 --- a/lib/core +++ b/lib/core @@ -1 +1 @@ -Subproject commit ca7258bc6a02afcc09f1622e105f6d7d570e2eb9 +Subproject commit 3b6add23921d89dc364458b94e1c35bfb6736e27 diff --git a/out/DefaultCollateralMigrator.sol/DefaultCollateralMigrator.json b/out/DefaultCollateralMigrator.sol/DefaultCollateralMigrator.json index c0a0d11..40d5fe7 100644 --- a/out/DefaultCollateralMigrator.sol/DefaultCollateralMigrator.json +++ b/out/DefaultCollateralMigrator.sol/DefaultCollateralMigrator.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"migrate","inputs":[{"name":"collateral","type":"address","internalType":"address"},{"name":"vault","type":"address","internalType":"address"},{"name":"onBehalfOf","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"error","name":"AddressEmptyCode","inputs":[{"name":"target","type":"address","internalType":"address"}]},{"type":"error","name":"AddressInsufficientBalance","inputs":[{"name":"account","type":"address","internalType":"address"}]},{"type":"error","name":"FailedInnerCall","inputs":[]},{"type":"error","name":"SafeERC20FailedOperation","inputs":[{"name":"token","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x608080604052346015576105f7908161001a8239f35b5f80fdfe6080604090808252600480361015610015575f80fd5b5f915f3560e01c6334fcff0c1461002a575f80fd5b34610369576080366003190112610369576001600160a01b0382358181169081900361036957602490813591838316809303610369576044938435928184168403610369576064356323b872dd60e01b885233898901523084890152808789015260209788816064815f875af1801561045657610429575b50813b15610369578a5163f3fef3a360e01b8152308a82019081526020810192909252905f9082908190604001038183865af1801561041f576103f1575b508688918b51928380926338d52e0f60e01b82525afa9081156103ad5789916103b7575b50168851946370a0823160e01b8652308887015286868481855afa9586156103ad57899661037e575b508951636eb1769f60e11b8152308982015283810186905287818381865afa90811561037457918a93918c9897969593859161033b575b508711610203575b505085516311f9fbc960e21b81526001600160a01b03909316978301978852506020870193909352948592839182906040015b03925af19182156101f9578380936101be575b50508351928352820152f35b91925092508383813d83116101f2575b6101d88183610460565b810103126101ef5750808251920151905f806101b2565b80fd5b503d6101ce565b84513d85823e3d90fd5b919394959690925051928784019063095ea7b360e01b9283835287828701525f1981870152808652608086019267ffffffffffffffff938781108582111761032957918d8f9b9a9998969492819896949082918e5288519082895af16102676104ae565b816102f9575b50806102ef575b15610282575b50505061016c565b9193955091939597999a969851938b85015288828501528b8185015283526080830191838310908311176102dd575061019f989795938a936102cd8d9997946102d2948b52826104ed565b6104ed565b965f8080808061027a565b634e487b7160e01b5f90815260418752fd5b50843b1515610274565b8051801592508e908315610311575b5050505f61026d565b6103219350820181019101610496565b5f8d81610308565b8360418e634e487b7160e01b5f52525ffd5b94505096508783813d831161036d575b6103558183610460565b81010312610369578a96868b945190610164565b5f80fd5b503d61034b565b8b513d8c823e3d90fd5b9095508681813d83116103a6575b6103968183610460565b810103126103695751945f61012d565b503d61038c565b8a513d8b823e3d90fd5b90508681813d83116103ea575b6103ce8183610460565b810103126103e6575181811681036103e6575f610104565b8880fd5b503d6103c4565b90985067ffffffffffffffff811161040d5789525f97866100e0565b82604189634e487b7160e01b5f52525ffd5b8b513d5f823e3d90fd5b61044890893d8b1161044f575b6104408183610460565b810190610496565b505f6100a2565b503d610436565b8c513d5f823e3d90fd5b90601f8019910116810190811067ffffffffffffffff82111761048257604052565b634e487b7160e01b5f52604160045260245ffd5b90816020910312610369575180151581036103695790565b3d156104e8573d9067ffffffffffffffff821161048257604051916104dd601f8201601f191660200184610460565b82523d5f602084013e565b606090565b5f806105159260018060a01b03169360208151910182865af161050e6104ae565b908361055e565b8051908115159182610543575b505061052b5750565b60249060405190635274afe760e01b82526004820152fd5b6105569250602080918301019101610496565b155f80610522565b90610585575080511561057357805190602001fd5b604051630a12f52160e11b8152600490fd5b815115806105b8575b610596575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561058e56fea264697066735822122048c9897b2db9da29518b47e22b7cd00444bbf0588914a197b79b01852f465abf64736f6c63430008190033","sourceMap":"405:811:136:-:0;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604090808252600480361015610015575f80fd5b5f915f3560e01c6334fcff0c1461002a575f80fd5b34610369576080366003190112610369576001600160a01b0382358181169081900361036957602490813591838316809303610369576044938435928184168403610369576064356323b872dd60e01b885233898901523084890152808789015260209788816064815f875af1801561045657610429575b50813b15610369578a5163f3fef3a360e01b8152308a82019081526020810192909252905f9082908190604001038183865af1801561041f576103f1575b508688918b51928380926338d52e0f60e01b82525afa9081156103ad5789916103b7575b50168851946370a0823160e01b8652308887015286868481855afa9586156103ad57899661037e575b508951636eb1769f60e11b8152308982015283810186905287818381865afa90811561037457918a93918c9897969593859161033b575b508711610203575b505085516311f9fbc960e21b81526001600160a01b03909316978301978852506020870193909352948592839182906040015b03925af19182156101f9578380936101be575b50508351928352820152f35b91925092508383813d83116101f2575b6101d88183610460565b810103126101ef5750808251920151905f806101b2565b80fd5b503d6101ce565b84513d85823e3d90fd5b919394959690925051928784019063095ea7b360e01b9283835287828701525f1981870152808652608086019267ffffffffffffffff938781108582111761032957918d8f9b9a9998969492819896949082918e5288519082895af16102676104ae565b816102f9575b50806102ef575b15610282575b50505061016c565b9193955091939597999a969851938b85015288828501528b8185015283526080830191838310908311176102dd575061019f989795938a936102cd8d9997946102d2948b52826104ed565b6104ed565b965f8080808061027a565b634e487b7160e01b5f90815260418752fd5b50843b1515610274565b8051801592508e908315610311575b5050505f61026d565b6103219350820181019101610496565b5f8d81610308565b8360418e634e487b7160e01b5f52525ffd5b94505096508783813d831161036d575b6103558183610460565b81010312610369578a96868b945190610164565b5f80fd5b503d61034b565b8b513d8c823e3d90fd5b9095508681813d83116103a6575b6103968183610460565b810103126103695751945f61012d565b503d61038c565b8a513d8b823e3d90fd5b90508681813d83116103ea575b6103ce8183610460565b810103126103e6575181811681036103e6575f610104565b8880fd5b503d6103c4565b90985067ffffffffffffffff811161040d5789525f97866100e0565b82604189634e487b7160e01b5f52525ffd5b8b513d5f823e3d90fd5b61044890893d8b1161044f575b6104408183610460565b810190610496565b505f6100a2565b503d610436565b8c513d5f823e3d90fd5b90601f8019910116810190811067ffffffffffffffff82111761048257604052565b634e487b7160e01b5f52604160045260245ffd5b90816020910312610369575180151581036103695790565b3d156104e8573d9067ffffffffffffffff821161048257604051916104dd601f8201601f191660200184610460565b82523d5f602084013e565b606090565b5f806105159260018060a01b03169360208151910182865af161050e6104ae565b908361055e565b8051908115159182610543575b505061052b5750565b60249060405190635274afe760e01b82526004820152fd5b6105569250602080918301019101610496565b155f80610522565b90610585575080511561057357805190602001fd5b604051630a12f52160e11b8152600490fd5b815115806105b8575b610596575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561058e56fea264697066735822122048c9897b2db9da29518b47e22b7cd00444bbf0588914a197b79b01852f465abf64736f6c63430008190033","sourceMap":"405:811:136:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;405:811:136;;;;-1:-1:-1;;;;;405:811:136;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;743:66;;775:10;743:66;;;405:811;795:4;405:811;;;;;;;;;;743:66;;;405:811;743:66;405:811;743:66;;;;;;;;;405:811;819:62;;;;;;405:811;;-1:-1:-1;;;819:62:136;;795:4;819:62;;;405:811;;;;;;;;;;;;;;;;;;;819:62;;;;;;;;;;;;405:811;;;;;;;;;;;;;;908:38;;;;;;;;;;;;;405:811;;;;;;;;;965:38;;795:4;965:38;;;405:811;965:38;;;;;;;;;;;;;;;;405:811;-1:-1:-1;405:811:136;;-1:-1:-1;;;1017:45:136;;795:4;1017:45;;;405:811;;;;;;;1017:45;405:811;1017:45;405:811;1017:45;;;;;;;;;;;;;;;;;;;;;;405:811;1017:54;;-1:-1:-1;1013:137:136;;405:811;-1:-1:-1;;405:811:136;;-1:-1:-1;;;1166:41:136;;-1:-1:-1;;;;;405:811:136;;;1166:41;;;405:811;;;-1:-1:-1;405:811:136;;;;;;;;;;;;;;;;1166:41;;;;;;;;;;;;;;;405:811;;;;;;;;;;;;1166:41;;;;;;;;;;;;;;;;;;;:::i;:::-;;;405:811;;;;;;;;;;;1166:41;;;;;405:811;;;1166:41;;;;;;405:811;;;;;;;;;1013:137;405:811;;;;;;;;;3411:47:118;;;;405:811:136;;;;3411:47:118;;;;;;;;405:811:136;1121:17;;405:811;;;;3411:47:118;;;405:811:136;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5615:25:118;;;;;;;;;:::i;:::-;5657:69;;;1013:137:136;5657:103:118;;;;1013:137:136;3473:45:118;3469:201;;1013:137:136;;;;;;3469:201:118;405:811:136;;;;;;;;;;;;;3561:43:118;;;;;;;;;405:811:136;;;;;;3561:43:118;;405:811:136;;;;;;;;;;;;;;1166:41;405:811;;;;;;3561:43:118;405:811:136;;;;3646:12:118;405:811:136;;;3561:43:118;;:::i;:::-;3646:12;:::i;:::-;3469:201;;;;;;;;405:811:136;-1:-1:-1;;;405:811:136;;;;;;;;5657:103:118;5730:26;;;:30;;5657:103;;:69;405:811:136;;5669:22:118;;;-1:-1:-1;5669:22:118;;:56;;;;5657:69;;;;;;;5669:56;5695:30;;-1:-1:-1;5695:30:118;;;;;;;:::i;:::-;5669:56;;;;;405:811:136;;;;;;;;;;;;1017:45;;;;;;;;;;;;;;;;;;;:::i;:::-;;;405:811;;;;;;;;;;1017:45;;;405:811;;;;1017:45;;;;;;405:811;;;;;;;;;965:38;;;;;;;;;;;;;;;;;:::i;:::-;;;405:811;;;;;965:38;;;;;;;;;;405:811;;;;;;;;;908:38;;;;;;;;;;;;;;;;:::i;:::-;;;405:811;;;;;;;;;;;;908:38;;;405:811;;;;908:38;;;;;819:62;405:811;;;;;;;;;;;;;819:62;;405:811;;;;;;;;;;;;819:62;405:811;;;;;;;;;743:66;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;;405:811;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;-1:-1:-1;;405:811:136;;;;;:::i;:::-;;;;-1:-1:-1;405:811:136;;;;:::o;:::-;;;:::o;4059:629:118:-;2847:1:119;4059:629:118;3510:55:119;4059:629:118;405:811:136;;;;;;3462:31:119;;;;;;;;;;;;:::i;:::-;3510:55;;;:::i;:::-;405:811:136;;4551:22:118;;;;:57;;;;4059:629;4547:135;;;;4059:629;:::o;4547:135::-;405:811:136;;;;4631:40:118;;;;;;;;;405:811:136;4631:40:118;4551:57;4578:30;;;3462:31:119;4578:30:118;;;;;;;;:::i;:::-;4577:31;4551:57;;;;4625:582:119;;4797:8;;-1:-1:-1;405:811:136;;5874:21:119;:17;;6046:142;;;;;;5870:383;405:811:136;;-1:-1:-1;;;6225:17:119;;;;;4793:408;405:811:136;;5045:22:119;:49;;;4793:408;5041:119;;5173:17;;:::o;5041:119::-;405:811:136;;-1:-1:-1;;;5121:24:119;;-1:-1:-1;;;;;405:811:136;;;5121:24:119;;;405:811:136;;;5121:24:119;5045:49;5071:18;;;:23;5045:49;","linkReferences":{}},"methodIdentifiers":{"migrate(address,address,address,uint256)":"34fcff0c"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"name\":\"AddressEmptyCode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"AddressInsufficientBalance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FailedInnerCall\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"SafeERC20FailedOperation\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"collateral\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"vault\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"onBehalfOf\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"migrate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"AddressEmptyCode(address)\":[{\"details\":\"There's no code at `target` (it is not a contract).\"}],\"AddressInsufficientBalance(address)\":[{\"details\":\"The ETH balance of the account is not enough to perform the operation.\"}],\"FailedInnerCall()\":[{\"details\":\"A call to an address target failed. The target may have reverted.\"}],\"SafeERC20FailedOperation(address)\":[{\"details\":\"An operation with an ERC20 token failed.\"}]},\"kind\":\"dev\",\"methods\":{\"migrate(address,address,address,uint256)\":{\"params\":{\"amount\":\"amount of the default collateral to unwrap and deposit\",\"collateral\":\"address of the default collateral to unwrap\",\"onBehalfOf\":\"address of the account to deposit the underlying asset on behalf of\",\"vault\":\"address of the vault to deposit the collateral's underlying asset\"},\"returns\":{\"_0\":\"real amount of the collateral deposited\",\"_1\":\"amount of the active shares minted\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"migrate(address,address,address,uint256)\":{\"notice\":\"Unwrap a particular default collateral and deposit its underlying asset to a given vault.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/contracts/DefaultCollateralMigrator.sol\":\"DefaultCollateralMigrator\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/collateral/lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@symbioticfi/collateral/=lib/collateral/\",\":@symbioticfi/core/=lib/core/\",\":collateral/=lib/collateral/\",\":core/=lib/core/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/collateral/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":openzeppelin-contracts-upgradeable/=lib/collateral/lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":permit2/=lib/collateral/lib/permit2/\",\":solmate/=lib/collateral/lib/permit2/lib/solmate/\"],\"viaIR\":true},\"sources\":{\"lib/core/src/interfaces/common/IMigratableEntity.sol\":{\"keccak256\":\"0x8f5f2809f3afbe8ebfbb365dd7b57b4dd3b6f9943a6187eaf648d45895b8e3c4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0ffe640537d539e7a4fde70d30d3e4c57f4ba9c2c25c450cea713aae38e8fd5c\",\"dweb:/ipfs/QmSUTGzvdcn1R1KB7tLThMRtESsfPbeXDhhhKWGtntzBds\"]},\"lib/core/src/interfaces/vault/IVault.sol\":{\"keccak256\":\"0xffee01d383cd4e1a5530c614bf4360c1ef070c288abec9da1eb531b51bc07235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://04f0046cac285d8ec44ebbb1f79dc94fab4495767190cad8364fbc1fafaadfb9\",\"dweb:/ipfs/QmUawAunwzXfCyShWfhKeThAgKtqe51hmrxvrXvM772M2R\"]},\"lib/core/src/interfaces/vault/IVaultStorage.sol\":{\"keccak256\":\"0x592626f13754194f83047135de19229c49390bd59e34659b1bb38be71d973a22\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://06a6a9dfddd05e580b32bebe2cff4f63ba26a653180676d58225dd30d9c89d3e\",\"dweb:/ipfs/QmdgzBeY6Sxo8mGtyBxtv1tM1c2kU6J6zjeRd7vuXm4DU6\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xc6a8ff0ea489379b61faa647490411b80102578440ab9d84e9a957cc12164e70\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0ea104e577e63faea3b69c415637e99e755dcbf64c5833d7140c35a714d6d90c\",\"dweb:/ipfs/Qmau6x4Ns9XdyynRCNNp3RhLqijJjFm7z5fyZazfYFGYdq\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0x6008dabfe393240d73d7dd7688033f72740d570aa422254d29a7dce8568f3aff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f5196ec75139918c6c7bb4251b36395e668f1fa6d206beba7e7520e74913940d\",\"dweb:/ipfs/QmSyqjksXxmm2mCG6qRd1yuwLykypkSVBbnBnGqJRcuJMi\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x37bb49513c49c87c4642a891b13b63571bc87013dde806617aa1efb54605f386\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3036b3a83b7c48f96641f2a9002b9f2dcb6a5958dd670894ada21ae8229b3d0\",\"dweb:/ipfs/QmUNfSBdoVtjhETaUJCYcaC7pTMgbhht926tJ2uXJbiVd3\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0xaf28a975a78550e45f65e559a3ad6a5ad43b9b8a37366999abd1b7084eb70721\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7bd24e224f67f65bfadf85dc2929fa965456bb2415478bd0125471b5ce35245\",\"dweb:/ipfs/QmRaydGr8BTHs1kvaZfsNU69pKzUAGFrvABn1KiRSbE51y\"]},\"src/contracts/DefaultCollateralMigrator.sol\":{\"keccak256\":\"0x8d8f660395c19e05ac551fb3c86a009fb9035643febaa8cd6e9f5bb20a0ca3f6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9192dcf88867feef79491141ae9a2eccc4ea357fdb36460fe6f790c42303c619\",\"dweb:/ipfs/QmaYkzb91AsgGn8we5CFQQ9Mg3Xmpy3Droen3FFEGFvsHn\"]},\"src/interfaces/IDefaultCollateralMigrator.sol\":{\"keccak256\":\"0xca5816ad00dbad0eb278d9a992c7bc661cdfaf923d8586ff7b81a77e3ef79d6e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9078d18379ad2680a1cbce773d2b3f04f9ea9ac37cd2ee26265e7b83efb942c0\",\"dweb:/ipfs/QmagmnZjdRCgXUdVwmwvsZu246CFZic6QmdohQa1QJo4fP\"]},\"src/interfaces/defaultCollateral/IDefaultCollateral.sol\":{\"keccak256\":\"0xaab170d44bb9998849df3111205548b36984c249299f68b1198c23d83382ae94\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://dceb2a2253030414daead7d83fb82df2d6511b8880ad15f1593a5100a2610959\",\"dweb:/ipfs/QmPntw3ShHX81bodf1Vm1i6ZtJDTa2PQ8XtBNLg8zwhBLP\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.25+commit.b61c2a91"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"target","type":"address"}],"type":"error","name":"AddressEmptyCode"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"type":"error","name":"AddressInsufficientBalance"},{"inputs":[],"type":"error","name":"FailedInnerCall"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"type":"error","name":"SafeERC20FailedOperation"},{"inputs":[{"internalType":"address","name":"collateral","type":"address"},{"internalType":"address","name":"vault","type":"address"},{"internalType":"address","name":"onBehalfOf","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"migrate","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}]}],"devdoc":{"kind":"dev","methods":{"migrate(address,address,address,uint256)":{"params":{"amount":"amount of the default collateral to unwrap and deposit","collateral":"address of the default collateral to unwrap","onBehalfOf":"address of the account to deposit the underlying asset on behalf of","vault":"address of the vault to deposit the collateral's underlying asset"},"returns":{"_0":"real amount of the collateral deposited","_1":"amount of the active shares minted"}}},"version":1},"userdoc":{"kind":"user","methods":{"migrate(address,address,address,uint256)":{"notice":"Unwrap a particular default collateral and deposit its underlying asset to a given vault."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/collateral/lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@symbioticfi/collateral/=lib/collateral/","@symbioticfi/core/=lib/core/","collateral/=lib/collateral/","core/=lib/core/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/collateral/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","openzeppelin-contracts-upgradeable/=lib/collateral/lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","permit2/=lib/collateral/lib/permit2/","solmate/=lib/collateral/lib/permit2/lib/solmate/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/contracts/DefaultCollateralMigrator.sol":"DefaultCollateralMigrator"},"evmVersion":"cancun","libraries":{},"viaIR":true},"sources":{"lib/core/src/interfaces/common/IMigratableEntity.sol":{"keccak256":"0x8f5f2809f3afbe8ebfbb365dd7b57b4dd3b6f9943a6187eaf648d45895b8e3c4","urls":["bzz-raw://0ffe640537d539e7a4fde70d30d3e4c57f4ba9c2c25c450cea713aae38e8fd5c","dweb:/ipfs/QmSUTGzvdcn1R1KB7tLThMRtESsfPbeXDhhhKWGtntzBds"],"license":"MIT"},"lib/core/src/interfaces/vault/IVault.sol":{"keccak256":"0xffee01d383cd4e1a5530c614bf4360c1ef070c288abec9da1eb531b51bc07235","urls":["bzz-raw://04f0046cac285d8ec44ebbb1f79dc94fab4495767190cad8364fbc1fafaadfb9","dweb:/ipfs/QmUawAunwzXfCyShWfhKeThAgKtqe51hmrxvrXvM772M2R"],"license":"MIT"},"lib/core/src/interfaces/vault/IVaultStorage.sol":{"keccak256":"0x592626f13754194f83047135de19229c49390bd59e34659b1bb38be71d973a22","urls":["bzz-raw://06a6a9dfddd05e580b32bebe2cff4f63ba26a653180676d58225dd30d9c89d3e","dweb:/ipfs/QmdgzBeY6Sxo8mGtyBxtv1tM1c2kU6J6zjeRd7vuXm4DU6"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0xc6a8ff0ea489379b61faa647490411b80102578440ab9d84e9a957cc12164e70","urls":["bzz-raw://0ea104e577e63faea3b69c415637e99e755dcbf64c5833d7140c35a714d6d90c","dweb:/ipfs/Qmau6x4Ns9XdyynRCNNp3RhLqijJjFm7z5fyZazfYFGYdq"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0x6008dabfe393240d73d7dd7688033f72740d570aa422254d29a7dce8568f3aff","urls":["bzz-raw://f5196ec75139918c6c7bb4251b36395e668f1fa6d206beba7e7520e74913940d","dweb:/ipfs/QmSyqjksXxmm2mCG6qRd1yuwLykypkSVBbnBnGqJRcuJMi"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x37bb49513c49c87c4642a891b13b63571bc87013dde806617aa1efb54605f386","urls":["bzz-raw://b3036b3a83b7c48f96641f2a9002b9f2dcb6a5958dd670894ada21ae8229b3d0","dweb:/ipfs/QmUNfSBdoVtjhETaUJCYcaC7pTMgbhht926tJ2uXJbiVd3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0xaf28a975a78550e45f65e559a3ad6a5ad43b9b8a37366999abd1b7084eb70721","urls":["bzz-raw://b7bd24e224f67f65bfadf85dc2929fa965456bb2415478bd0125471b5ce35245","dweb:/ipfs/QmRaydGr8BTHs1kvaZfsNU69pKzUAGFrvABn1KiRSbE51y"],"license":"MIT"},"src/contracts/DefaultCollateralMigrator.sol":{"keccak256":"0x8d8f660395c19e05ac551fb3c86a009fb9035643febaa8cd6e9f5bb20a0ca3f6","urls":["bzz-raw://9192dcf88867feef79491141ae9a2eccc4ea357fdb36460fe6f790c42303c619","dweb:/ipfs/QmaYkzb91AsgGn8we5CFQQ9Mg3Xmpy3Droen3FFEGFvsHn"],"license":"MIT"},"src/interfaces/IDefaultCollateralMigrator.sol":{"keccak256":"0xca5816ad00dbad0eb278d9a992c7bc661cdfaf923d8586ff7b81a77e3ef79d6e","urls":["bzz-raw://9078d18379ad2680a1cbce773d2b3f04f9ea9ac37cd2ee26265e7b83efb942c0","dweb:/ipfs/QmagmnZjdRCgXUdVwmwvsZu246CFZic6QmdohQa1QJo4fP"],"license":"MIT"},"src/interfaces/defaultCollateral/IDefaultCollateral.sol":{"keccak256":"0xaab170d44bb9998849df3111205548b36984c249299f68b1198c23d83382ae94","urls":["bzz-raw://dceb2a2253030414daead7d83fb82df2d6511b8880ad15f1593a5100a2610959","dweb:/ipfs/QmPntw3ShHX81bodf1Vm1i6ZtJDTa2PQ8XtBNLg8zwhBLP"],"license":"MIT"}},"version":1},"id":136} \ No newline at end of file +{"abi":[{"type":"function","name":"migrate","inputs":[{"name":"collateral","type":"address","internalType":"address"},{"name":"vault","type":"address","internalType":"address"},{"name":"onBehalfOf","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"error","name":"AddressEmptyCode","inputs":[{"name":"target","type":"address","internalType":"address"}]},{"type":"error","name":"AddressInsufficientBalance","inputs":[{"name":"account","type":"address","internalType":"address"}]},{"type":"error","name":"FailedInnerCall","inputs":[]},{"type":"error","name":"SafeERC20FailedOperation","inputs":[{"name":"token","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x608080604052346015576105f7908161001a8239f35b5f80fdfe6080604090808252600480361015610015575f80fd5b5f915f3560e01c6334fcff0c1461002a575f80fd5b34610369576080366003190112610369576001600160a01b0382358181169081900361036957602490813591838316809303610369576044938435928184168403610369576064356323b872dd60e01b885233898901523084890152808789015260209788816064815f875af1801561045657610429575b50813b15610369578a5163f3fef3a360e01b8152308a82019081526020810192909252905f9082908190604001038183865af1801561041f576103f1575b508688918b51928380926338d52e0f60e01b82525afa9081156103ad5789916103b7575b50168851946370a0823160e01b8652308887015286868481855afa9586156103ad57899661037e575b508951636eb1769f60e11b8152308982015283810186905287818381865afa90811561037457918a93918c9897969593859161033b575b508711610203575b505085516311f9fbc960e21b81526001600160a01b03909316978301978852506020870193909352948592839182906040015b03925af19182156101f9578380936101be575b50508351928352820152f35b91925092508383813d83116101f2575b6101d88183610460565b810103126101ef5750808251920151905f806101b2565b80fd5b503d6101ce565b84513d85823e3d90fd5b919394959690925051928784019063095ea7b360e01b9283835287828701525f1981870152808652608086019267ffffffffffffffff938781108582111761032957918d8f9b9a9998969492819896949082918e5288519082895af16102676104ae565b816102f9575b50806102ef575b15610282575b50505061016c565b9193955091939597999a969851938b85015288828501528b8185015283526080830191838310908311176102dd575061019f989795938a936102cd8d9997946102d2948b52826104ed565b6104ed565b965f8080808061027a565b634e487b7160e01b5f90815260418752fd5b50843b1515610274565b8051801592508e908315610311575b5050505f61026d565b6103219350820181019101610496565b5f8d81610308565b8360418e634e487b7160e01b5f52525ffd5b94505096508783813d831161036d575b6103558183610460565b81010312610369578a96868b945190610164565b5f80fd5b503d61034b565b8b513d8c823e3d90fd5b9095508681813d83116103a6575b6103968183610460565b810103126103695751945f61012d565b503d61038c565b8a513d8b823e3d90fd5b90508681813d83116103ea575b6103ce8183610460565b810103126103e6575181811681036103e6575f610104565b8880fd5b503d6103c4565b90985067ffffffffffffffff811161040d5789525f97866100e0565b82604189634e487b7160e01b5f52525ffd5b8b513d5f823e3d90fd5b61044890893d8b1161044f575b6104408183610460565b810190610496565b505f6100a2565b503d610436565b8c513d5f823e3d90fd5b90601f8019910116810190811067ffffffffffffffff82111761048257604052565b634e487b7160e01b5f52604160045260245ffd5b90816020910312610369575180151581036103695790565b3d156104e8573d9067ffffffffffffffff821161048257604051916104dd601f8201601f191660200184610460565b82523d5f602084013e565b606090565b5f806105159260018060a01b03169360208151910182865af161050e6104ae565b908361055e565b8051908115159182610543575b505061052b5750565b60249060405190635274afe760e01b82526004820152fd5b6105569250602080918301019101610496565b155f80610522565b90610585575080511561057357805190602001fd5b604051630a12f52160e11b8152600490fd5b815115806105b8575b610596575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561058e56fea2646970667358221220e5cab600aa0306ac2d408c5dba2325897615ad7ead63d4255aa95024314875ba64736f6c63430008190033","sourceMap":"405:811:138:-:0;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604090808252600480361015610015575f80fd5b5f915f3560e01c6334fcff0c1461002a575f80fd5b34610369576080366003190112610369576001600160a01b0382358181169081900361036957602490813591838316809303610369576044938435928184168403610369576064356323b872dd60e01b885233898901523084890152808789015260209788816064815f875af1801561045657610429575b50813b15610369578a5163f3fef3a360e01b8152308a82019081526020810192909252905f9082908190604001038183865af1801561041f576103f1575b508688918b51928380926338d52e0f60e01b82525afa9081156103ad5789916103b7575b50168851946370a0823160e01b8652308887015286868481855afa9586156103ad57899661037e575b508951636eb1769f60e11b8152308982015283810186905287818381865afa90811561037457918a93918c9897969593859161033b575b508711610203575b505085516311f9fbc960e21b81526001600160a01b03909316978301978852506020870193909352948592839182906040015b03925af19182156101f9578380936101be575b50508351928352820152f35b91925092508383813d83116101f2575b6101d88183610460565b810103126101ef5750808251920151905f806101b2565b80fd5b503d6101ce565b84513d85823e3d90fd5b919394959690925051928784019063095ea7b360e01b9283835287828701525f1981870152808652608086019267ffffffffffffffff938781108582111761032957918d8f9b9a9998969492819896949082918e5288519082895af16102676104ae565b816102f9575b50806102ef575b15610282575b50505061016c565b9193955091939597999a969851938b85015288828501528b8185015283526080830191838310908311176102dd575061019f989795938a936102cd8d9997946102d2948b52826104ed565b6104ed565b965f8080808061027a565b634e487b7160e01b5f90815260418752fd5b50843b1515610274565b8051801592508e908315610311575b5050505f61026d565b6103219350820181019101610496565b5f8d81610308565b8360418e634e487b7160e01b5f52525ffd5b94505096508783813d831161036d575b6103558183610460565b81010312610369578a96868b945190610164565b5f80fd5b503d61034b565b8b513d8c823e3d90fd5b9095508681813d83116103a6575b6103968183610460565b810103126103695751945f61012d565b503d61038c565b8a513d8b823e3d90fd5b90508681813d83116103ea575b6103ce8183610460565b810103126103e6575181811681036103e6575f610104565b8880fd5b503d6103c4565b90985067ffffffffffffffff811161040d5789525f97866100e0565b82604189634e487b7160e01b5f52525ffd5b8b513d5f823e3d90fd5b61044890893d8b1161044f575b6104408183610460565b810190610496565b505f6100a2565b503d610436565b8c513d5f823e3d90fd5b90601f8019910116810190811067ffffffffffffffff82111761048257604052565b634e487b7160e01b5f52604160045260245ffd5b90816020910312610369575180151581036103695790565b3d156104e8573d9067ffffffffffffffff821161048257604051916104dd601f8201601f191660200184610460565b82523d5f602084013e565b606090565b5f806105159260018060a01b03169360208151910182865af161050e6104ae565b908361055e565b8051908115159182610543575b505061052b5750565b60249060405190635274afe760e01b82526004820152fd5b6105569250602080918301019101610496565b155f80610522565b90610585575080511561057357805190602001fd5b604051630a12f52160e11b8152600490fd5b815115806105b8575b610596575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561058e56fea2646970667358221220e5cab600aa0306ac2d408c5dba2325897615ad7ead63d4255aa95024314875ba64736f6c63430008190033","sourceMap":"405:811:138:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;405:811:138;;;;-1:-1:-1;;;;;405:811:138;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;743:66;;775:10;743:66;;;405:811;795:4;405:811;;;;;;;;;;743:66;;;405:811;743:66;405:811;743:66;;;;;;;;;405:811;819:62;;;;;;405:811;;-1:-1:-1;;;819:62:138;;795:4;819:62;;;405:811;;;;;;;;;;;;;;;;;;;819:62;;;;;;;;;;;;405:811;;;;;;;;;;;;;;908:38;;;;;;;;;;;;;405:811;;;;;;;;;965:38;;795:4;965:38;;;405:811;965:38;;;;;;;;;;;;;;;;405:811;-1:-1:-1;405:811:138;;-1:-1:-1;;;1017:45:138;;795:4;1017:45;;;405:811;;;;;;;1017:45;405:811;1017:45;405:811;1017:45;;;;;;;;;;;;;;;;;;;;;;405:811;1017:54;;-1:-1:-1;1013:137:138;;405:811;-1:-1:-1;;405:811:138;;-1:-1:-1;;;1166:41:138;;-1:-1:-1;;;;;405:811:138;;;1166:41;;;405:811;;;-1:-1:-1;405:811:138;;;;;;;;;;;;;;;;1166:41;;;;;;;;;;;;;;;405:811;;;;;;;;;;;;1166:41;;;;;;;;;;;;;;;;;;;:::i;:::-;;;405:811;;;;;;;;;;;1166:41;;;;;405:811;;;1166:41;;;;;;405:811;;;;;;;;;1013:137;405:811;;;;;;;;;3411:47:120;;;;405:811:138;;;;3411:47:120;;;;;;;;405:811:138;1121:17;;405:811;;;;3411:47:120;;;405:811:138;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5615:25:120;;;;;;;;;:::i;:::-;5657:69;;;1013:137:138;5657:103:120;;;;1013:137:138;3473:45:120;3469:201;;1013:137:138;;;;;;3469:201:120;405:811:138;;;;;;;;;;;;;3561:43:120;;;;;;;;;405:811:138;;;;;;3561:43:120;;405:811:138;;;;;;;;;;;;;;1166:41;405:811;;;;;;3561:43:120;405:811:138;;;;3646:12:120;405:811:138;;;3561:43:120;;:::i;:::-;3646:12;:::i;:::-;3469:201;;;;;;;;405:811:138;-1:-1:-1;;;405:811:138;;;;;;;;5657:103:120;5730:26;;;:30;;5657:103;;:69;405:811:138;;5669:22:120;;;-1:-1:-1;5669:22:120;;:56;;;;5657:69;;;;;;;5669:56;5695:30;;-1:-1:-1;5695:30:120;;;;;;;:::i;:::-;5669:56;;;;;405:811:138;;;;;;;;;;;;1017:45;;;;;;;;;;;;;;;;;;;:::i;:::-;;;405:811;;;;;;;;;;1017:45;;;405:811;;;;1017:45;;;;;;405:811;;;;;;;;;965:38;;;;;;;;;;;;;;;;;:::i;:::-;;;405:811;;;;;965:38;;;;;;;;;;405:811;;;;;;;;;908:38;;;;;;;;;;;;;;;;:::i;:::-;;;405:811;;;;;;;;;;;;908:38;;;405:811;;;;908:38;;;;;819:62;405:811;;;;;;;;;;;;;819:62;;405:811;;;;;;;;;;;;819:62;405:811;;;;;;;;;743:66;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;;405:811;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;-1:-1:-1;;405:811:138;;;;;:::i;:::-;;;;-1:-1:-1;405:811:138;;;;:::o;:::-;;;:::o;4059:629:120:-;2847:1:121;4059:629:120;3510:55:121;4059:629:120;405:811:138;;;;;;3462:31:121;;;;;;;;;;;;:::i;:::-;3510:55;;;:::i;:::-;405:811:138;;4551:22:120;;;;:57;;;;4059:629;4547:135;;;;4059:629;:::o;4547:135::-;405:811:138;;;;4631:40:120;;;;;;;;;405:811:138;4631:40:120;4551:57;4578:30;;;3462:31:121;4578:30:120;;;;;;;;:::i;:::-;4577:31;4551:57;;;;4625:582:121;;4797:8;;-1:-1:-1;405:811:138;;5874:21:121;:17;;6046:142;;;;;;5870:383;405:811:138;;-1:-1:-1;;;6225:17:121;;;;;4793:408;405:811:138;;5045:22:121;:49;;;4793:408;5041:119;;5173:17;;:::o;5041:119::-;405:811:138;;-1:-1:-1;;;5121:24:121;;-1:-1:-1;;;;;405:811:138;;;5121:24:121;;;405:811:138;;;5121:24:121;5045:49;5071:18;;;:23;5045:49;","linkReferences":{}},"methodIdentifiers":{"migrate(address,address,address,uint256)":"34fcff0c"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"name\":\"AddressEmptyCode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"AddressInsufficientBalance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FailedInnerCall\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"SafeERC20FailedOperation\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"collateral\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"vault\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"onBehalfOf\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"migrate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"AddressEmptyCode(address)\":[{\"details\":\"There's no code at `target` (it is not a contract).\"}],\"AddressInsufficientBalance(address)\":[{\"details\":\"The ETH balance of the account is not enough to perform the operation.\"}],\"FailedInnerCall()\":[{\"details\":\"A call to an address target failed. The target may have reverted.\"}],\"SafeERC20FailedOperation(address)\":[{\"details\":\"An operation with an ERC20 token failed.\"}]},\"kind\":\"dev\",\"methods\":{\"migrate(address,address,address,uint256)\":{\"params\":{\"amount\":\"amount of the default collateral to unwrap and deposit\",\"collateral\":\"address of the default collateral to unwrap\",\"onBehalfOf\":\"address of the account to deposit the underlying asset on behalf of\",\"vault\":\"address of the vault to deposit the collateral's underlying asset\"},\"returns\":{\"_0\":\"real amount of the collateral deposited\",\"_1\":\"amount of the active shares minted\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"migrate(address,address,address,uint256)\":{\"notice\":\"Unwrap a particular default collateral and deposit its underlying asset to a given vault.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/contracts/DefaultCollateralMigrator.sol\":\"DefaultCollateralMigrator\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/core/lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@symbioticfi/collateral/=lib/collateral/\",\":@symbioticfi/core/=lib/core/\",\":collateral/=lib/collateral/\",\":core/=lib/core/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/collateral/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":openzeppelin-contracts-upgradeable/=lib/core/lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":permit2/=lib/collateral/lib/permit2/\",\":solmate/=lib/collateral/lib/permit2/lib/solmate/\"],\"viaIR\":true},\"sources\":{\"lib/core/src/interfaces/common/IMigratableEntity.sol\":{\"keccak256\":\"0x8f5f2809f3afbe8ebfbb365dd7b57b4dd3b6f9943a6187eaf648d45895b8e3c4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0ffe640537d539e7a4fde70d30d3e4c57f4ba9c2c25c450cea713aae38e8fd5c\",\"dweb:/ipfs/QmSUTGzvdcn1R1KB7tLThMRtESsfPbeXDhhhKWGtntzBds\"]},\"lib/core/src/interfaces/vault/IVault.sol\":{\"keccak256\":\"0xffee01d383cd4e1a5530c614bf4360c1ef070c288abec9da1eb531b51bc07235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://04f0046cac285d8ec44ebbb1f79dc94fab4495767190cad8364fbc1fafaadfb9\",\"dweb:/ipfs/QmUawAunwzXfCyShWfhKeThAgKtqe51hmrxvrXvM772M2R\"]},\"lib/core/src/interfaces/vault/IVaultStorage.sol\":{\"keccak256\":\"0x592626f13754194f83047135de19229c49390bd59e34659b1bb38be71d973a22\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://06a6a9dfddd05e580b32bebe2cff4f63ba26a653180676d58225dd30d9c89d3e\",\"dweb:/ipfs/QmdgzBeY6Sxo8mGtyBxtv1tM1c2kU6J6zjeRd7vuXm4DU6\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xc6a8ff0ea489379b61faa647490411b80102578440ab9d84e9a957cc12164e70\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0ea104e577e63faea3b69c415637e99e755dcbf64c5833d7140c35a714d6d90c\",\"dweb:/ipfs/Qmau6x4Ns9XdyynRCNNp3RhLqijJjFm7z5fyZazfYFGYdq\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0x6008dabfe393240d73d7dd7688033f72740d570aa422254d29a7dce8568f3aff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f5196ec75139918c6c7bb4251b36395e668f1fa6d206beba7e7520e74913940d\",\"dweb:/ipfs/QmSyqjksXxmm2mCG6qRd1yuwLykypkSVBbnBnGqJRcuJMi\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x37bb49513c49c87c4642a891b13b63571bc87013dde806617aa1efb54605f386\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3036b3a83b7c48f96641f2a9002b9f2dcb6a5958dd670894ada21ae8229b3d0\",\"dweb:/ipfs/QmUNfSBdoVtjhETaUJCYcaC7pTMgbhht926tJ2uXJbiVd3\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0xaf28a975a78550e45f65e559a3ad6a5ad43b9b8a37366999abd1b7084eb70721\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7bd24e224f67f65bfadf85dc2929fa965456bb2415478bd0125471b5ce35245\",\"dweb:/ipfs/QmRaydGr8BTHs1kvaZfsNU69pKzUAGFrvABn1KiRSbE51y\"]},\"src/contracts/DefaultCollateralMigrator.sol\":{\"keccak256\":\"0x8d8f660395c19e05ac551fb3c86a009fb9035643febaa8cd6e9f5bb20a0ca3f6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9192dcf88867feef79491141ae9a2eccc4ea357fdb36460fe6f790c42303c619\",\"dweb:/ipfs/QmaYkzb91AsgGn8we5CFQQ9Mg3Xmpy3Droen3FFEGFvsHn\"]},\"src/interfaces/IDefaultCollateralMigrator.sol\":{\"keccak256\":\"0xca5816ad00dbad0eb278d9a992c7bc661cdfaf923d8586ff7b81a77e3ef79d6e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9078d18379ad2680a1cbce773d2b3f04f9ea9ac37cd2ee26265e7b83efb942c0\",\"dweb:/ipfs/QmagmnZjdRCgXUdVwmwvsZu246CFZic6QmdohQa1QJo4fP\"]},\"src/interfaces/defaultCollateral/IDefaultCollateral.sol\":{\"keccak256\":\"0xaab170d44bb9998849df3111205548b36984c249299f68b1198c23d83382ae94\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://dceb2a2253030414daead7d83fb82df2d6511b8880ad15f1593a5100a2610959\",\"dweb:/ipfs/QmPntw3ShHX81bodf1Vm1i6ZtJDTa2PQ8XtBNLg8zwhBLP\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.25+commit.b61c2a91"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"target","type":"address"}],"type":"error","name":"AddressEmptyCode"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"type":"error","name":"AddressInsufficientBalance"},{"inputs":[],"type":"error","name":"FailedInnerCall"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"type":"error","name":"SafeERC20FailedOperation"},{"inputs":[{"internalType":"address","name":"collateral","type":"address"},{"internalType":"address","name":"vault","type":"address"},{"internalType":"address","name":"onBehalfOf","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"migrate","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}]}],"devdoc":{"kind":"dev","methods":{"migrate(address,address,address,uint256)":{"params":{"amount":"amount of the default collateral to unwrap and deposit","collateral":"address of the default collateral to unwrap","onBehalfOf":"address of the account to deposit the underlying asset on behalf of","vault":"address of the vault to deposit the collateral's underlying asset"},"returns":{"_0":"real amount of the collateral deposited","_1":"amount of the active shares minted"}}},"version":1},"userdoc":{"kind":"user","methods":{"migrate(address,address,address,uint256)":{"notice":"Unwrap a particular default collateral and deposit its underlying asset to a given vault."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/core/lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@symbioticfi/collateral/=lib/collateral/","@symbioticfi/core/=lib/core/","collateral/=lib/collateral/","core/=lib/core/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/collateral/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","openzeppelin-contracts-upgradeable/=lib/core/lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","permit2/=lib/collateral/lib/permit2/","solmate/=lib/collateral/lib/permit2/lib/solmate/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/contracts/DefaultCollateralMigrator.sol":"DefaultCollateralMigrator"},"evmVersion":"cancun","libraries":{},"viaIR":true},"sources":{"lib/core/src/interfaces/common/IMigratableEntity.sol":{"keccak256":"0x8f5f2809f3afbe8ebfbb365dd7b57b4dd3b6f9943a6187eaf648d45895b8e3c4","urls":["bzz-raw://0ffe640537d539e7a4fde70d30d3e4c57f4ba9c2c25c450cea713aae38e8fd5c","dweb:/ipfs/QmSUTGzvdcn1R1KB7tLThMRtESsfPbeXDhhhKWGtntzBds"],"license":"MIT"},"lib/core/src/interfaces/vault/IVault.sol":{"keccak256":"0xffee01d383cd4e1a5530c614bf4360c1ef070c288abec9da1eb531b51bc07235","urls":["bzz-raw://04f0046cac285d8ec44ebbb1f79dc94fab4495767190cad8364fbc1fafaadfb9","dweb:/ipfs/QmUawAunwzXfCyShWfhKeThAgKtqe51hmrxvrXvM772M2R"],"license":"MIT"},"lib/core/src/interfaces/vault/IVaultStorage.sol":{"keccak256":"0x592626f13754194f83047135de19229c49390bd59e34659b1bb38be71d973a22","urls":["bzz-raw://06a6a9dfddd05e580b32bebe2cff4f63ba26a653180676d58225dd30d9c89d3e","dweb:/ipfs/QmdgzBeY6Sxo8mGtyBxtv1tM1c2kU6J6zjeRd7vuXm4DU6"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0xc6a8ff0ea489379b61faa647490411b80102578440ab9d84e9a957cc12164e70","urls":["bzz-raw://0ea104e577e63faea3b69c415637e99e755dcbf64c5833d7140c35a714d6d90c","dweb:/ipfs/Qmau6x4Ns9XdyynRCNNp3RhLqijJjFm7z5fyZazfYFGYdq"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0x6008dabfe393240d73d7dd7688033f72740d570aa422254d29a7dce8568f3aff","urls":["bzz-raw://f5196ec75139918c6c7bb4251b36395e668f1fa6d206beba7e7520e74913940d","dweb:/ipfs/QmSyqjksXxmm2mCG6qRd1yuwLykypkSVBbnBnGqJRcuJMi"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x37bb49513c49c87c4642a891b13b63571bc87013dde806617aa1efb54605f386","urls":["bzz-raw://b3036b3a83b7c48f96641f2a9002b9f2dcb6a5958dd670894ada21ae8229b3d0","dweb:/ipfs/QmUNfSBdoVtjhETaUJCYcaC7pTMgbhht926tJ2uXJbiVd3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0xaf28a975a78550e45f65e559a3ad6a5ad43b9b8a37366999abd1b7084eb70721","urls":["bzz-raw://b7bd24e224f67f65bfadf85dc2929fa965456bb2415478bd0125471b5ce35245","dweb:/ipfs/QmRaydGr8BTHs1kvaZfsNU69pKzUAGFrvABn1KiRSbE51y"],"license":"MIT"},"src/contracts/DefaultCollateralMigrator.sol":{"keccak256":"0x8d8f660395c19e05ac551fb3c86a009fb9035643febaa8cd6e9f5bb20a0ca3f6","urls":["bzz-raw://9192dcf88867feef79491141ae9a2eccc4ea357fdb36460fe6f790c42303c619","dweb:/ipfs/QmaYkzb91AsgGn8we5CFQQ9Mg3Xmpy3Droen3FFEGFvsHn"],"license":"MIT"},"src/interfaces/IDefaultCollateralMigrator.sol":{"keccak256":"0xca5816ad00dbad0eb278d9a992c7bc661cdfaf923d8586ff7b81a77e3ef79d6e","urls":["bzz-raw://9078d18379ad2680a1cbce773d2b3f04f9ea9ac37cd2ee26265e7b83efb942c0","dweb:/ipfs/QmagmnZjdRCgXUdVwmwvsZu246CFZic6QmdohQa1QJo4fP"],"license":"MIT"},"src/interfaces/defaultCollateral/IDefaultCollateral.sol":{"keccak256":"0xaab170d44bb9998849df3111205548b36984c249299f68b1198c23d83382ae94","urls":["bzz-raw://dceb2a2253030414daead7d83fb82df2d6511b8880ad15f1593a5100a2610959","dweb:/ipfs/QmPntw3ShHX81bodf1Vm1i6ZtJDTa2PQ8XtBNLg8zwhBLP"],"license":"MIT"}},"version":1},"id":138} \ No newline at end of file diff --git a/test/integration/SymbioticPeripheryConstants.sol b/test/integration/SymbioticPeripheryConstants.sol index abe4f0d..3a41ec9 100644 --- a/test/integration/SymbioticPeripheryConstants.sol +++ b/test/integration/SymbioticPeripheryConstants.sol @@ -7,7 +7,7 @@ library SymbioticPeripheryConstants { function defaultCollateralMigrator() internal view returns (ISymbioticDefaultCollateralMigrator) { if (block.chainid == 1) { // mainnet - revert("SymbioticPeripheryConstants.defaultCollateralMigrator(): mainnet not supported yet"); + return ISymbioticDefaultCollateralMigrator(0x8F152FEAA99eb6656F902E94BD4E7bCf563D4A43); } else if (block.chainid == 17_000) { // holesky return ISymbioticDefaultCollateralMigrator(0x1779C2277A61506b5BaB03Ab24782B8f5Bb6B287);