Contract 0x8f3cf7ad23cd3cadbd9735aff958023239c6a063 5

 
Txn Hash
Block
From
To
Value [Txn Fee]
0x1cfc20ce0eeafecf1d34458c525ab7fb1a2e9451a3efa21cdf4659e8b65f365b173569562021-07-28 10:18:0711 secs ago0x1ef32734c14753cb8d3294b30c996a5c5866f691 IN  Maker: Dai Stablecoin0 MATIC0.000052072
0x9a45c1afbfafb0763ad582c6e875708bcc8e91da1179784abb8f1e64775e33a2173569182021-07-28 10:16:291 min ago0x9dba5f0384753e951b2ec93b99b0fca249328e8c IN  Maker: Dai Stablecoin0 MATIC0.00182252
0xc0aa0fea549c1393a3e30a73a0f59ef16be7265c27c8ff6f50aeba811af1fb91173568852021-07-28 10:14:174 mins ago0x9832dbbaeb7cc127c4712e4a0bca286f10797a6f IN  Maker: Dai Stablecoin0 MATIC0.000104144
0x25196a0528c3fdad0baa6ac86c9cd710dc197291b2c8ed3e89c5eab1a34e7a24173568822021-07-28 10:14:054 mins ago0x4b8b30b37c9bee318136b593ae301d2f9073db93 IN  Maker: Dai Stablecoin0 MATIC0.000052072
0x463ff5a15e7313c8f21d166d4e698d035fb7ecec3b44f9ec5981f587f026984a173568042021-07-28 10:10:477 mins ago0x66c0d9152209b51977047b9dc3b0b5bf2339b67c IN  Maker: Dai Stablecoin0 MATIC0.00021149
0x13106bfdc1696daa37566658fa47ec62b9ef341dc2a700b2bd5d0c04a9df7237173567962021-07-28 10:10:277 mins ago0x08b224625c88231033218fc9e648c5d4af02ebb2 IN  Maker: Dai Stablecoin0 MATIC0.0000572792
0x15817569e24ea0050c4679c12bd29f959bac71dd8375aec7a043f0758e57c807173567542021-07-28 10:09:039 mins ago0xbdd9063f231a7a9185dee1d107d300e349b5c9a1 IN  Maker: Dai Stablecoin0 MATIC0.0000572792
0x8c111e88fada20661bb323ac15211f1e774c0fb5494ef48ccd525ce43295c107173567292021-07-28 10:08:0910 mins ago0x7694058c0d2327036cd60e23c4e89bcc436603bc IN  Maker: Dai Stablecoin0 MATIC0.000040198
0xffaa3c2d2eed9d3993fef8ab5d3540c404a985383b32dce79e385a3b90df448d173567262021-07-28 10:08:0310 mins ago0x7694058c0d2327036cd60e23c4e89bcc436603bc IN  Maker: Dai Stablecoin0 MATIC0.00004021
0x4f7f39a4f7c159f68cabcacbc4a3367e4834dec02c295e9ada998a5cf468f498173566642021-07-28 10:05:4112 mins ago0xd64125597579f680f4e7f452bff2cfc0e40c403a IN  Maker: Dai Stablecoin0 MATIC0.0000572792
0xa873bd6a81380938ba139254bec2705cab164a7758ceaf2a0256e5c25f5bd475173565822021-07-28 10:00:4917 mins ago0x135ae51cae4f8d61471598ab4a0248ce27f4c83a IN  Maker: Dai Stablecoin0 MATIC0.000052072
0x9081618225544215d23c7ca5724cd297771d396b995f4c3f441eb00fcf9feeec173565622021-07-28 10:00:0918 mins ago0xa48da27238cfe998e30d485157fc983d4a17e163 IN  Maker: Dai Stablecoin0 MATIC0.002737038
0x4a2771c2b22b7e053973ae1b8264e8333275311b1ab0f367c98c346ebb2af6c4173565552021-07-28 9:59:5518 mins ago0x189ecebfa5d3c5ea82d5172b1069c3305a0a149a IN  Maker: Dai Stablecoin0 MATIC0.00052072
0x4278a864bc7188cd2ac2d4de4205a5b1eef82c596110b748e8fa5d62270e663a173565152021-07-28 9:58:2919 mins ago0xb96cacfc32aadb1c50fe4006cad32dda5f1016b9 IN  Maker: Dai Stablecoin0 MATIC0.000114572
0x6ae2adda0acfbb16363de03af155ca387bb2d17a6afc0a82757adad2fa5d1061173565082021-07-28 9:58:1520 mins ago0x5c3a621207f6bbb1f54cabe97860471644772f9c IN  Maker: Dai Stablecoin0 MATIC0.000052072
0x4cb0c55589d7e2fdc36f800d15a1f4456759c9710b94d0f71bfd89486447e5a8173565062021-07-28 9:58:1120 mins ago0x6f0e9d4186d5f45bd744a01cb7a8b12d90bb775d IN  Maker: Dai Stablecoin0 MATIC0.001093512
0x7bd3a7ac930dc6a1124217d409c932806b2642110c59599cb12c2f2a7c0c8eb8173562962021-07-28 9:48:5129 mins ago0xfe5660f2e5ba3012c4e517831d23eb0f97188bb5 IN  Maker: Dai Stablecoin0 MATIC0.000024646
0x4be176b43e2439ce8dbabc4d7de9dbbc4a12f0a583f07e4ded2059fd3bdeb8bb173562912021-07-28 9:48:4129 mins ago0x9ec8e8acc1d86ecd59811a7148f6798d954368a4 IN  Maker: Dai Stablecoin0 MATIC0.000042322
0xb1fc631d1d1386f74b6c86d3aeedebae995f682e5ea1fd90ed88705a257088cd173562892021-07-28 9:48:3729 mins ago0xbe43c089e796dd787e5c3a77553cc26ef46c5b28 IN  Maker: Dai Stablecoin0 MATIC0.000052072
0xf0d9c601b54cb7600dd53e830b84685105acb208a8b34e909611462bececff1f173562782021-07-28 9:48:1130 mins ago0x87e631332c79e97c9a160c2ea9a6ff384ab95a9f IN  Maker: Dai Stablecoin0 MATIC0.000052072
0x453d4f7ff86f6f1eeb092b655fcc4e423ac9c5ea8c33908328eda67e648b6da6173562742021-07-28 9:48:0330 mins ago0x6be4562544e9756579bfe473a3b7b223504d0de1 IN  Maker: Dai Stablecoin0 MATIC0.000052072
0xd8d451cb04c44852c6adda6175d1cb4117ec38b58ffc4773e4f6ce4a8dd45c11173562142021-07-28 9:45:4132 mins ago0x9772fedc43123a6efbd1965617d0e079de2689e4 IN  Maker: Dai Stablecoin0 MATIC0.00012335
0x773787ba88096dea6a5d9e6ff4713631dd5b4e96211580a4baa69a8de7236027173562082021-07-28 9:45:1733 mins ago0x13240a91bb171eab6b125ec89b6e0776a904d8ab IN  Maker: Dai Stablecoin0 MATIC0.00012693
0x217b275ead65c4eecad8f3082ab374a8bb6871a43d98de60870864ba1d540e05173561792021-07-28 9:43:2134 mins ago0x1a4a77efad200658c794a51ed3317dbe4bcb4e5a IN  Maker: Dai Stablecoin0 MATIC0.000052072
0x2592e056b8c29af23430ea2db7240eeb5938b17d3a2610ebc00b4cfe333f3036173561562021-07-28 9:41:5136 mins ago0x12ec22577b661b54c7233eb30cab21d2547146c0 IN  Maker: Dai Stablecoin0 MATIC0.000052072
[ 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.

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-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 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

-----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.