Contract 0xb8E5b39689f886f8C34D3E5ac09F513A282d486D

 
Txn Hash
Block
From
To
Value [Txn Fee]
0x7e38621aebd9530ed694ffe3af44aefb3c20f6a72c50194b5075ed888736a0c6154809532021-06-08 14:16:5549 days 20 hrs ago0x245a6d8ee78567de4f7bd771c561889da44422bb IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000052072
0xc319ae13aade35b8cefdda88e727614082201d76478ff02dca6589fe607e8369154272032021-06-07 4:58:5451 days 6 hrs ago0x245a6d8ee78567de4f7bd771c561889da44422bb IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000052072
0xc4bccabe781e8faabb158f710cdc8e44bad5bb72492c143370aa23f78066e2f1144868192021-05-14 14:50:1474 days 20 hrs ago0x6e80f64b9decba9f867f34d520626fdf3ab95a18 IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000055144
0x8941b2aba4b6420c58ece1af74bf8d674a20b172b0ef42b13c5cd6501b89ce34144490312021-05-13 16:30:3475 days 18 hrs ago0xc6afa9fa76f7965d4ac72893f4b1779cc775e52e IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000027572
0xcdde974a0b916f1fb931b8cb3d5b0f697d1cb3afdd0d9153d4c478f0e562b1c6144097302021-05-12 16:51:5076 days 18 hrs ago0x6e80f64b9decba9f867f34d520626fdf3ab95a18 IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000046772
0xe8d5cef2fc1a16157d413e0d6fcb15b19b3c584de87e09a4906ab14e02f0023b143654792021-05-11 12:56:2477 days 22 hrs ago0x2f3931635ee03d8f3c91d023e6dcfbc8c2c49431 IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000046772
0xf4aef88602e2370a21e2b8add193ac4419f3768e19bd7acd6c2757f5ff9c81b8143649632021-05-11 12:38:3177 days 22 hrs ago0xc6afa9fa76f7965d4ac72893f4b1779cc775e52e IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000027572
0x3bb205e5037750f6873f67b7ad6ef0b5e7181943a164d62eca44563e5e898a9d143638112021-05-11 11:55:0477 days 23 hrs ago0x2f3931635ee03d8f3c91d023e6dcfbc8c2c49431 IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000046772
0xefef815926a5a55bff684820a170a9d7329d2768a5330c06da6a52468a9c2b4b143634802021-05-11 11:43:3577 days 23 hrs ago0xc6afa9fa76f7965d4ac72893f4b1779cc775e52e IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000046772
0x84a38f3377dbc823149e36dcfd90f0e8473a62260a5b907ac21308ce065aca7f136250432021-04-23 9:26:0696 days 1 hr agoUniPower: Deployer IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000025303
0x0773718ca98ab08540a48dc3329c372912679cb3eb72a71b50537b4f665b4d4d136154772021-04-23 3:51:5896 days 7 hrs ago0x78655080b65f42e2cee5fa5673689cc44d4e1cfc IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000030221
0x00b7ae6d67394189ab17cb1dfef5e46b0b635a9ff65436b69b839d98ee24540d128627092021-04-04 15:58:14114 days 19 hrs ago0x01537eadb5368b4e5cfa32087e566d6d1210fe70 IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000046772
0xb28761824291d1d86aa266c05b75a56e3428ba566d797f72287bc15cc4347a70128079132021-04-03 7:53:53116 days 3 hrs ago0x91797d503ed549870c823439c86353aa6aef32a0 IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000027572
0x50111b57470025589e2eb350f4871402ba72b4dea050290b76798bc5f1c67a4a128078822021-04-03 7:52:51116 days 3 hrs ago0x91797d503ed549870c823439c86353aa6aef32a0 IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000046772
0x8293eb46733ba4fbbaebe517ce04e83164a80cf01d30080c93a016df30808fee125994412021-03-29 5:18:06121 days 5 hrs agoUniPower: Deployer IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000030221
0xbaa1d799dccb323a5d6c9778de07ca8ce03628f971af2bd2ac915f0bfa7533a4125994362021-03-29 5:17:56121 days 5 hrs agoUniPower: Deployer IN  0xb8e5b39689f886f8c34d3e5ac09f513a282d486d0 MATIC0.000326551
0x56ce712162009800c97a12f99608c94547eff1a6c03782bbbb55ff2575e900bb125994322021-03-29 5:17:48121 days 5 hrs agoUniPower: Deployer IN  Contract Creation0 MATIC0.000730769
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
UChildERC20Proxy

Compiler Version
v0.6.6+commit.6c089d02

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at polygonscan.com on 2021-06-30
*/

// File: contracts/common/Proxy/IERCProxy.sol

pragma solidity 0.6.6;

interface IERCProxy {
    function proxyType() external pure returns (uint256 proxyTypeId);

    function implementation() external view returns (address codeAddr);
}

// File: contracts/common/Proxy/Proxy.sol

pragma solidity 0.6.6;


abstract contract Proxy is IERCProxy {
    function delegatedFwd(address _dst, bytes memory _calldata) internal {
        // solium-disable-next-line security/no-inline-assembly
        assembly {
            let result := delegatecall(
                sub(gas(), 10000),
                _dst,
                add(_calldata, 0x20),
                mload(_calldata),
                0,
                0
            )
            let size := returndatasize()

            let ptr := mload(0x40)
            returndatacopy(ptr, 0, size)

            // revert instead of invalid() bc if the underlying call failed with invalid() it already wasted gas.
            // if the call returned error data, forward it
            switch result
                case 0 {
                    revert(ptr, size)
                }
                default {
                    return(ptr, size)
                }
        }
    }

    function proxyType() external virtual override pure returns (uint256 proxyTypeId) {
        // Upgradeable proxy
        proxyTypeId = 2;
    }

    function implementation() external virtual override view returns (address);
}

// File: contracts/common/Proxy/UpgradableProxy.sol

pragma solidity 0.6.6;


contract UpgradableProxy is Proxy {
    event ProxyUpdated(address indexed _new, address indexed _old);
    event ProxyOwnerUpdate(address _new, address _old);

    bytes32 constant IMPLEMENTATION_SLOT = keccak256("matic.network.proxy.implementation");
    bytes32 constant OWNER_SLOT = keccak256("matic.network.proxy.owner");

    constructor(address _proxyTo) public {
        setProxyOwner(msg.sender);
        setImplementation(_proxyTo);
    }

    fallback() external payable {
        delegatedFwd(loadImplementation(), msg.data);
    }

    receive() external payable {
        delegatedFwd(loadImplementation(), msg.data);
    }

    modifier onlyProxyOwner() {
        require(loadProxyOwner() == msg.sender, "NOT_OWNER");
        _;
    }

    function proxyOwner() external view returns(address) {
        return loadProxyOwner();
    }

    function loadProxyOwner() internal view returns(address) {
        address _owner;
        bytes32 position = OWNER_SLOT;
        assembly {
            _owner := sload(position)
        }
        return _owner;
    }

    function implementation() external override view returns (address) {
        return loadImplementation();
    }

    function loadImplementation() internal view returns(address) {
        address _impl;
        bytes32 position = IMPLEMENTATION_SLOT;
        assembly {
            _impl := sload(position)
        }
        return _impl;
    }

    function transferProxyOwnership(address newOwner) public onlyProxyOwner {
        require(newOwner != address(0), "ZERO_ADDRESS");
        emit ProxyOwnerUpdate(newOwner, loadProxyOwner());
        setProxyOwner(newOwner);
    }

    function setProxyOwner(address newOwner) private {
        bytes32 position = OWNER_SLOT;
        assembly {
            sstore(position, newOwner)
        }
    }

    function updateImplementation(address _newProxyTo) public onlyProxyOwner {
        require(_newProxyTo != address(0x0), "INVALID_PROXY_ADDRESS");
        require(isContract(_newProxyTo), "DESTINATION_ADDRESS_IS_NOT_A_CONTRACT");

        emit ProxyUpdated(_newProxyTo, loadImplementation());
        
        setImplementation(_newProxyTo);
    }

    function updateAndCall(address _newProxyTo, bytes memory data) payable public onlyProxyOwner {
        updateImplementation(_newProxyTo);

        (bool success, bytes memory returnData) = address(this).call{value: msg.value}(data);
        require(success, string(returnData));
    }

    function setImplementation(address _newProxyTo) private {
        bytes32 position = IMPLEMENTATION_SLOT;
        assembly {
            sstore(position, _newProxyTo)
        }
    }
    
    function isContract(address _target) internal view returns (bool) {
        if (_target == address(0)) {
            return false;
        }

        uint256 size;
        assembly {
            size := extcodesize(_target)
        }
        return size > 0;
    }
}

// File: contracts/child/ChildToken/UpgradeableChildERC20/UChildERC20Proxy.sol

pragma solidity 0.6.6;


contract UChildERC20Proxy is UpgradableProxy {
    constructor(address _proxyTo)
        public
        UpgradableProxy(_proxyTo)
    {}
}

Contract ABI

[{"inputs":[{"internalType":"address","name":"_proxyTo","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_new","type":"address"},{"indexed":false,"internalType":"address","name":"_old","type":"address"}],"name":"ProxyOwnerUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_new","type":"address"},{"indexed":true,"internalType":"address","name":"_old","type":"address"}],"name":"ProxyUpdated","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxyType","outputs":[{"internalType":"uint256","name":"proxyTypeId","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferProxyOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newProxyTo","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"updateAndCall","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_newProxyTo","type":"address"}],"name":"updateImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801561001057600080fd5b50604051610c85380380610c858339818101604052602081101561003357600080fd5b8101908080519060200190929190505050806100543361006a60201b60201c565b610063816100ab60201b60201c565b50506100cf565b600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e6572000000000000008152506019019050604051809103902090508181555050565b60006040518080610c63602291396022019050604051809103902090508181555050565b610b85806100de6000396000f3fe6080604052600436106100595760003560e01c8063025313a21461010e578063025b22bc146101655780634555d5c9146101b65780635c60da1b146101e1578063d88ca2c814610238578063f1739cae14610313576100b6565b366100b6576100b4610069610364565b6000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610390565b005b61010c6100c1610364565b6000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610390565b005b34801561011a57600080fd5b506101236103ba565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017157600080fd5b506101b46004803603602081101561018857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506103c9565b005b3480156101c257600080fd5b506101cb6105df565b6040518082815260200191505060405180910390f35b3480156101ed57600080fd5b506101f66105e8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103116004803603604081101561024e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019064010000000081111561028b57600080fd5b82018360208201111561029d57600080fd5b803590602001918460018302840111640100000000831117156102bf57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506105f7565b005b34801561031f57600080fd5b506103626004803603602081101561033657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610813565b005b60008060006040518080610b2e6022913960220190506040518091039020905080549150819250505090565b600080825160208401856127105a03f43d604051816000823e82600081146103b6578282f35b8282fd5b60006103c4610a08565b905090565b3373ffffffffffffffffffffffffffffffffffffffff166103e8610a08565b73ffffffffffffffffffffffffffffffffffffffff1614610471576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610514576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f494e56414c49445f50524f58595f41444452455353000000000000000000000081525060200191505060405180910390fd5b61051d81610a51565b610572576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180610b096025913960400191505060405180910390fd5b61057a610364565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fd32d24edea94f55e932d9a008afc425a8561462d1b1f57bc6e508e9a6b9509e160405160405180910390a36105dc81610aa3565b50565b60006002905090565b60006105f2610364565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610616610a08565b73ffffffffffffffffffffffffffffffffffffffff161461069f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6106a8826103c9565b600060603073ffffffffffffffffffffffffffffffffffffffff1634846040518082805190602001908083835b602083106106f857805182526020820191506020810190506020830392506106d5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d806000811461075a576040519150601f19603f3d011682016040523d82523d6000602084013e61075f565b606091505b509150915081819061080c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156107d15780820151818401526020810190506107b6565b50505050905090810190601f1680156107fe5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5050505050565b3373ffffffffffffffffffffffffffffffffffffffff16610832610a08565b73ffffffffffffffffffffffffffffffffffffffff16146108bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561095e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f5a45524f5f41444452455353000000000000000000000000000000000000000081525060200191505060405180910390fd5b7fdbe5fd65bcdbae152f24ab660ea68e72b4d4705b57b16e0caae994e214680ee281610988610a08565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1610a0581610ac7565b50565b600080600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e65720000000000000081525060190190506040518091039020905080549150819250505090565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610a905760009050610a9e565b6000823b9050600081119150505b919050565b60006040518080610b2e602291396022019050604051809103902090508181555050565b600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e657200000000000000815250601901905060405180910390209050818155505056fe44455354494e4154494f4e5f414444524553535f49535f4e4f545f415f434f4e54524143546d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6ea264697066735822122041ef759422fabf085e8197d08185f4d0cdb3a0ab3423629d2271c1c06c720f0664736f6c634300060600336d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6e000000000000000000000000f2adc6907603bd6c124814c9da62b1b6abc81e6b

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

000000000000000000000000f2adc6907603bd6c124814c9da62b1b6abc81e6b

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000f2adc6907603bd6c124814c9da62b1b6abc81e6b


Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.