{"abi":[{"type":"function","name":"isRegisteredUpgradePath","inputs":[{"name":"baseImpl","type":"address","internalType":"address"},{"name":"upgradeImpl","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"registerUpgradePath","inputs":[{"name":"baseImpls","type":"address[]","internalType":"address[]"},{"name":"upgradeImpl","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeUpgradePath","inputs":[{"name":"baseImpl","type":"address","internalType":"address"},{"name":"upgradeImpl","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"UpgradeGateSetup","inputs":[],"anonymous":false},{"type":"event","name":"UpgradeRegistered","inputs":[{"name":"baseImpl","type":"address","indexed":true,"internalType":"address"},{"name":"upgradeImpl","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"UpgradeRemoved","inputs":[{"name":"baseImpl","type":"address","indexed":true,"internalType":"address"},{"name":"upgradeImpl","type":"address","indexed":true,"internalType":"address"}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"isRegisteredUpgradePath(address,address)":"21f74347","registerUpgradePath(address[],address)":"92b60a4c","removeUpgradePath(address,address)":"f0fad991"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[],\"name\":\"UpgradeGateSetup\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"baseImpl\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"upgradeImpl\",\"type\":\"address\"}],\"name\":\"UpgradeRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"baseImpl\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"upgradeImpl\",\"type\":\"address\"}],\"name\":\"UpgradeRemoved\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"baseImpl\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"upgradeImpl\",\"type\":\"address\"}],\"name\":\"isRegisteredUpgradePath\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"baseImpls\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"upgradeImpl\",\"type\":\"address\"}],\"name\":\"registerUpgradePath\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"baseImpl\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"upgradeImpl\",\"type\":\"address\"}],\"name\":\"removeUpgradePath\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"isRegisteredUpgradePath(address,address)\":{\"params\":{\"baseImpl\":\"The base implementation address\",\"upgradeImpl\":\"The upgrade implementation address\"}},\"registerUpgradePath(address[],address)\":{\"params\":{\"baseImpls\":\"The base implementation addresses\",\"upgradeImpl\":\"The upgrade implementation address\"}},\"removeUpgradePath(address,address)\":{\"params\":{\"baseImpl\":\"The base implementation address\",\"upgradeImpl\":\"The upgrade implementation address\"}}},\"version\":1},\"userdoc\":{\"events\":{\"UpgradeGateSetup()\":{\"notice\":\"Event emitted when upgrade gate is emitted\"}},\"kind\":\"user\",\"methods\":{\"isRegisteredUpgradePath(address,address)\":{\"notice\":\"If an implementation is registered by the Builder DAO as an optional upgrade\"},\"registerUpgradePath(address[],address)\":{\"notice\":\"Called by the Builder DAO to offer implementation upgrades for created DAOs\"},\"removeUpgradePath(address,address)\":{\"notice\":\"Called by the Builder DAO to remove an upgrade\"}},\"notice\":\"Factory Upgrade Gate Admin Factory Implementation \\u2013 Allows specific contract upgrades as a safety measure\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/IUpgradeGate.sol\":\"IUpgradeGate\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts/=node_modules/@openzeppelin/contracts/\",\":@zoralabs/mints-contracts/src/=node_modules/@zoralabs/mints-contracts/src/\",\":@zoralabs/openzeppelin-contracts-upgradeable/=node_modules/@zoralabs/openzeppelin-contracts-upgradeable/\",\":@zoralabs/protocol-rewards/src/=node_modules/@zoralabs/protocol-rewards/src/\",\":@zoralabs/shared-contracts/=node_modules/@zoralabs/shared-contracts/src/\",\":_imagine/=_imagine/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\",\":mint/=_imagine/mint/\",\":solady/=node_modules/solady/src/\",\":solemate/=/node_modules/solemate/src/\",\":solmate/=node_modules/solmate/\"]},\"sources\":{\"src/interfaces/IUpgradeGate.sol\":{\"keccak256\":\"0x3bcc0ebe5586fb4fa0eb8e907f2613ae608f594a84ab921560eeed430d6bd130\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2fa0086594041ffcc70f64df2828d052025210da88c75854c3398edd666116ae\",\"dweb:/ipfs/Qmb486s3Smif9Jfd3CopD2LYMAXdXCsW15YZcjXnjv3sxr\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.17+commit.8df45f5f"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"event","name":"UpgradeGateSetup","anonymous":false},{"inputs":[{"internalType":"address","name":"baseImpl","type":"address","indexed":true},{"internalType":"address","name":"upgradeImpl","type":"address","indexed":true}],"type":"event","name":"UpgradeRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"baseImpl","type":"address","indexed":true},{"internalType":"address","name":"upgradeImpl","type":"address","indexed":true}],"type":"event","name":"UpgradeRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"baseImpl","type":"address"},{"internalType":"address","name":"upgradeImpl","type":"address"}],"stateMutability":"view","type":"function","name":"isRegisteredUpgradePath","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address[]","name":"baseImpls","type":"address[]"},{"internalType":"address","name":"upgradeImpl","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"registerUpgradePath"},{"inputs":[{"internalType":"address","name":"baseImpl","type":"address"},{"internalType":"address","name":"upgradeImpl","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeUpgradePath"}],"devdoc":{"kind":"dev","methods":{"isRegisteredUpgradePath(address,address)":{"params":{"baseImpl":"The base implementation address","upgradeImpl":"The upgrade implementation address"}},"registerUpgradePath(address[],address)":{"params":{"baseImpls":"The base implementation addresses","upgradeImpl":"The upgrade implementation address"}},"removeUpgradePath(address,address)":{"params":{"baseImpl":"The base implementation address","upgradeImpl":"The upgrade implementation address"}}},"version":1},"userdoc":{"kind":"user","methods":{"isRegisteredUpgradePath(address,address)":{"notice":"If an implementation is registered by the Builder DAO as an optional upgrade"},"registerUpgradePath(address[],address)":{"notice":"Called by the Builder DAO to offer implementation upgrades for created DAOs"},"removeUpgradePath(address,address)":{"notice":"Called by the Builder DAO to remove an upgrade"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts/=node_modules/@openzeppelin/contracts/","@zoralabs/mints-contracts/src/=node_modules/@zoralabs/mints-contracts/src/","@zoralabs/openzeppelin-contracts-upgradeable/=node_modules/@zoralabs/openzeppelin-contracts-upgradeable/","@zoralabs/protocol-rewards/src/=node_modules/@zoralabs/protocol-rewards/src/","@zoralabs/shared-contracts/=node_modules/@zoralabs/shared-contracts/src/","_imagine/=_imagine/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/","mint/=_imagine/mint/","solady/=node_modules/solady/src/","solemate/=/node_modules/solemate/src/","solmate/=node_modules/solmate/"],"optimizer":{"enabled":false,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/interfaces/IUpgradeGate.sol":"IUpgradeGate"},"evmVersion":"london","libraries":{}},"sources":{"src/interfaces/IUpgradeGate.sol":{"keccak256":"0x3bcc0ebe5586fb4fa0eb8e907f2613ae608f594a84ab921560eeed430d6bd130","urls":["bzz-raw://2fa0086594041ffcc70f64df2828d052025210da88c75854c3398edd666116ae","dweb:/ipfs/Qmb486s3Smif9Jfd3CopD2LYMAXdXCsW15YZcjXnjv3sxr"],"license":"MIT"}},"version":1},"id":148}