Contract 0xd85d1e945766fea5eda9103f918bd915fbca63e6

 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xdddfb223b21aa1016f533e5855184ff5b9029362c9fbf8a21a3a5b5c3920a779Approve219978102021-12-01 3:23:1734 mins ago0xbed5ed04809771e8dd92ea970bf95cd4251cf943 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00156268072
0xcabbc25ec9852563dd4228e4aa744938ad7117bb1a4e7458ef8b52fc4744435bApprove219903462021-11-30 22:54:075 hrs 3 mins ago0x98298409c949135eed89233d04c2cfef984baff5 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.0026634828
0x8a4c08f5858548518f58ddd0975cbeeedc9def2c1691d3189496f7dc824a47e1Approve219883322021-11-30 21:40:246 hrs 17 mins ago0xc9f8932fd78ea62ed4b01c5727cdd33412f7a3e9 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.0156216
0xacfb07f20989f0e546e23cb7f2989aec166c0f6b5fb1d2df8b5dde20f879e012Approve219854392021-11-30 19:52:258 hrs 5 mins ago0x9d15c809f6645ba060794152ad1c624d2db9921f IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00156216
0xe2111b776e67d64cdddde78e76422d2dd5cda2a9b1b290488d8495db2c2e8eb4Approve219801332021-11-30 16:37:2611 hrs 20 mins ago0x74d38d1e31f55b9c4a53a4aba405fc6d7e2c1470 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00312432
0x70b6ceb6f6c19c3306945426f16266e01c9f57aa99e5654d3809e098b71a9250Approve219698342021-11-30 9:56:0118 hrs 1 min ago0x0d6ba08f45297b3ac41cdea797e2ac36d10720b1 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.008383592
0xa2a1037dbbdf4407916077bed871a11e1596fea050f7d2ec2d6aa1c3f758ef4cApprove219647722021-11-30 6:59:2820 hrs 58 mins ago0x84ac5d443af071be2d042af6e167907f6aa8ddde IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.0015618
0x81efa7d554e759c77cf8cbc80d7cece445a1b0fcf3a259eaf9d625258bfaca0fApprove219631012021-11-30 5:57:3722 hrs ago0xb8bef975efe37aea9777283b1af701dd6ec237c9 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.0009648
0x253ea62efe493d8967045aa91b47c60a66e561e7cd4911142de7852417eb7747Approve219623162021-11-30 5:30:3922 hrs 27 mins ago0xb8bef975efe37aea9777283b1af701dd6ec237c9 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00093708
0x893815f1f50aba504748b5eac7d76ac0d809f5f3a8a5729cc9257d5a207b0a08Approve219592302021-11-30 3:31:281 day 26 mins ago0xe073182d644ebb5290cfa6915ba94312fc73a679 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00155172
0x69eb0bc72b187108f06e67f86831dee52a1af04f254221dccbedcf1a99d67fdeApprove219592242021-11-30 3:31:161 day 26 mins ago0x0f8ca0f7329439b61d034381d02ff99b0db76385 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.010883048
0xf86634075212e29e53c07d5f89a37f69e61c41b567ff4ad9b3dbf8cdc2d84d0eApprove219585692021-11-30 3:08:411 day 49 mins ago0x65435084e49c517856364a3bd533296ce87fa9b8 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.008175304
0x9033df5825b8578db2b8b5cb8e0dff3e6a92682379ca9c44f19dbbbafe355261Approve219468432021-11-29 19:34:311 day 8 hrs ago0x0333978f5bd61dec2388c767bf41c18ab6543ccb IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00156216
0xa15e98bcf2719b0abd5e262368c8ab84ce8fe9ce95f1dc1180bfc00d46c74681Approve219401812021-11-29 14:52:421 day 13 hrs ago0x9cd901be86b52f8f5783e6007beed0cdece2b982 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00312432
0xb4b4e45f3f709df036183f2813c4b10080f141a2611a89a354c5cddbf75a4015Approve219392512021-11-29 14:14:101 day 13 hrs ago0x1373f509abdb24035d11273e70c650d518b30a35 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00364504
0xf593bac7c08293c21a3b3580dc1568efc8a719351787a26fe60a778823bf7087Approve219389582021-11-29 14:04:081 day 13 hrs ago0x72b3f4f17ccab192d8d9670575ed94587f2b5fc1 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00155136
0x23ec28b2fd181abc959e1a38da749f6b05041e00bc00a3578aadfcb16d0eedafApprove219385782021-11-29 13:46:471 day 14 hrs ago0xcbbcf45a1aeddaf93ed0c8a558fcb8f021225610 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.0025844
0xf776b8ba53c66b960d72c3aca4b80957e341022f4a71f3488792c0aa8d1c6e3aApprove219384462021-11-29 13:42:151 day 14 hrs ago0x2326effe88ffcc82e76f5e4fd230341643850d6e IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00156216
0x06ad880aa5ed419acead9168b22f0fc9d8d69d37ca0154918619b480b428083cApprove219372512021-11-29 13:00:541 day 14 hrs ago0x8a1f290d83f622a8819c861532ab682d84120c1f IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00096516
0x9feef3ceb20453a2211dd3d1fe2f5238b9c2d4a50a279933e7b2ee7da6f9da4eApprove219372372021-11-29 13:00:261 day 14 hrs ago0x8a1f290d83f622a8819c861532ab682d84120c1f IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00156216
0xb3258ee02bc3b1e16d3c22329c033ff2c93a5e5dba45ba5b2d575772319a7897Approve219371342021-11-29 12:56:251 day 15 hrs ago0x8c3a64aa67686d3b4699d817c13ff71b12534641 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00155136
0x53bd4b0939c5c1a24d75bc9e81d3896f8775c1c1b68f0acf98c617fb4c17b5c2Approve219370332021-11-29 12:52:591 day 15 hrs ago0x00c92eb397fc58747d3327a5c71ee7712fadb6a6 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00155136
0xcc8fd0fa0fa468812d7edba846dbefcd0f6a88cb1d9ed0d85c1f0553bcc7e38aApprove219368702021-11-29 12:45:131 day 15 hrs ago0x53bb5d94faa88d17dedef1b8d7c719d860309390 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.005779992
0x62d0c6b65b4d3c0f14d2901886a78ca995fffdc87bce08e80db4cb5e65adee16Approve219272762021-11-29 6:43:011 day 21 hrs ago0x129906d59072365b07828f2cf74f39316f558717 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00155136
0xf587ce6f12ffe049f9958144f11e80ff7e8778ce11b493fd32a453f794f1cf49Approve219271952021-11-29 6:40:151 day 21 hrs ago0x129906d59072365b07828f2cf74f39316f558717 IN  0xd85d1e945766fea5eda9103f918bd915fbca63e60 MATIC0.00155136
[ 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 Security Audit

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"}]

608060405234801561001057600080fd5b50604051610c85380380610c858339818101604052602081101561003357600080fd5b8101908080519060200190929190505050806100543361006a60201b60201c565b610063816100ab60201b60201c565b50506100cf565b600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e6572000000000000008152506019019050604051809103902090508181555050565b60006040518080610c63602291396022019050604051809103902090508181555050565b610b85806100de6000396000f3fe6080604052600436106100595760003560e01c8063025313a21461010e578063025b22bc146101655780634555d5c9146101b65780635c60da1b146101e1578063d88ca2c814610238578063f1739cae14610313576100b6565b366100b6576100b4610069610364565b6000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610390565b005b61010c6100c1610364565b6000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610390565b005b34801561011a57600080fd5b506101236103ba565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017157600080fd5b506101b46004803603602081101561018857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506103c9565b005b3480156101c257600080fd5b506101cb6105df565b6040518082815260200191505060405180910390f35b3480156101ed57600080fd5b506101f66105e8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103116004803603604081101561024e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019064010000000081111561028b57600080fd5b82018360208201111561029d57600080fd5b803590602001918460018302840111640100000000831117156102bf57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506105f7565b005b34801561031f57600080fd5b506103626004803603602081101561033657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610813565b005b60008060006040518080610b2e6022913960220190506040518091039020905080549150819250505090565b600080825160208401856127105a03f43d604051816000823e82600081146103b6578282f35b8282fd5b60006103c4610a08565b905090565b3373ffffffffffffffffffffffffffffffffffffffff166103e8610a08565b73ffffffffffffffffffffffffffffffffffffffff1614610471576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610514576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f494e56414c49445f50524f58595f41444452455353000000000000000000000081525060200191505060405180910390fd5b61051d81610a51565b610572576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180610b096025913960400191505060405180910390fd5b61057a610364565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fd32d24edea94f55e932d9a008afc425a8561462d1b1f57bc6e508e9a6b9509e160405160405180910390a36105dc81610aa3565b50565b60006002905090565b60006105f2610364565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610616610a08565b73ffffffffffffffffffffffffffffffffffffffff161461069f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6106a8826103c9565b600060603073ffffffffffffffffffffffffffffffffffffffff1634846040518082805190602001908083835b602083106106f857805182526020820191506020810190506020830392506106d5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d806000811461075a576040519150601f19603f3d011682016040523d82523d6000602084013e61075f565b606091505b509150915081819061080c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156107d15780820151818401526020810190506107b6565b50505050905090810190601f1680156107fe5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5050505050565b3373ffffffffffffffffffffffffffffffffffffffff16610832610a08565b73ffffffffffffffffffffffffffffffffffffffff16146108bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561095e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f5a45524f5f41444452455353000000000000000000000000000000000000000081525060200191505060405180910390fd5b7fdbe5fd65bcdbae152f24ab660ea68e72b4d4705b57b16e0caae994e214680ee281610988610a08565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1610a0581610ac7565b50565b600080600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e65720000000000000081525060190190506040518091039020905080549150819250505090565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610a905760009050610a9e565b6000823b9050600081119150505b919050565b60006040518080610b2e602291396022019050604051809103902090508181555050565b600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e657200000000000000815250601901905060405180910390209050818155505056fe44455354494e4154494f4e5f414444524553535f49535f4e4f545f415f434f4e54524143546d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6ea264697066735822122041ef759422fabf085e8197d08185f4d0cdb3a0ab3423629d2271c1c06c720f0664736f6c634300060600336d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6e000000000000000000000000a0451a72f243a5173ea604b43b5f61ee76376551

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

000000000000000000000000a0451a72f243a5173ea604b43b5f61ee76376551

-----Decoded View---------------
Arg [0] : _proxyTo (address): 0xa0451a72f243a5173ea604b43b5f61ee76376551

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


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.