Contract 0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063 7

 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xa04ae2c028b50156bbb15db3bea10c76bddeb3c3707937b1f82b921876453215Approve218778422021-11-27 23:16:5242 secs ago0xe28926ec504756d60dde53378ef839abe9b88724 IN  Maker: Dai Stablecoin0 MATIC0.0015528
0xa3832607c473b0ccb3fbb8e3921d00907761ebfe49da8bd065d28db150b9425fApprove218778362021-11-27 23:16:4054 secs ago0x4a5aefa1025e751d0d30477104e450e31c1905a4 IN  Maker: Dai Stablecoin0 MATIC0.001249056
0x840cf098a6641c80a9065c7be163684d6dc435a4d2e66e86850e4644bb566e53Approve218778352021-11-27 23:16:3856 secs ago0xe4bdfe211255fed62ec74fa13b286354e15a945a IN  Maker: Dai Stablecoin0 MATIC0.000998988
0x70721287ee56b7c94308df73dc4125eca93be33fbfa995becb23414dfbc80df1Transfer218778272021-11-27 23:16:221 min ago0xf8515955fe010ec052c6a9d13668804d348cd577 IN  Maker: Dai Stablecoin0 MATIC0.001523592
0xca831e65f45eb26978ed799a5b14997c6e8f2ad79d495fa8c6edb7f428b9ae49Approve218778232021-11-27 23:16:101 min ago0x7f4e68b4193322a16ba462159d6d9f92d651faa6 IN  Maker: Dai Stablecoin0 MATIC0.00096516
0xf7da4b48997b97f3e15f4d6dc72aecf2e147843de1e08556167d588465a62745Transfer218778182021-11-27 23:16:001 min ago0x8ceaf57461c2f355b2a9a3ac7bfbc8102c6c13a6 IN  Maker: Dai Stablecoin0 MATIC0.001523592
0xc215541918c02916d6986fecf61f80909bf6a7d4ce92b21585fa25c3e52e0f34Approve218778162021-11-27 23:15:561 min ago0x7f4e68b4193322a16ba462159d6d9f92d651faa6 IN  Maker: Dai Stablecoin0 MATIC0.00156216
0xa9fdae1d7eaee45a312db86b290ea830dc132d5e867747c9e184f3267000c96dTransfer218778092021-11-27 23:15:421 min ago0x3e7a19d88d3dcee9b5f85581e914ba9585af6e49 IN  Maker: Dai Stablecoin0 MATIC0.001523592
0xe6b72b62d2b14211b336ca1857274b8d2e7ae3ae28132ee3d4552e644030d695Approve218777862021-11-27 23:14:562 mins ago0xa8edb8ccb453fa135444e3790083ce27bf9aaa3a IN  Maker: Dai Stablecoin0 MATIC0.00095652
0xcb09030dea23165c824eb82ae4b493d125f631e76ff2aca8dd3c22d2735961bfApprove218777822021-11-27 23:14:482 mins ago0x50744d084b66e0cf498a5f078c70da02691c8aac IN  Maker: Dai Stablecoin0 MATIC0.015152952
0x2be042f4c7efa5da63944a1696e13cf5b90a6dd3a251372575e5bcdc0ab09051Approve218777752021-11-27 23:14:343 mins ago0xa8edb8ccb453fa135444e3790083ce27bf9aaa3a IN  Maker: Dai Stablecoin0 MATIC0.00155352
0x25daff07e47665bd40d0ef4e512ccd7ccd044910c0caeca4b881d7332371b309Approve218777712021-11-27 23:14:263 mins ago0x014dcb68229580320f22154d58fdf761abc9c993 IN  Maker: Dai Stablecoin0 MATIC0.00427218
0xe022584fada15362bdc33f03a1b7eaf4ba944f368afd74b0af474996c8d80bb3Approve218777692021-11-27 23:14:223 mins ago0xe63b47975ca3a0e9e436eb54534acc9d42225410 IN  Maker: Dai Stablecoin0 MATIC0.00156216
0xe35c5e6ebf4448e739d409119c153a0ce7d22dcae1304bb144dc6f266e4db16eApprove218777572021-11-27 23:13:543 mins ago0xfda0d560047c12e4f394ac61fd028d9e29f4fdc5 IN  Maker: Dai Stablecoin0 MATIC0.001249056
0x6f9baca5a353f199707276ac6a88c595aacce826866f3ab37c58dfced002b896Approve218777532021-11-27 23:13:463 mins ago0x83ec7ec8284d833a486ce2c8122475667eb5bc59 IN  Maker: Dai Stablecoin0 MATIC0.00156216
0x8bd275de19709b3d876b6dd5114a4256ddd72fa680826a920f453d13d5acb1bdApprove218777472021-11-27 23:13:344 mins ago0x9a95731693f20fb3bb64892b50f23b1067d2d263 IN  Maker: Dai Stablecoin0 MATIC0.00156216
0x67b2d027ead39f082d2f5ed345a7d66d6b880d36910404701cbff92ac722232bApprove218777152021-11-27 23:12:305 mins ago0x36c3baacb7ff8a073035de5ad8ba8d67115be4e7 IN  Maker: Dai Stablecoin0 MATIC0.001249056
0x68aed75b294031848a3ce114078c8bb96e09a6f7f3f8c91fa7f23a15e614c6eeApprove218777102021-11-27 23:12:205 mins ago0x7ace2b08bdc752b59b1a043bd3eb63632d31b44b IN  Maker: Dai Stablecoin0 MATIC0.0014691
0x09c80bfd66ab6027f3bbe2629758f3fe4f5a619b8848cb98cf28ac477910bcd5Transfer218777062021-11-27 23:12:125 mins ago0x17e7475df43feee3860df999ffdc3fd85199ed9a IN  Maker: Dai Stablecoin0 MATIC0.001523592
0x7c4965aaa894a4197a05226cc956e3186cb0872a93ab3f06626274142aedeb75Transfer218776972021-11-27 23:11:545 mins ago0x3f9729f4941d4926bf63f91c5a2034a323112d3f IN  Maker: Dai Stablecoin0 MATIC0.001523592
0x3f0481c91d488f7e7da60b3e0d3a697431644a50250f8fc8e21ff6cb8a774629Transfer218776882021-11-27 23:11:326 mins ago0xcd2dffb80fef44724666a0b58ddf2f507f2441b9 IN  Maker: Dai Stablecoin0 MATIC0.001523592
0x055c28bf673d1da2bfadf0975ee796350fcc19c17456ba8cd5d99050ffc5cb91Transfer218776842021-11-27 23:11:246 mins ago0xcc206b3d3400a9672350a2fba2a1142da99ae26a IN  Maker: Dai Stablecoin0 MATIC0.0012693
0x1606c95346a780b4d1d78daf3c91ddd85aca376a9330c6cb8f9b6aa90735888aApprove218776682021-11-27 23:10:526 mins ago0xb8a9c37240e8b72f42a88f1099e6c61dc3e96756 IN  Maker: Dai Stablecoin0 MATIC0.00156216
0xebeb18d4a706f798fbe1265bbea3cd70cbdd732830355655f34708b2daf4d4caApprove218776642021-11-27 23:10:446 mins ago0xe450e4640f40bf74b573c371c8151a62dd39a91f IN  Maker: Dai Stablecoin0 MATIC0.00155316
0xe1fec674526162bb4d176897be7ebb2f7550a4143d41191636ba9dedff64b6b5Approve218776582021-11-27 23:10:327 mins ago0x7ace2b08bdc752b59b1a043bd3eb63632d31b44b IN  Maker: Dai Stablecoin0 MATIC0.00117528
[ Download CSV Export 

OVERVIEW

Multi-Collateral Dai, brings a lot of new and exciting features, such as support for new CDP collateral types and Dai Savings Rate.

Latest 1 internal transaction
Parent Txn Hash Block From To Value
0x40f82dfae0e5297ad2d23df6e4f9f7ac8a679be5c033da3cf219fb001bde1592218696372021-11-27 18:10:055 hrs 7 mins ago 0x079ac5d80e42ad63a54d436039fd0b0620f93935 Maker: Dai Stablecoin100 wei
[ Download CSV Export 
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-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"}]

608060405234801561001057600080fd5b50604051610c85380380610c858339818101604052602081101561003357600080fd5b8101908080519060200190929190505050806100543361006a60201b60201c565b610063816100ab60201b60201c565b50506100cf565b600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e6572000000000000008152506019019050604051809103902090508181555050565b60006040518080610c63602291396022019050604051809103902090508181555050565b610b85806100de6000396000f3fe6080604052600436106100595760003560e01c8063025313a21461010e578063025b22bc146101655780634555d5c9146101b65780635c60da1b146101e1578063d88ca2c814610238578063f1739cae14610313576100b6565b366100b6576100b4610069610364565b6000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610390565b005b61010c6100c1610364565b6000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610390565b005b34801561011a57600080fd5b506101236103ba565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017157600080fd5b506101b46004803603602081101561018857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506103c9565b005b3480156101c257600080fd5b506101cb6105df565b6040518082815260200191505060405180910390f35b3480156101ed57600080fd5b506101f66105e8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103116004803603604081101561024e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019064010000000081111561028b57600080fd5b82018360208201111561029d57600080fd5b803590602001918460018302840111640100000000831117156102bf57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506105f7565b005b34801561031f57600080fd5b506103626004803603602081101561033657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610813565b005b60008060006040518080610b2e6022913960220190506040518091039020905080549150819250505090565b600080825160208401856127105a03f43d604051816000823e82600081146103b6578282f35b8282fd5b60006103c4610a08565b905090565b3373ffffffffffffffffffffffffffffffffffffffff166103e8610a08565b73ffffffffffffffffffffffffffffffffffffffff1614610471576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610514576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f494e56414c49445f50524f58595f41444452455353000000000000000000000081525060200191505060405180910390fd5b61051d81610a51565b610572576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180610b096025913960400191505060405180910390fd5b61057a610364565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fd32d24edea94f55e932d9a008afc425a8561462d1b1f57bc6e508e9a6b9509e160405160405180910390a36105dc81610aa3565b50565b60006002905090565b60006105f2610364565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610616610a08565b73ffffffffffffffffffffffffffffffffffffffff161461069f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6106a8826103c9565b600060603073ffffffffffffffffffffffffffffffffffffffff1634846040518082805190602001908083835b602083106106f857805182526020820191506020810190506020830392506106d5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d806000811461075a576040519150601f19603f3d011682016040523d82523d6000602084013e61075f565b606091505b509150915081819061080c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156107d15780820151818401526020810190506107b6565b50505050905090810190601f1680156107fe5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5050505050565b3373ffffffffffffffffffffffffffffffffffffffff16610832610a08565b73ffffffffffffffffffffffffffffffffffffffff16146108bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561095e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f5a45524f5f41444452455353000000000000000000000000000000000000000081525060200191505060405180910390fd5b7fdbe5fd65bcdbae152f24ab660ea68e72b4d4705b57b16e0caae994e214680ee281610988610a08565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1610a0581610ac7565b50565b600080600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e65720000000000000081525060190190506040518091039020905080549150819250505090565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610a905760009050610a9e565b6000823b9050600081119150505b919050565b60006040518080610b2e602291396022019050604051809103902090508181555050565b600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e657200000000000000815250601901905060405180910390209050818155505056fe44455354494e4154494f4e5f414444524553535f49535f4e4f545f415f434f4e54524143546d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6ea26469706673582212208262e9eb2153cf52cdbce21b7ed8a72faf3469a061b389bcfdc789246642006364736f6c634300060600336d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6e000000000000000000000000490e379c9cff64944be82b849f8fd5972c7999a7

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

000000000000000000000000490e379c9cff64944be82b849f8fd5972c7999a7

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

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000490e379c9cff64944be82b849f8fd5972c7999a7


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.