Contract 0x313d009888329c9d1cf4f75ca3f32566335bd604

 
 
Txn Hash
Method
Block
From
To
Value [Txn Fee]
0x6ea80d16d0c8b0d489c9b66b4701b5b73acf895aa0bd2c0c70b4333e6631bb1fWithdraw257267992022-03-08 13:23:52380 days 10 hrs ago0xdf409c7b7f0efc2f7cca4c0813b3f80658e1b6c7 IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.001123019337 32.207735974
0x1910aa32960981e05683ae0cf8912d0253c7d65a84849d02470a604fcf00321bApprove222859352021-12-08 17:37:59470 days 6 hrs ago0x36d6eef2aa5af95aeaedf9851486ee7259725f35 IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0015621630
0xaf6c6ebb14251104acd3813231eac57763168ae9a628c34ffa7a4aabefce4522Approve193129412021-09-20 13:41:25549 days 10 hrs ago0xe3a7298fe61e5c8b606227508f236cf0a503c0c3 IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0051796100
0x7fdf6b73af5cf8804000a05aac5a226f667a22a78d6e2c0f12fa3d648b330c22Approve191498652021-09-15 22:10:59554 days 1 hr ago0x0dbba0d183f64fea5b5862979aa463911986d2ca IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.000159845
0xbbf1a8d2f7751b507048ad3307ece87785cd0f4a5f8abf134a3cb036a2f0cae2Approve191498632021-09-15 22:10:55554 days 1 hr ago0x0dbba0d183f64fea5b5862979aa463911986d2ca IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.000159845
0x33a99b675d75864f9a6d86f3e74006071a9d1c4d142cd7a4d8ae5c0bab7df8f0Approve191498442021-09-15 22:10:17554 days 1 hr ago0x0dbba0d183f64fea5b5862979aa463911986d2ca IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.000159845
0x920a1ed46ebbdc9be062509ea718497106ec94723037255ed80abad498eda522Approve191498032021-09-15 22:08:10554 days 1 hr ago0x0dbba0d183f64fea5b5862979aa463911986d2ca IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.000159845
0x7efaaf4310b737a958154bc014d5ef985207d88b7f2c853dbf99629146776866Approve191496392021-09-15 22:01:06554 days 1 hr ago0x0dbba0d183f64fea5b5862979aa463911986d2ca IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.000259345
0x6239c7fb9ca2f763b42e733a43b7765ad8b1f41eaf1ae90346b14c12e6ed1e63Approve188346732021-09-07 4:29:49562 days 19 hrs ago0x36d6eef2aa5af95aeaedf9851486ee7259725f35 IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0000520721
0x85759bca59400ad3397906ec425a7d71cb58c66c0493f8fc17f9f6555d42c7cfApprove187101072021-09-03 18:22:02566 days 5 hrs ago0x36d6eef2aa5af95aeaedf9851486ee7259725f35 IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0001041442
0x03c69abc7277436ef61b34cb05ba12fdeeb809410de1829a0371e46c1769377cApprove185692842021-08-30 22:56:25570 days 49 mins ago0x2442cb2255fa63a9803f5745b5820364d26cfb7c IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0000573416861.1012
0x439af9d5f0fef5eedfcc8f49e2a181e8155fdff0a6519d7aa28296e59e0ba7edWithdraw185539402021-08-30 12:28:43570 days 11 hrs ago0xa8e61b240ee3c50da4ee0affe5d1a6de1cbd8567 IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.00016985
0xdd89c478d4718beb093dd3bff12dbce81d1e2b8dc292aacc7cc97a46a2a83589Approve184893822021-08-28 14:47:23572 days 8 hrs ago0x36d6eef2aa5af95aeaedf9851486ee7259725f35 IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0000520721
0x7efdf021aff7c03205b7c29de1f1068a71ae1dd40e816bf9ec195d2f3ae83de9Withdraw174802102021-08-01 2:10:07599 days 21 hrs ago0xc6654898d96e97199a8d14e534fe92dd6b2674bd IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.000039342231.597200001
0x24f53c97ce4c35e14265fdec32677a9773d4756aaebbc377a3dafc4a622f5787Approve172577942021-07-25 14:41:11606 days 9 hrs ago0x00ddcba8839c1885421c4eedebbf8449f94adf5c IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0007810815
0x67a5aa5af76347f29f44f5e4cd5c1c82d66b6cbbb4a56f8d481267f22c5dbf11Approve172571882021-07-25 14:17:56606 days 9 hrs ago0x5110bb90e72e4521c5853610df3a6fc2deeffbd6 IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0000520721
0x42b3f4c2294d6830eb73ae680274066b56d17cd4cf6e5fa84b6018561abc51f2Approve172563722021-07-25 13:43:28606 days 10 hrs ago0xa27e7a92ef9eb33b3d1872cb8bdce7ac39b74e00 IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0000520720051.0000001
0x54c7210a3cad9a2d30d7928f7fa51d1c99a94496cf897d2996b606ce93bbb7d6Approve172563152021-07-25 13:41:30606 days 10 hrs ago0xabb2b79d11ad63625bd2891c84faf6ec3e021b6e IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0000520720051.0000001
0x67d4efe548f2d191cf6f1e99744e764ca5b13bef90ab8b04971c7e63ac8ca257Approve172563152021-07-25 13:41:30606 days 10 hrs ago0xf2d4f03e0bb383b593b3e15f7162d6a1e4925847 IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0000520720051.0000001
0x7eab92be542ac5b264d659cf719df07a69ea4d28ae19d8e6feaf816cf93bec5aApprove172335322021-07-24 23:04:02607 days 42 mins ago0xfd6e2ee0654be592671c1ece086dce22e673f27d IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0000520720051.0000001
0xf9d9076b3f32506d3dde4c1b00ed3a61bb3928c2f331f4811f70e6b3b3c4821eApprove172335152021-07-24 23:03:28607 days 42 mins ago0xe45d16fe6b9ad83c45974a325b0a651e22ba0f94 IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0000520720051.0000001
0xf7f14b2c6a051756db64a109c9fb51048fbb20109cea5f4942c78849b8a57516Approve172333172021-07-24 22:52:24607 days 53 mins ago0xda52d6016edc2d39656ee59874784af6419a4a4d IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0000520720051.0000001
0x60852f0d7104c36156df4546824db3822917ca9015f30bfa863d95628d174a4eApprove172329772021-07-24 22:40:44607 days 1 hr ago0x67c895ee863aeac20f925602daa32857399a183f IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0000520720051.0000001
0x51f91db8ac4842cae35b0b8f2e0b8e7887b6156d74bede84b3c64f21c27c430bApprove172329692021-07-24 22:40:28607 days 1 hr ago0xfef1f89333a6e351f5870b5350d1a5a7ca365937 IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0000520720051.0000001
0x93d08d133937dffa974c7f4f91115bf6f0e0e53b345dd0b27fe5587cf5c929f0Approve172329682021-07-24 22:40:26607 days 1 hr ago0xccac1a94773825db6073035234b60c35747347a7 IN  0x313d009888329c9d1cf4f75ca3f32566335bd6040 MATIC0.0000520720051.0000001
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.

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-29
*/

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

608060405234801561001057600080fd5b50604051610c85380380610c858339818101604052602081101561003357600080fd5b8101908080519060200190929190505050806100543361006a60201b60201c565b610063816100ab60201b60201c565b50506100cf565b600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e6572000000000000008152506019019050604051809103902090508181555050565b60006040518080610c63602291396022019050604051809103902090508181555050565b610b85806100de6000396000f3fe6080604052600436106100595760003560e01c8063025313a21461010e578063025b22bc146101655780634555d5c9146101b65780635c60da1b146101e1578063d88ca2c814610238578063f1739cae14610313576100b6565b366100b6576100b4610069610364565b6000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610390565b005b61010c6100c1610364565b6000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610390565b005b34801561011a57600080fd5b506101236103ba565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017157600080fd5b506101b46004803603602081101561018857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506103c9565b005b3480156101c257600080fd5b506101cb6105df565b6040518082815260200191505060405180910390f35b3480156101ed57600080fd5b506101f66105e8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103116004803603604081101561024e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019064010000000081111561028b57600080fd5b82018360208201111561029d57600080fd5b803590602001918460018302840111640100000000831117156102bf57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506105f7565b005b34801561031f57600080fd5b506103626004803603602081101561033657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610813565b005b60008060006040518080610b2e6022913960220190506040518091039020905080549150819250505090565b600080825160208401856127105a03f43d604051816000823e82600081146103b6578282f35b8282fd5b60006103c4610a08565b905090565b3373ffffffffffffffffffffffffffffffffffffffff166103e8610a08565b73ffffffffffffffffffffffffffffffffffffffff1614610471576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610514576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f494e56414c49445f50524f58595f41444452455353000000000000000000000081525060200191505060405180910390fd5b61051d81610a51565b610572576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180610b096025913960400191505060405180910390fd5b61057a610364565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fd32d24edea94f55e932d9a008afc425a8561462d1b1f57bc6e508e9a6b9509e160405160405180910390a36105dc81610aa3565b50565b60006002905090565b60006105f2610364565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610616610a08565b73ffffffffffffffffffffffffffffffffffffffff161461069f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6106a8826103c9565b600060603073ffffffffffffffffffffffffffffffffffffffff1634846040518082805190602001908083835b602083106106f857805182526020820191506020810190506020830392506106d5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d806000811461075a576040519150601f19603f3d011682016040523d82523d6000602084013e61075f565b606091505b509150915081819061080c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156107d15780820151818401526020810190506107b6565b50505050905090810190601f1680156107fe5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5050505050565b3373ffffffffffffffffffffffffffffffffffffffff16610832610a08565b73ffffffffffffffffffffffffffffffffffffffff16146108bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561095e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f5a45524f5f41444452455353000000000000000000000000000000000000000081525060200191505060405180910390fd5b7fdbe5fd65bcdbae152f24ab660ea68e72b4d4705b57b16e0caae994e214680ee281610988610a08565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1610a0581610ac7565b50565b600080600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e65720000000000000081525060190190506040518091039020905080549150819250505090565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610a905760009050610a9e565b6000823b9050600081119150505b919050565b60006040518080610b2e602291396022019050604051809103902090508181555050565b600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e657200000000000000815250601901905060405180910390209050818155505056fe44455354494e4154494f4e5f414444524553535f49535f4e4f545f415f434f4e54524143546d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6ea26469706673582212208262e9eb2153cf52cdbce21b7ed8a72faf3469a061b389bcfdc789246642006364736f6c634300060600336d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6e00000000000000000000000012aa9deb3ca4b26aa71cb9589f972e5ebc38621e

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

00000000000000000000000012aa9deb3ca4b26aa71cb9589f972e5ebc38621e

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

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000012aa9deb3ca4b26aa71cb9589f972e5ebc38621e


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.