Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
NovaUpgradeProposal
Compiler Version
v0.6.12+commit.27d51765
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.6.12; pragma experimental ABIEncoderV2; interface IUpgradeableProxy { function upgradeTo(address newImplementation) external; } interface IAMB { function requireToPassMessage( address _contract, bytes calldata _data, uint256 _gas ) external returns (bytes32); } contract NovaUpgradeProposal { event MessagePassed(bytes32 msgId); address public immutable novaProxy; address public immutable newNovaImpl; IAMB public immutable bridge; uint256 public immutable gasLimit; constructor( address _novaProxy, address _newNovaImpl, address _bridge, uint256 _gasLimit ) public { novaProxy = _novaProxy; newNovaImpl = _newNovaImpl; bridge = IAMB(_bridge); gasLimit = _gasLimit; } function executeProposal() external { bytes4 methodSelector = IUpgradeableProxy(address(0)).upgradeTo.selector; bytes memory data = abi.encodeWithSelector(methodSelector, newNovaImpl); bytes32 msgId = bridge.requireToPassMessage(novaProxy, data, gasLimit); emit MessagePassed(msgId); } }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_novaProxy","type":"address"},{"internalType":"address","name":"_newNovaImpl","type":"address"},{"internalType":"address","name":"_bridge","type":"address"},{"internalType":"uint256","name":"_gasLimit","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"msgId","type":"bytes32"}],"name":"MessagePassed","type":"event"},{"inputs":[],"name":"bridge","outputs":[{"internalType":"contract IAMB","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"executeProposal","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"gasLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"newNovaImpl","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"novaProxy","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
61010060405234801561001157600080fd5b506040516104b83803806104b883398101604081905261003091610076565b6001600160601b0319606094851b811660805292841b831660a052921b1660c05260e0526100c3565b80516001600160a01b038116811461007057600080fd5b92915050565b6000806000806080858703121561008b578384fd5b6100958686610059565b93506100a48660208701610059565b92506100b38660408701610059565b6060959095015193969295505050565b60805160601c60a05160601c60c05160601c60e0516103a5610113600039806101ab52806102ad52508061015a528061028952508060e4528061026552508060ab528061018752506103a56000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806308d36c021461005c578063373058b81461007a578063da0705a314610084578063e78cea921461008c578063f68016b714610094575b600080fd5b6100646100a9565b60405161007191906102e7565b60405180910390f35b6100826100cd565b005b610064610263565b610064610287565b61009c6102ab565b6040516100719190610366565b7f000000000000000000000000000000000000000000000000000000000000000081565b604051631b2ce7f360e11b90606090829061010c907f0000000000000000000000000000000000000000000000000000000000000000906024016102e7565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905163dc8601b360e01b81529091506000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063dc8601b3906101d3907f00000000000000000000000000000000000000000000000000000000000000009086907f0000000000000000000000000000000000000000000000000000000000000000906004016102fb565b602060405180830381600087803b1580156101ed57600080fd5b505af1158015610201573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061022591906102cf565b90507f98cb8854422c5bc69e0bf1faa3245359ce95ad725d4d6b13bea7f542be4a23c9816040516102569190610366565b60405180910390a1505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000602082840312156102e0578081fd5b5051919050565b6001600160a01b0391909116815260200190565b600060018060a01b038516825260206060818401528451806060850152825b818110156103365786810183015185820160800152820161031a565b818111156103475783608083870101525b5060408401949094525050601f91909101601f19160160800192915050565b9081526020019056fea2646970667358221220d6796dc4f933b1f2f0c355764b4e66ff579d8222b95f8c5a169162f440e3680564736f6c634300060c0033000000000000000000000000d692fd2d0b2fbd2e52cfa5b5b9424bc981c306960000000000000000000000000cdd3705af7979fbe80a64288ebf8a9fe1151ce10000000000000000000000004c36d2919e407f0cc2ee3c993ccf8ac26d9ce64e0000000000000000000000000000000000000000000000000000000000030d40
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100575760003560e01c806308d36c021461005c578063373058b81461007a578063da0705a314610084578063e78cea921461008c578063f68016b714610094575b600080fd5b6100646100a9565b60405161007191906102e7565b60405180910390f35b6100826100cd565b005b610064610263565b610064610287565b61009c6102ab565b6040516100719190610366565b7f000000000000000000000000d692fd2d0b2fbd2e52cfa5b5b9424bc981c3069681565b604051631b2ce7f360e11b90606090829061010c907f0000000000000000000000000cdd3705af7979fbe80a64288ebf8a9fe1151ce1906024016102e7565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905163dc8601b360e01b81529091506000906001600160a01b037f0000000000000000000000004c36d2919e407f0cc2ee3c993ccf8ac26d9ce64e169063dc8601b3906101d3907f000000000000000000000000d692fd2d0b2fbd2e52cfa5b5b9424bc981c306969086907f0000000000000000000000000000000000000000000000000000000000030d40906004016102fb565b602060405180830381600087803b1580156101ed57600080fd5b505af1158015610201573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061022591906102cf565b90507f98cb8854422c5bc69e0bf1faa3245359ce95ad725d4d6b13bea7f542be4a23c9816040516102569190610366565b60405180910390a1505050565b7f0000000000000000000000000cdd3705af7979fbe80a64288ebf8a9fe1151ce181565b7f0000000000000000000000004c36d2919e407f0cc2ee3c993ccf8ac26d9ce64e81565b7f0000000000000000000000000000000000000000000000000000000000030d4081565b6000602082840312156102e0578081fd5b5051919050565b6001600160a01b0391909116815260200190565b600060018060a01b038516825260206060818401528451806060850152825b818110156103365786810183015185820160800152820161031a565b818111156103475783608083870101525b5060408401949094525050601f91909101601f19160160800192915050565b9081526020019056fea2646970667358221220d6796dc4f933b1f2f0c355764b4e66ff579d8222b95f8c5a169162f440e3680564736f6c634300060c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000d692fd2d0b2fbd2e52cfa5b5b9424bc981c306960000000000000000000000000cdd3705af7979fbe80a64288ebf8a9fe1151ce10000000000000000000000004c36d2919e407f0cc2ee3c993ccf8ac26d9ce64e0000000000000000000000000000000000000000000000000000000000030d40
-----Decoded View---------------
Arg [0] : _novaProxy (address): 0xD692Fd2D0b2Fbd2e52CFa5B5b9424bC981C30696
Arg [1] : _newNovaImpl (address): 0x0CDD3705aF7979fBe80A64288Ebf8A9Fe1151cE1
Arg [2] : _bridge (address): 0x4C36d2919e407f0Cc2Ee3c993ccF8ac26d9CE64e
Arg [3] : _gasLimit (uint256): 200000
-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 000000000000000000000000d692fd2d0b2fbd2e52cfa5b5b9424bc981c30696
Arg [1] : 0000000000000000000000000cdd3705af7979fbe80a64288ebf8a9fe1151ce1
Arg [2] : 0000000000000000000000004c36d2919e407f0cc2ee3c993ccf8ac26d9ce64e
Arg [3] : 0000000000000000000000000000000000000000000000000000000000030d40
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.