Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
BerachainMapping
Compiler Version
v0.8.24+commit.e11b9ed9
Optimization Enabled:
Yes with 200 runs
Other Settings:
cancun EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.24; /// @title BerachainMapping /// @notice This contract is used to map mainnet addresses to berachain addresses contract BerachainMapping { // mainnet address => berachain address mapping(address mainnet => address berachain) public mainnetToBerachain; // requests are the addresses that have requested a berachain address address[] public requests; /// @notice The event emitted when a berachain address is set /// @param mainnetAddress The mainnet address that set the berachain address /// @param berachainAddress The berachain address that was set event BerachainAddressSet(address indexed mainnetAddress, address indexed berachainAddress); /// @notice The error emitted when an invalid berachain address is set error InvalidBerachainAddress(); /// @notice Please use this berachain address for redemption /// @param berachainAddress The berachain address to redeem to /// @dev This function is used to set the berachain address for redemption function PleaseUseThisBerachainAddressForRedemption(address berachainAddress) public { if (berachainAddress == address(0)) revert InvalidBerachainAddress(); mainnetToBerachain[msg.sender] = berachainAddress; requests.push(msg.sender); emit BerachainAddressSet(msg.sender, berachainAddress); } }
{ "remappings": [ "@openzeppelin/contracts/=node_modules/@openzeppelin/contracts/", "@openzeppelin/contracts-upgradeable/=node_modules/@openzeppelin/contracts-upgradeable/", "@blueprint-finance/=node_modules/@blueprint-finance/", "@blueprint-finance/token-distribution-contracts/=node_modules/@blueprint-finance/token-distribution-contracts/", "local/src/=src/", "@morpho-org/=node_modules/@morpho-org/", "@uniswap/=node_modules/@uniswap/", "@layerzerolabs/lz-evm-oapp-v2/contracts/=node_modules/@layerzerolabs/lz-evm-oapp-v2/contracts/", "@layerzerolabs/lz-evm-messagelib-v2/=node_modules/@layerzerolabs/lz-evm-messagelib-v2/", "@layerzerolabs/lz-evm-protocol-v2/=node_modules/@layerzerolabs/lz-evm-protocol-v2/", "@layerzerolabs/oapp-evm/contracts/=node_modules/@layerzerolabs/oapp-evm/contracts/", "solidity-bytes-utils/=node_modules/solidity-bytes-utils/", "base64-sol/=node_modules/base64-sol/", "ds-test/=lib/forge-std/lib/ds-test/src/", "earn-v1-vault-manager-v1/=node_modules/earn-v1-vault-manager-v1/", "earn-v1-vault-manager-v2/=node_modules/earn-v1-vault-manager-v2/", "@blueprint-finance/multi-asset-vault/=node_modules/@blueprint-finance/multi-asset-vault/", "@blueprint-finance/concrete-earn-beacon/=node_modules/@blueprint-finance/concrete-earn-beacon/", "beacon-vaults-0.0.1/=node_modules/beacon-vaults-0.0.1/", "earn-v1-release-0-2-1/=node_modules/earn-v1-release-0-2-1/", "earn-v1-release-0-2-0/=node_modules/earn-v1-release-0-2-0/", "earn-v1-release-0-3-9/=node_modules/earn-v1-release-0-3-9/", "earn-v1-release-0-3-8/=node_modules/earn-v1-release-0-3-8/", "earn-v1-release-0-3-7/=node_modules/earn-v1-release-0-3-7/", "earn-v1-release-0-3-6/=node_modules/earn-v1-release-0-3-6/", "earn-v1-release-0-3-5/=node_modules/earn-v1-release-0-3-5/", "earn-v1-release-0-3-4/=node_modules/earn-v1-release-0-3-4/", "earn-v1-release-0-3-3/=node_modules/earn-v1-release-0-3-3/", "earn-v1-release-0-3-2/=node_modules/earn-v1-release-0-3-2/", "earn-v1-release-0-3-1/=node_modules/earn-v1-release-0-3-1/", "earn-v1-release-0-3-0/=node_modules/earn-v1-release-0-3-0/", "earn-v1-release-0-3-10/=node_modules/earn-v1-release-0-3-10/", "earn-v1-release-0-3-11/=node_modules/earn-v1-release-0-3-11/", "earn-v1-release-0-3-12/=node_modules/earn-v1-release-0-3-12/", "earn-v1-release-0-4-0/=node_modules/earn-v1-release-0-4-0/", "earn-v1-release-0-4-1/=node_modules/earn-v1-release-0-4-1/", "eth-gas-reporter/=node_modules/eth-gas-reporter/", "forge-std/=lib/forge-std/src/", "hardhat/=node_modules/hardhat/", "./=remappings.txt/" ], "optimizer": { "enabled": true, "runs": 200 }, "metadata": { "useLiteralContent": false, "bytecodeHash": "ipfs", "appendCBOR": true }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "evmVersion": "cancun", "viaIR": false, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"name":"InvalidBerachainAddress","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"mainnetAddress","type":"address"},{"indexed":true,"internalType":"address","name":"berachainAddress","type":"address"}],"name":"BerachainAddressSet","type":"event"},{"inputs":[{"internalType":"address","name":"berachainAddress","type":"address"}],"name":"PleaseUseThisBerachainAddressForRedemption","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"mainnet","type":"address"}],"name":"mainnetToBerachain","outputs":[{"internalType":"address","name":"berachain","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"requests","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
608060405234801561000f575f80fd5b506102068061001d5f395ff3fe608060405234801561000f575f80fd5b506004361061003f575f3560e01c806372ad1d8b1461004357806381d12c5814610087578063b6d68a291461009a575b5f80fd5b61006b61005136600461018c565b5f602081905290815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b61006b6100953660046101b9565b6100af565b6100ad6100a836600461018c565b6100d7565b005b600181815481106100be575f80fd5b5f918252602090912001546001600160a01b0316905081565b6001600160a01b0381166100fe57604051635b735ab360e11b815260040160405180910390fd5b335f8181526020819052604080822080546001600160a01b0386166001600160a01b031991821681179092556001805480820182559085527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180549091168517905590519092917f6d2e10dcba00183d8329be1f14b13279489ef76546dc439c865f31fe499463e591a350565b5f6020828403121561019c575f80fd5b81356001600160a01b03811681146101b2575f80fd5b9392505050565b5f602082840312156101c9575f80fd5b503591905056fea26469706673582212203b5c224b8320dc42afad84343adb534fc482357a4c50d12d236294ff91f3f8f164736f6c63430008180033
Deployed Bytecode
0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c806372ad1d8b1461004357806381d12c5814610087578063b6d68a291461009a575b5f80fd5b61006b61005136600461018c565b5f602081905290815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b61006b6100953660046101b9565b6100af565b6100ad6100a836600461018c565b6100d7565b005b600181815481106100be575f80fd5b5f918252602090912001546001600160a01b0316905081565b6001600160a01b0381166100fe57604051635b735ab360e11b815260040160405180910390fd5b335f8181526020819052604080822080546001600160a01b0386166001600160a01b031991821681179092556001805480820182559085527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180549091168517905590519092917f6d2e10dcba00183d8329be1f14b13279489ef76546dc439c865f31fe499463e591a350565b5f6020828403121561019c575f80fd5b81356001600160a01b03811681146101b2575f80fd5b9392505050565b5f602082840312156101c9575f80fd5b503591905056fea26469706673582212203b5c224b8320dc42afad84343adb534fc482357a4c50d12d236294ff91f3f8f164736f6c63430008180033
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
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.