ETH Price: $3,403.48 (-2.61%)
Gas: 14 Gwei

Contract

0xB8324885ffe77b2A69f9dB4d7917ad2Ad1b8F957
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Convert201004502024-06-15 23:24:232 days ago1718493863IN
Marlin: MPond Bridge Proxy
0 ETH0.000423953.0105401
Cancel Request200764512024-06-12 14:49:476 days ago1718203787IN
Marlin: MPond Bridge Proxy
0 ETH0.0008366821.45019065
Convert200717192024-06-11 22:58:116 days ago1718146691IN
Marlin: MPond Bridge Proxy
0 ETH0.001326838.15402674
Convert200442162024-06-08 2:46:2310 days ago1717814783IN
Marlin: MPond Bridge Proxy
0 ETH0.000941826.6880672
Convert200241942024-06-05 7:40:2313 days ago1717573223IN
Marlin: MPond Bridge Proxy
0 ETH0.001343689.54174816
Convert200043872024-06-02 13:18:4716 days ago1717334327IN
Marlin: MPond Bridge Proxy
0 ETH0.000965996.72994182
Convert200043722024-06-02 13:15:4716 days ago1717334147IN
Marlin: MPond Bridge Proxy
0 ETH0.000901576.28115809
Convert199968372024-06-01 12:01:4717 days ago1717243307IN
Marlin: MPond Bridge Proxy
0 ETH0.00064144.55472904
Place Request199967492024-06-01 11:44:1117 days ago1717242251IN
Marlin: MPond Bridge Proxy
0 ETH0.000531974.41305248
Convert199847852024-05-30 19:37:4718 days ago1717097867IN
Marlin: MPond Bridge Proxy
0 ETH0.0020262316.37571055
Convert199847622024-05-30 19:32:5918 days ago1717097579IN
Marlin: MPond Bridge Proxy
0 ETH0.0016687613.48800885
Convert199531422024-05-26 9:25:2323 days ago1716715523IN
Marlin: MPond Bridge Proxy
0 ETH0.000568554.03777536
Convert199465482024-05-25 11:19:2324 days ago1716635963IN
Marlin: MPond Bridge Proxy
0 ETH0.000644064.57401267
Convert199369922024-05-24 3:15:2325 days ago1716520523IN
Marlin: MPond Bridge Proxy
0 ETH0.000779436.30049887
Convert199308732024-05-23 6:44:3526 days ago1716446675IN
Marlin: MPond Bridge Proxy
0 ETH0.00063975.85013809
Convert199184702024-05-21 13:06:1128 days ago1716296771IN
Marlin: MPond Bridge Proxy
0 ETH0.0026563118.86293556
Convert198941962024-05-18 3:36:2331 days ago1716003383IN
Marlin: MPond Bridge Proxy
0 ETH0.000592584.20802889
Convert198673232024-05-14 9:21:1135 days ago1715678471IN
Marlin: MPond Bridge Proxy
0 ETH0.000815566.59194275
Convert198545912024-05-12 14:39:3537 days ago1715524775IN
Marlin: MPond Bridge Proxy
0 ETH0.00088486.16429434
Place Request198326262024-05-09 12:56:1140 days ago1715259371IN
Marlin: MPond Bridge Proxy
0 ETH0.000521044.3224237
Place Request198298672024-05-09 3:40:4740 days ago1715226047IN
Marlin: MPond Bridge Proxy
0 ETH0.000456693.78860107
Convert198004642024-05-05 0:57:1144 days ago1714870631IN
Marlin: MPond Bridge Proxy
0 ETH0.000519964.20267957
Convert197489082024-04-27 19:59:5951 days ago1714247999IN
Marlin: MPond Bridge Proxy
0 ETH0.000729395.17955545
Convert196996592024-04-20 22:39:1158 days ago1713652751IN
Marlin: MPond Bridge Proxy
0 ETH0.000857786.09128812
Convert196589032024-04-15 5:42:3564 days ago1713159755IN
Marlin: MPond Bridge Proxy
0 ETH0.00139948.6
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
BridgeProxy

Compiler Version
v0.5.17+commit.d19bba13

Optimization Enabled:
Yes with 1000000 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2021-01-03
*/

pragma solidity >=0.4.21 <0.7.0;


/// @title Contract to reward overlapping stakes
/// @author Marlin
/// @notice Use this contract only for testing
/// @dev Contract may or may not change in future (depending upon the new slots in proxy-store)
contract BridgeProxy {
    bytes32 internal constant IMPLEMENTATION_SLOT = bytes32(
        uint256(keccak256("eip1967.proxy.implementation")) - 1
    );
    bytes32 internal constant PROXY_ADMIN_SLOT = bytes32(
        uint256(keccak256("eip1967.proxy.admin")) - 1
    );

    constructor(address contractLogic, address proxyAdmin) public {
        // save the code address
        bytes32 slot = IMPLEMENTATION_SLOT;
        assembly {
            sstore(slot, contractLogic)
        }
        // save the proxy admin
        slot = PROXY_ADMIN_SLOT;
        address sender = proxyAdmin;
        assembly {
            sstore(slot, sender)
        }
    }

    function updateAdmin(address _newAdmin) public {
        require(
            msg.sender == getAdmin(),
            "Only the current admin should be able to new admin"
        );
        bytes32 slot = PROXY_ADMIN_SLOT;
        assembly {
            sstore(slot, _newAdmin)
        }
    }

    /// @author Marlin
    /// @dev Only admin can update the contract
    /// @param _newLogic address is the address of the contract that has to updated to
    function updateLogic(address _newLogic) public {
        require(
            msg.sender == getAdmin(),
            "Only Admin should be able to update the contracts"
        );
        bytes32 slot = IMPLEMENTATION_SLOT;
        assembly {
            sstore(slot, _newLogic)
        }
    }

    /// @author Marlin
    /// @dev use assembly as contract store slot is manually decided
    function getAdmin() internal view returns (address result) {
        bytes32 slot = PROXY_ADMIN_SLOT;
        assembly {
            result := sload(slot)
        }
    }

    /// @author Marlin
    /// @dev add functionality to forward the balance as well.
    function() external payable {
        bytes32 slot = IMPLEMENTATION_SLOT;
        assembly {
            let contractLogic := sload(slot)
            calldatacopy(0x0, 0x0, calldatasize())
            let success := delegatecall(
                sub(gas(), 10000),
                contractLogic,
                0x0,
                calldatasize(),
                0,
                0
            )
            let retSz := returndatasize()
            returndatacopy(0, 0, retSz)

            switch success
                case 0 {
                    revert(0, retSz)
                }
                default {
                    return(0, retSz)
                }
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"contractLogic","type":"address"},{"internalType":"address","name":"proxyAdmin","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"constant":false,"inputs":[{"internalType":"address","name":"_newAdmin","type":"address"}],"name":"updateAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_newLogic","type":"address"}],"name":"updateLogic","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b506040516104973803806104978339818101604052604081101561003357600080fd5b508051602090910151604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152815190819003601c018120600019908101949094557f656970313936372e70726f78792e61646d696e0000000000000000000000000081529051908190036013019020909101556103de806100b96000396000f3fe6080604052600436106100295760003560e01c8063795e617e146100a8578063e2f273bd146100ea575b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0180543660008037600080366000846127105a03f43d806000803e8180156100a357816000f35b816000fd5b3480156100b457600080fd5b506100e8600480360360208110156100cb57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661012a565b005b3480156100f657600080fd5b506100e86004803603602081101561010d57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661020c565b6101326102ee565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260318152602001806103476031913960400191505060405180910390fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0155565b6102146102ee565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610297576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001806103786032913960400191505060405180910390fd5b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0155565b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01549056fe4f6e6c792041646d696e2073686f756c642062652061626c6520746f207570646174652074686520636f6e7472616374734f6e6c79207468652063757272656e742061646d696e2073686f756c642062652061626c6520746f206e65772061646d696ea265627a7a7231582035f25aa1f2841e515abbaa9d66c90d23a036ff6e688febd698895d847381dbcc64736f6c6343000511003200000000000000000000000000000000000000000000000000000000000000000000000000000000000000007f15ff03350adecbe42ea20634bca8b4f8ba5c3a

Deployed Bytecode

0x6080604052600436106100295760003560e01c8063795e617e146100a8578063e2f273bd146100ea575b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0180543660008037600080366000846127105a03f43d806000803e8180156100a357816000f35b816000fd5b3480156100b457600080fd5b506100e8600480360360208110156100cb57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661012a565b005b3480156100f657600080fd5b506100e86004803603602081101561010d57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661020c565b6101326102ee565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260318152602001806103476031913960400191505060405180910390fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0155565b6102146102ee565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610297576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001806103786032913960400191505060405180910390fd5b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0155565b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01549056fe4f6e6c792041646d696e2073686f756c642062652061626c6520746f207570646174652074686520636f6e7472616374734f6e6c79207468652063757272656e742061646d696e2073686f756c642062652061626c6520746f206e65772061646d696ea265627a7a7231582035f25aa1f2841e515abbaa9d66c90d23a036ff6e688febd698895d847381dbcc64736f6c63430005110032

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000000000000000000000000000000000000000000000000000000000000000000007f15ff03350adecbe42ea20634bca8b4f8ba5c3a

-----Decoded View---------------
Arg [0] : contractLogic (address): 0x0000000000000000000000000000000000000000
Arg [1] : proxyAdmin (address): 0x7f15ff03350AdeCbE42eA20634bCA8b4F8BA5c3a

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [1] : 0000000000000000000000007f15ff03350adecbe42ea20634bca8b4f8ba5c3a


Deployed Bytecode Sourcemap

253:2542:0:-;;;;;;;;;;;;;;;;;;;;;;;355:41;;;;;;;;;;;;;;;;347:54;;2211:11;;2259:14;2121:12;;2236:38;2477:1;2457;2424:14;2402:3;2370:13;2345:5;2338;2334:17;2303:190;2520:16;2571:5;2568:1;2565;2550:27;2600:7;2625:65;;;;2749:5;2746:1;2739:16;2625:65;2665:5;2662:1;2655:16;1407:302;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1407:302:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1407:302:0;;;;:::i;:::-;;938:300;;8:9:-1;5:2;;;30:1;27;20:12;5:2;938:300:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;938:300:0;;;;:::i;1407:302::-;1501:10;:8;:10::i;:::-;1487:24;;:10;:24;;;1465:123;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;355:41;;;;;;;;;;;;;;;;347:54;;1668:23;1653:49::o;938:300::-;1032:10;:8;:10::i;:::-;1018:24;;:10;:24;;;996:124;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;486:32;;;;;;;;;;;;;;;;478:45;;1197:23;1182:49::o;1811:175::-;486:32;;;;;;;;;;;;;;;;478:45;;1957:11;;1932:47::o

Swarm Source

bzzr://35f25aa1f2841e515abbaa9d66c90d23a036ff6e688febd698895d847381dbcc

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

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.