This token was updated based on the Polygon Mapper website. Note: This token's displayed symbol does not match its contract's Symbol function.
Overview
Max Total Supply
387,330,727.556911 USDC.e
Holders
2,406,402 ( 0.020%)
Market
Price
$0.9996 @ 1.503270 POL (-0.04%)
Onchain Market Cap
$387,170,759.97
Circulating Supply Market Cap
$40,952,206,553.00
Other Info
Token Contract (WITH 6 Decimals)
Balance
30.36791 USDC.eValue
$30.36 ( ~45.6581 POL) [0.0000%]Loading...
Loading
Loading...
Loading
Loading...
Loading
Contract Name:
UChildERC20Proxy
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at polygonscan.com on 2021-06-09 */ // SPDX-License-Identifier: MIT // File: contracts/lib/Proxy/IERCProxy.sol pragma solidity 0.6.12; interface IERCProxy { function proxyType() external pure returns (uint256 proxyTypeId); function implementation() external view returns (address codeAddr); } // File: contracts/lib/Proxy/Proxy.sol pragma solidity 0.6.12; 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/lib/Proxy/UpgradableProxy.sol pragma solidity 0.6.12; contract UpgradableProxy is Proxy { event ProxyUpdated(address indexed _new, address indexed _old); event ProxyOwnerUpdate(address _new, address _old); bytes32 public constant IMPLEMENTATION_SLOT = keccak256( "matic.network.proxy.implementation" ); bytes32 public 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) public payable onlyProxyOwner { updateImplementation(_newProxyTo); // solhint-disable-next-line avoid-low-level-calls (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/UChildERC20Proxy.sol pragma solidity 0.6.12; contract UChildERC20Proxy is UpgradableProxy { constructor(address _proxyTo) public UpgradableProxy(_proxyTo) {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"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_SLOT","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"OWNER_SLOT","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"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"}]
Contract Creation Code
608060405234801561001057600080fd5b5060405161089b38038061089b8339818101604052602081101561003357600080fd5b50518061003f3361004f565b61004881610073565b5050610097565b7f44f6e2e8884cba1236b7f22f351fa5d88b17292b7e0225ca47e5ecdf6055cdd655565b7fbaab7dbf64751104133af04abc7d9979f0fda3b059a322a8333f533d3f32bf7f55565b6107f5806100a66000396000f3fe60806040526004361061007f5760003560e01c80635c60da1b1161004e5780635c60da1b14610179578063963949a31461018e578063d88ca2c8146101a3578063f1739cae14610259576100ce565b8063025313a2146100d9578063025b22bc1461010a578063086fc0c71461013d5780634555d5c914610164576100ce565b366100ce576100cc61008f61028c565b6000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506102b192505050565b005b6100cc61008f61028c565b3480156100e557600080fd5b506100ee6102d9565b604080516001600160a01b039092168252519081900360200190f35b34801561011657600080fd5b506100cc6004803603602081101561012d57600080fd5b50356001600160a01b03166102e8565b34801561014957600080fd5b50610152610422565b60408051918252519081900360200190f35b34801561017057600080fd5b50610152610446565b34801561018557600080fd5b506100ee61044b565b34801561019a57600080fd5b50610152610455565b6100cc600480360360408110156101b957600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156101e457600080fd5b8201836020820111156101f657600080fd5b8035906020019184600183028401116401000000008311171561021857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610479945050505050565b34801561026557600080fd5b506100cc6004803603602081101561027c57600080fd5b50356001600160a01b031661060f565b7fbaab7dbf64751104133af04abc7d9979f0fda3b059a322a8333f533d3f32bf7f5490565b600080825160208401856127105a03f43d604051816000823e8280156102d5578282f35b8282fd5b60006102e361070a565b905090565b336102f161070a565b6001600160a01b031614610338576040805162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015290519081900360640190fd5b6001600160a01b03811661038b576040805162461bcd60e51b8152602060048201526015602482015274494e56414c49445f50524f58595f4144445245535360581b604482015290519081900360640190fd5b6103948161072f565b6103cf5760405162461bcd60e51b815260040180806020018281038252602581526020018061079b6025913960400191505060405180910390fd5b6103d761028c565b6001600160a01b0316816001600160a01b03167fd32d24edea94f55e932d9a008afc425a8561462d1b1f57bc6e508e9a6b9509e160405160405180910390a361041f81610752565b50565b7fbaab7dbf64751104133af04abc7d9979f0fda3b059a322a8333f533d3f32bf7f81565b600290565b60006102e361028c565b7f44f6e2e8884cba1236b7f22f351fa5d88b17292b7e0225ca47e5ecdf6055cdd681565b3361048261070a565b6001600160a01b0316146104c9576040805162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015290519081900360640190fd5b6104d2826102e8565b60006060306001600160a01b031634846040518082805190602001908083835b602083106105115780518252601f1990920191602091820191016104f2565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610573576040519150601f19603f3d011682016040523d82523d6000602084013e610578565b606091505b50915091508181906106085760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156105cd5781810151838201526020016105b5565b50505050905090810190601f1680156105fa5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5050505050565b3361061861070a565b6001600160a01b03161461065f576040805162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015290519081900360640190fd5b6001600160a01b0381166106a9576040805162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b604482015290519081900360640190fd5b7fdbe5fd65bcdbae152f24ab660ea68e72b4d4705b57b16e0caae994e214680ee2816106d361070a565b60405180836001600160a01b03168152602001826001600160a01b031681526020019250505060405180910390a161041f81610776565b7f44f6e2e8884cba1236b7f22f351fa5d88b17292b7e0225ca47e5ecdf6055cdd65490565b60006001600160a01b0382166107475750600061074d565b50803b15155b919050565b7fbaab7dbf64751104133af04abc7d9979f0fda3b059a322a8333f533d3f32bf7f55565b7f44f6e2e8884cba1236b7f22f351fa5d88b17292b7e0225ca47e5ecdf6055cdd65556fe44455354494e4154494f4e5f414444524553535f49535f4e4f545f415f434f4e5452414354a2646970667358221220696f7ae6f368606e2fb937629b8621028df4794f0d256c4f4b869fbe6350edcb64736f6c634300060c0033000000000000000000000000dd9185db084f5c4fff3b4f70e7ba62123b812226
Deployed Bytecode
0x60806040526004361061007f5760003560e01c80635c60da1b1161004e5780635c60da1b14610179578063963949a31461018e578063d88ca2c8146101a3578063f1739cae14610259576100ce565b8063025313a2146100d9578063025b22bc1461010a578063086fc0c71461013d5780634555d5c914610164576100ce565b366100ce576100cc61008f61028c565b6000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506102b192505050565b005b6100cc61008f61028c565b3480156100e557600080fd5b506100ee6102d9565b604080516001600160a01b039092168252519081900360200190f35b34801561011657600080fd5b506100cc6004803603602081101561012d57600080fd5b50356001600160a01b03166102e8565b34801561014957600080fd5b50610152610422565b60408051918252519081900360200190f35b34801561017057600080fd5b50610152610446565b34801561018557600080fd5b506100ee61044b565b34801561019a57600080fd5b50610152610455565b6100cc600480360360408110156101b957600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156101e457600080fd5b8201836020820111156101f657600080fd5b8035906020019184600183028401116401000000008311171561021857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610479945050505050565b34801561026557600080fd5b506100cc6004803603602081101561027c57600080fd5b50356001600160a01b031661060f565b7fbaab7dbf64751104133af04abc7d9979f0fda3b059a322a8333f533d3f32bf7f5490565b600080825160208401856127105a03f43d604051816000823e8280156102d5578282f35b8282fd5b60006102e361070a565b905090565b336102f161070a565b6001600160a01b031614610338576040805162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015290519081900360640190fd5b6001600160a01b03811661038b576040805162461bcd60e51b8152602060048201526015602482015274494e56414c49445f50524f58595f4144445245535360581b604482015290519081900360640190fd5b6103948161072f565b6103cf5760405162461bcd60e51b815260040180806020018281038252602581526020018061079b6025913960400191505060405180910390fd5b6103d761028c565b6001600160a01b0316816001600160a01b03167fd32d24edea94f55e932d9a008afc425a8561462d1b1f57bc6e508e9a6b9509e160405160405180910390a361041f81610752565b50565b7fbaab7dbf64751104133af04abc7d9979f0fda3b059a322a8333f533d3f32bf7f81565b600290565b60006102e361028c565b7f44f6e2e8884cba1236b7f22f351fa5d88b17292b7e0225ca47e5ecdf6055cdd681565b3361048261070a565b6001600160a01b0316146104c9576040805162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015290519081900360640190fd5b6104d2826102e8565b60006060306001600160a01b031634846040518082805190602001908083835b602083106105115780518252601f1990920191602091820191016104f2565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610573576040519150601f19603f3d011682016040523d82523d6000602084013e610578565b606091505b50915091508181906106085760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156105cd5781810151838201526020016105b5565b50505050905090810190601f1680156105fa5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5050505050565b3361061861070a565b6001600160a01b03161461065f576040805162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015290519081900360640190fd5b6001600160a01b0381166106a9576040805162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b604482015290519081900360640190fd5b7fdbe5fd65bcdbae152f24ab660ea68e72b4d4705b57b16e0caae994e214680ee2816106d361070a565b60405180836001600160a01b03168152602001826001600160a01b031681526020019250505060405180910390a161041f81610776565b7f44f6e2e8884cba1236b7f22f351fa5d88b17292b7e0225ca47e5ecdf6055cdd65490565b60006001600160a01b0382166107475750600061074d565b50803b15155b919050565b7fbaab7dbf64751104133af04abc7d9979f0fda3b059a322a8333f533d3f32bf7f55565b7f44f6e2e8884cba1236b7f22f351fa5d88b17292b7e0225ca47e5ecdf6055cdd65556fe44455354494e4154494f4e5f414444524553535f49535f4e4f545f415f434f4e5452414354a2646970667358221220696f7ae6f368606e2fb937629b8621028df4794f0d256c4f4b869fbe6350edcb64736f6c634300060c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000dd9185db084f5c4fff3b4f70e7ba62123b812226
-----Decoded View---------------
Arg [0] : _proxyTo (address): 0xDD9185DB084f5C4fFf3b4f70E7bA62123b812226
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000dd9185db084f5c4fff3b4f70e7ba62123b812226
Deployed Bytecode Sourcemap
4940:120:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2297:44;2310:20;:18;:20::i;:::-;2332:8;;2297:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2297:12:0;;-1:-1:-1;;;2297:44:0:i;:::-;4940:120;;2199:44;2212:20;:18;:20::i;2474:96::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;2474:96:0;;;;;;;;;;;;;;3591:382;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3591:382:0;-1:-1:-1;;;;;3591:382:0;;:::i;1833:109::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;1299:196;;;;;;;;;;;;;:::i;2811:113::-;;;;;;;;;;;;;:::i;1949:75::-;;;;;;;;;;;;;:::i;3981:405::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3981:405:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3981:405:0;;-1:-1:-1;3981:405:0;;-1:-1:-1;;;;;3981:405:0:i;3175:232::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3175:232:0;-1:-1:-1;;;;;3175:232:0;;:::i;2932:235::-;1879:63;3111:15;2932:235;:::o;395:896::-;762:1;742;713:9;707:16;683:4;672:9;668:20;645:4;620:5;613;609:17;578:200;804:16;853:4;847:11;895:4;892:1;887:3;872:28;1098:6;1122:66;;;;1249:4;1244:3;1237:17;1122:66;1164:4;1159:3;1152:17;2474:96;2519:7;2546:16;:14;:16::i;:::-;2539:23;;2474:96;:::o;3591:382::-;2422:10;2402:16;:14;:16::i;:::-;-1:-1:-1;;;;;2402:30:0;;2394:52;;;;;-1:-1:-1;;;2394:52:0;;;;;;;;;;;;-1:-1:-1;;;2394:52:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;3683:27:0;::::1;3675:61;;;::::0;;-1:-1:-1;;;3675:61:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;3675:61:0;;;;;;;;;;;;;::::1;;3769:23;3780:11;3769:10;:23::i;:::-;3747:110;;;;-1:-1:-1::0;;;3747:110:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3901:20;:18;:20::i;:::-;-1:-1:-1::0;;;;;3875:47:0::1;3888:11;-1:-1:-1::0;;;;;3875:47:0::1;;;;;;;;;;;3935:30;3953:11;3935:17;:30::i;:::-;3591:382:::0;:::o;1833:109::-;1879:63;1833:109;:::o;1299:196::-;1486:1;;1299:196::o;2811:113::-;2869:7;2896:20;:18;:20::i;1949:75::-;1986:38;1949:75;:::o;3981:405::-;2422:10;2402:16;:14;:16::i;:::-;-1:-1:-1;;;;;2402:30:0;;2394:52;;;;;-1:-1:-1;;;2394:52:0;;;;;;;;;;;;-1:-1:-1;;;2394:52:0;;;;;;;;;;;;;;;4117:33:::1;4138:11;4117:20;:33::i;:::-;4224:12;4238:23;4273:4;-1:-1:-1::0;;;;;4265:18:0::1;4305:9;4326:4;4265:66;;;;;;;;;;;;;;;;;;;::::0;;;;-1:-1:-1;;4265:66:0;;;;::::1;::::0;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4223:108;;;;4350:7;4366:10;4342:36;;;;;-1:-1:-1::0;;;4342:36:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2457:1;;3981:405:::0;;:::o;3175:232::-;2422:10;2402:16;:14;:16::i;:::-;-1:-1:-1;;;;;2402:30:0;;2394:52;;;;;-1:-1:-1;;;2394:52:0;;;;;;;;;;;;-1:-1:-1;;;2394:52:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;3266:22:0;::::1;3258:47;;;::::0;;-1:-1:-1;;;3258:47:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;3258:47:0;;;;;;;;;;;;;::::1;;3321:44;3338:8;3348:16;:14;:16::i;:::-;3321:44;;;;-1:-1:-1::0;;;;;3321:44:0::1;;;;;;-1:-1:-1::0;;;;;3321:44:0::1;;;;;;;;;;;;;;;;3376:23;3390:8;3376:13;:23::i;2578:225::-:0;1986:38;2746:15;2578:225;:::o;4589:274::-;4649:4;-1:-1:-1;;;;;4670:21:0;;4666:66;;-1:-1:-1;4715:5:0;4708:12;;4666:66;-1:-1:-1;4799:20:0;;4847:8;;4589:274;;;;:::o;4394:187::-;1879:63;4534:29;4519:55::o;3415:168::-;1986:38;3539:26;3524:52::o
Swarm Source
ipfs://696f7ae6f368606e2fb937629b8621028df4794f0d256c4f4b869fbe6350edcb
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.