Contract 0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c 3

 
Ad
Ad
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xec4a75813a135cf42198e36228fbf05c182e5397833244a593f8ac1caa77370bTransfer219962162021-12-01 2:25:347 mins ago0x1b495373c00a9f0aa3a905135b7a56c3c0154fad IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.001889976
0xf5d7524ae65e3f5cd3ef382af575df48a4a2c39ec900b7cea38c1141eb15ae2cTransfer219916072021-11-30 23:40:142 hrs 52 mins ago0x5d9a28fe8e24bc4f3fed60d9f7d833f376c39333 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00075552
0x4e74ba2870b48ce36db27676d032ff6c22560f7188e8b381b901125be14d14b4Approve219908012021-11-30 23:10:213 hrs 22 mins ago0xdb01db0928f50c8897444659d23162430646c672 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00156216
0x54c2b61b3b100f45f1e7d4e3a2fbabbfd1753fed5ada82f541ac2c3605b04699Approve219903912021-11-30 22:55:373 hrs 37 mins ago0x8a94bfc1e717804c378964566a5d4f0a16a973c4 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00156216
0x6096aa65e1d6e08334c68f4c3a3b7e8efb346bb477a059e4a7c501ef819d04e1Transfer219888352021-11-30 21:58:554 hrs 34 mins ago0x14443217721adf6abd4b1c97fd15a5a0f7a80606 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00372346
0xa33a4bb85ed8e1ab386d7a08458d70992f39575ed11f211cd3cd14a726ea36bcTransfer219884882021-11-30 21:45:484 hrs 47 mins ago0x46c452a527a2870d07475a8fdf8678ac60578f34 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00075552
0x59833042025fc28035e70ab160d3ee92c0a1d01ac3dc28311ba17bab9affec05Transfer219869842021-11-30 20:47:395 hrs 45 mins ago0x58470777f6ef220b317d839cdacbfa3a074a57c7 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00163774
0xb91ba393b7a96ff4c67a87189277875e9a7395ed480e4ada216e32baf0bd769bApprove219866982021-11-30 20:37:515 hrs 55 mins ago0x8c7127451d29df15f59b1c7b71cf318ae7bbb257 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00156216
0xb69cda6ab1762d3d84cfaac7f2b2681722b8b6505c9dc37812c113413397a509Approve219864782021-11-30 20:30:156 hrs 2 mins ago0xbfae3fb5b1781de1fb4912f91ae9143595e5e864 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.01067476
0x50b3ea61a1e949887ff3f47d20919a82d7452fb7fdd8b59e37ed2ae2340014f0Transfer219856112021-11-30 19:58:216 hrs 34 mins ago0xaf6f45bd1229c9bca3e866e22135f99d1868d1c3 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.0021148
0xe901e7c89d119b58dc5f96ec45519ec42e7d1add41f16bedca969f9165d0b848Transfer219840032021-11-30 19:00:527 hrs 32 mins ago0xc3aaeda0c07db02d1e8a6810913de450c1fa8b6e IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00126816
0xc43d15badf91a39f976d70fcb66350e0fcf22f0930b986436d2a3d974e65d6a8Transfer219824732021-11-30 18:01:228 hrs 31 mins ago0x58470777f6ef220b317d839cdacbfa3a074a57c7 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00253776
0xbb1dea4a735cb8c32a4fa154f3c971b87e39951f80179646d7835208ae9bec28Transfer219815932021-11-30 17:30:399 hrs 2 mins ago0xfa28f8570d8c2eff072bdfac83ee9b9f2da83a14 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.000116314
0x4ad0c322330c2f990491f58bfd8dcea4e9eab14d49b47a19ed4686bd94a213d2Transfer219780212021-11-30 15:16:4011 hrs 16 mins ago0x14443217721adf6abd4b1c97fd15a5a0f7a80606 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00253776
0x67173f59e1ff139379c02c3c04b8e1f36332fe9b8aff1ed93e52df0926ec919cApprove219752782021-11-30 13:24:1613 hrs 8 mins ago0x4a921668eb16634cac291a752079cb71e9489b04 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.0069307832
0xb1a49388f4584a511683e17798e2ab45a2c325690337ef1072031ff3fe62f869Approve219752332021-11-30 13:22:4013 hrs 10 mins ago0x4a921668eb16634cac291a752079cb71e9489b04 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.07862872
0x657d7cf18095e94cdd1dce90f1ded226e9ce0109d8704b2913bd8e23cd7ec12cApprove219718812021-11-30 11:07:4015 hrs 25 mins ago0xdd2b2ae9057e080ed688c60cd06e6b64abab89fe IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.007914944
0x858707d3d49139bc306230ff0f860e65ed069a16b4ea93997351ad19149d773bApprove219713252021-11-30 10:48:3015 hrs 44 mins ago0xcc8a8db32ca9fb50c6602b4d1bca1118c57b5acc IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00156216
0xe6d3eb1fb1b571f362a94b314957b459b793ec230af97dcf90ba4ce0687a2a87Transfer219713182021-11-30 10:48:1615 hrs 44 mins ago0x69bc15a25bb326dbc456efe5ac65c079c2bc2e2d IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.000831072
0x17d621bec097a2f8dd9c917560dc742d67af82ae5383892428a20a9c83138d14Transfer219697162021-11-30 9:51:5516 hrs 41 mins ago0x14443217721adf6abd4b1c97fd15a5a0f7a80606 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00343704
0x7839d50d6c14f25132a8e53373186df8f448bfbea28d8b8d3829d67d920f1883Approve219681812021-11-30 8:57:5017 hrs 35 mins ago0x61e1a8041186ceb8a561f6f264e8b2bb2e20e06d IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.007914944
0xe795fcf38e03c38f188eb5e4750adec48a434eefaca5e9fc6172cd8a7f9f0688Approve219676162021-11-30 8:38:2517 hrs 54 mins ago0x61e1a8041186ceb8a561f6f264e8b2bb2e20e06d IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00107734
0x835d612bebee8e586400dde6ee5633c7f50b000f8f81ce1ae3398df92084480eWithdraw219664702021-11-30 7:58:2418 hrs 34 mins ago0x2feb6cb26b544bfb252b5a8d48f895871ed12955 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.0007386
0x9dcdafdb6d126f63fadf8ae4b6bbfe3e7e124d0214ee62bba739d31d517cb162Transfer219662612021-11-30 7:50:5818 hrs 42 mins ago0xe580b7e8696b45a8e8064548d5ae993008109801 IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.00075516
0xdf4d67c3d41d71f3afda16ec4b18532dfdf6f67ac6a035dff1dc199ce061966eApprove219658692021-11-30 7:37:3018 hrs 55 mins ago0x7a0ef482134aa53468850a7b117eca38a6a3003d IN  0x23d29d30e35c5e8d321e1dc9a8a61bfd846d4c5c0 MATIC0.0052072
[ 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"}]

608060405234801561001057600080fd5b50604051610c85380380610c858339818101604052602081101561003357600080fd5b8101908080519060200190929190505050806100543361006a60201b60201c565b610063816100ab60201b60201c565b50506100cf565b600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e6572000000000000008152506019019050604051809103902090508181555050565b60006040518080610c63602291396022019050604051809103902090508181555050565b610b85806100de6000396000f3fe6080604052600436106100595760003560e01c8063025313a21461010e578063025b22bc146101655780634555d5c9146101b65780635c60da1b146101e1578063d88ca2c814610238578063f1739cae14610313576100b6565b366100b6576100b4610069610364565b6000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610390565b005b61010c6100c1610364565b6000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610390565b005b34801561011a57600080fd5b506101236103ba565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017157600080fd5b506101b46004803603602081101561018857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506103c9565b005b3480156101c257600080fd5b506101cb6105df565b6040518082815260200191505060405180910390f35b3480156101ed57600080fd5b506101f66105e8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103116004803603604081101561024e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019064010000000081111561028b57600080fd5b82018360208201111561029d57600080fd5b803590602001918460018302840111640100000000831117156102bf57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506105f7565b005b34801561031f57600080fd5b506103626004803603602081101561033657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610813565b005b60008060006040518080610b2e6022913960220190506040518091039020905080549150819250505090565b600080825160208401856127105a03f43d604051816000823e82600081146103b6578282f35b8282fd5b60006103c4610a08565b905090565b3373ffffffffffffffffffffffffffffffffffffffff166103e8610a08565b73ffffffffffffffffffffffffffffffffffffffff1614610471576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610514576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f494e56414c49445f50524f58595f41444452455353000000000000000000000081525060200191505060405180910390fd5b61051d81610a51565b610572576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180610b096025913960400191505060405180910390fd5b61057a610364565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fd32d24edea94f55e932d9a008afc425a8561462d1b1f57bc6e508e9a6b9509e160405160405180910390a36105dc81610aa3565b50565b60006002905090565b60006105f2610364565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610616610a08565b73ffffffffffffffffffffffffffffffffffffffff161461069f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6106a8826103c9565b600060603073ffffffffffffffffffffffffffffffffffffffff1634846040518082805190602001908083835b602083106106f857805182526020820191506020810190506020830392506106d5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d806000811461075a576040519150601f19603f3d011682016040523d82523d6000602084013e61075f565b606091505b509150915081819061080c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156107d15780820151818401526020810190506107b6565b50505050905090810190601f1680156107fe5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5050505050565b3373ffffffffffffffffffffffffffffffffffffffff16610832610a08565b73ffffffffffffffffffffffffffffffffffffffff16146108bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561095e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f5a45524f5f41444452455353000000000000000000000000000000000000000081525060200191505060405180910390fd5b7fdbe5fd65bcdbae152f24ab660ea68e72b4d4705b57b16e0caae994e214680ee281610988610a08565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1610a0581610ac7565b50565b600080600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e65720000000000000081525060190190506040518091039020905080549150819250505090565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610a905760009050610a9e565b6000823b9050600081119150505b919050565b60006040518080610b2e602291396022019050604051809103902090508181555050565b600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e657200000000000000815250601901905060405180910390209050818155505056fe44455354494e4154494f4e5f414444524553535f49535f4e4f545f415f434f4e54524143546d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6ea264697066735822122041ef759422fabf085e8197d08185f4d0cdb3a0ab3423629d2271c1c06c720f0664736f6c634300060600336d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6e000000000000000000000000d3a6e427d7148bae4f3cd4d24caa3d8851cbe23f

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

000000000000000000000000d3a6e427d7148bae4f3cd4d24caa3d8851cbe23f

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

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


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.