ETH Price: $3,467.88 (+4.11%)
Gas: 5 Gwei

Contract

0xB8324885ffe77b2A69f9dB4d7917ad2Ad1b8F957
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Convert202922802024-07-12 18:40:593 days ago1720809659IN
Marlin: MPond Bridge Proxy
0 ETH0.000589683.62385742
Place Request202579982024-07-07 23:44:478 days ago1720395887IN
Marlin: MPond Bridge Proxy
0 ETH0.000235891.95710175
Convert201565982024-06-23 19:52:4722 days ago1719172367IN
Marlin: MPond Bridge Proxy
0 ETH0.000332072.35814359
Place Request201423292024-06-21 19:57:3524 days ago1718999855IN
Marlin: MPond Bridge Proxy
0 ETH0.000496654.12005185
Place Request201309942024-06-20 5:56:2325 days ago1718862983IN
Marlin: MPond Bridge Proxy
0 ETH0.001065428.83840753
Place Request201309882024-06-20 5:55:1125 days ago1718862911IN
Marlin: MPond Bridge Proxy
0 ETH0.00106528.8374851
Convert201284702024-06-19 21:28:1126 days ago1718832491IN
Marlin: MPond Bridge Proxy
0 ETH0.00201514.30889732
Convert201004502024-06-15 23:24:2330 days ago1718493863IN
Marlin: MPond Bridge Proxy
0 ETH0.000423953.0105401
Cancel Request200764512024-06-12 14:49:4733 days ago1718203787IN
Marlin: MPond Bridge Proxy
0 ETH0.0008366821.45019065
Convert200717192024-06-11 22:58:1134 days ago1718146691IN
Marlin: MPond Bridge Proxy
0 ETH0.001326838.15402674
Convert200442162024-06-08 2:46:2338 days ago1717814783IN
Marlin: MPond Bridge Proxy
0 ETH0.000941826.6880672
Convert200241942024-06-05 7:40:2340 days ago1717573223IN
Marlin: MPond Bridge Proxy
0 ETH0.001343689.54174816
Convert200043872024-06-02 13:18:4743 days ago1717334327IN
Marlin: MPond Bridge Proxy
0 ETH0.000965996.72994182
Convert200043722024-06-02 13:15:4743 days ago1717334147IN
Marlin: MPond Bridge Proxy
0 ETH0.000901576.28115809
Convert199968372024-06-01 12:01:4744 days ago1717243307IN
Marlin: MPond Bridge Proxy
0 ETH0.00064144.55472904
Place Request199967492024-06-01 11:44:1144 days ago1717242251IN
Marlin: MPond Bridge Proxy
0 ETH0.000531974.41305248
Convert199847852024-05-30 19:37:4746 days ago1717097867IN
Marlin: MPond Bridge Proxy
0 ETH0.0020262316.37571055
Convert199847622024-05-30 19:32:5946 days ago1717097579IN
Marlin: MPond Bridge Proxy
0 ETH0.0016687613.48800885
Convert199531422024-05-26 9:25:2350 days ago1716715523IN
Marlin: MPond Bridge Proxy
0 ETH0.000568554.03777536
Convert199465482024-05-25 11:19:2351 days ago1716635963IN
Marlin: MPond Bridge Proxy
0 ETH0.000644064.57401267
Convert199369922024-05-24 3:15:2353 days ago1716520523IN
Marlin: MPond Bridge Proxy
0 ETH0.000779436.30049887
Convert199308732024-05-23 6:44:3553 days ago1716446675IN
Marlin: MPond Bridge Proxy
0 ETH0.00063975.85013809
Convert199184702024-05-21 13:06:1155 days ago1716296771IN
Marlin: MPond Bridge Proxy
0 ETH0.0026563118.86293556
Convert198941962024-05-18 3:36:2358 days ago1716003383IN
Marlin: MPond Bridge Proxy
0 ETH0.000592584.20802889
Convert198673232024-05-14 9:21:1162 days ago1715678471IN
Marlin: MPond Bridge Proxy
0 ETH0.000815566.59194275
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.