Contract 0x385eeac5cb85a38a9a07a70c73e0a3271cfb54a7 10

 

Contract Overview

Aavegotchi: GHST Token
Balance:
0 MATIC

MATIC Value:
$0.00

Token:
 
Txn Hash
Method
Block
From
To
Value [Txn Fee]
0x00033f925ae0710d1eaf19b5ae45678519e50b044ea8cbaa1c2e246f6b6e1df9Decrease Allowan...432286942023-05-28 0:12:214 mins ago0x543daf8dd6923d83fd2cc218ac3892d4b8cea5df IN  Aavegotchi: GHST Token0 MATIC0.004674679557 133.261482868
0x4211f024811ed8dba186cc22bc9ff25db14c9852c80bc240062e52a214ddf907Decrease Allowan...432286812023-05-28 0:11:535 mins ago0x543daf8dd6923d83fd2cc218ac3892d4b8cea5df IN  Aavegotchi: GHST Token0 MATIC0.00545652785 155.549697844
0x3674e518e348cd940c2fd3de301d080479e3d77b6e538b24cae3441c17897fcbApprove432286492023-05-28 0:10:456 mins ago0x543daf8dd6923d83fd2cc218ac3892d4b8cea5df IN  Aavegotchi: GHST Token0 MATIC0.007263888833 140.435558618
0x00de14fdb53e8243ab3b8690415696acaf4474cfa8825175529c6c02526cb4d4Withdraw432285872023-05-28 0:08:338 mins ago0x543daf8dd6923d83fd2cc218ac3892d4b8cea5df IN  Aavegotchi: GHST Token0 MATIC0.006116156321 154.417196556
0x3d0066415317a13479d8d688890a10e9a742d8216a964e81a1c868db432ed8d1Withdraw432285522023-05-28 0:07:199 mins ago0x543daf8dd6923d83fd2cc218ac3892d4b8cea5df IN  Aavegotchi: GHST Token0 MATIC0.005088190011 128.541582756
0xec96af4e0a3d2d31876281d92c3988bcc9795ed3d9f995c56e91c81e9761ef40Transfer432283912023-05-28 0:01:3715 mins agoBinance: Hot Wallet 2 IN  Aavegotchi: GHST Token0 MATIC0.006030686439 149.942477373
0xea373810c9e130872c159ac3bd7812e3adaebd2eebc1f79adb6e9f28345c4b27Transfer432283852023-05-28 0:01:2515 mins agoBinance: Hot Wallet 2 IN  Aavegotchi: GHST Token0 MATIC0.00627372905 155.985307078
0x8fc1b854c42b073bb6011960830acf1eca675895631f174477f83b1a5d735d1eApprove432282822023-05-27 23:57:3319 mins ago0x75d39ed1a064996dee08aeb5601110af0d6a5546 IN  Aavegotchi: GHST Token0 MATIC0.017212075626 332.536236987
0x5f6154711c0f3fa665141afe02ebd5bed541b4de78ebb7a089dacd2bafbd6a78Approve432275132023-05-27 23:29:4747 mins ago0x3a3cb64a3a80bb4b4475188a89f374b586b1fcc0 IN  Aavegotchi: GHST Token0 MATIC0.007236312066 138.967430987
0x34590c7f5bd2dc46c5d4028c9e92a2e12c09c5d295f72be09e8cf6bc8ce1f15fTransfer432273152023-05-27 23:22:4754 mins ago0xf5021699a3ab4ce16a35fa34e3d0dbddaafa7876 IN  Aavegotchi: GHST Token0 MATIC0.00747285606 130.398130467
0x47f40c17e7458bd639436fb056e3747cfad5b0b0ed213c05b9aaa591e01edf58Transfer432273092023-05-27 23:22:3354 mins ago0xf5021699a3ab4ce16a35fa34e3d0dbddaafa7876 IN  Aavegotchi: GHST Token0 MATIC0.007720450247 134.718542746
0x10b6646eb37d8b203a718ec3d4e7cb878783f5e9ef0ec9124d2dd69d9048affcTransfer432268342023-05-27 23:04:311 hr 12 mins ago0x1c28b4f1c0ce16597d52fff5978080a3fe4d119c IN  Aavegotchi: GHST Token0 MATIC0.005360918556 151.352867199
0x8af707386b36884c42319b7364a118bef92ec27826fe2c9871b0f3b94ec76598Transfer432267682023-05-27 23:02:111 hr 14 mins ago0x88be113bff7ffa6fbf97aebe06c1e07b9cb46109 IN  Aavegotchi: GHST Token0 MATIC0.0060312 150
0xf1dedf956fa01d51af64d2922532b30311d1208f4e65a0ea70ca10271ccae28dTransfer432267002023-05-27 22:58:471 hr 18 mins ago0xfe0db25346428736bc7b9a0d3b3c30dec9715dba IN  Aavegotchi: GHST Token0 MATIC0.00974032 170
0x41a80309c9b09f2b3301a598fb772184c7258d941c7185e4f123d00d07e1ec89Transfer432266872023-05-27 22:58:191 hr 18 mins ago0xfe0db25346428736bc7b9a0d3b3c30dec9715dba IN  Aavegotchi: GHST Token0 MATIC0.00974236 170
0x1aab577faaef8acce2977a9b9bbe97cba38700eaca0d5b27780623ea1dcdc1d5Transfer432266812023-05-27 22:58:071 hr 18 mins ago0xfe0db25346428736bc7b9a0d3b3c30dec9715dba IN  Aavegotchi: GHST Token0 MATIC0.00683536 170
0x10dcf9780aa53c1a9b94078b09197b90c4b85908bda244a72898362be45d4525Transfer432266732023-05-27 22:57:511 hr 19 mins ago0xfe0db25346428736bc7b9a0d3b3c30dec9715dba IN  Aavegotchi: GHST Token0 MATIC0.00974236 170
0x63278447c2c3a3195e6c3e77402e9b152883b0156aeba6294548abe5fb1a110eTransfer432266632023-05-27 22:57:291 hr 19 mins ago0xfe0db25346428736bc7b9a0d3b3c30dec9715dba IN  Aavegotchi: GHST Token0 MATIC0.00974236 170
0x0f12eb45a3f1c68567cbc7ea2388b4b5c3690b0f68e43c7ab56e276e930e9f68Transfer432266462023-05-27 22:56:531 hr 20 mins ago0x514431898f06d6a19a05d8d3074e8973687c8832 IN  Aavegotchi: GHST Token0 MATIC0.005688204776160.647446227
0xacbdacd5ab6c73291776a5a053171c9338a14353be933515a7d049a77da68794Transfer432266452023-05-27 22:56:511 hr 20 mins ago0xfe0db25346428736bc7b9a0d3b3c30dec9715dba IN  Aavegotchi: GHST Token0 MATIC0.00683536 170
0xda922733b3e0b6b1a3e5801b12c1ffa12f6ff9e8cf67e2073772712aa081c61fTransfer432266332023-05-27 22:56:251 hr 20 mins ago0xfe0db25346428736bc7b9a0d3b3c30dec9715dba IN  Aavegotchi: GHST Token0 MATIC0.00974236 170
0x35ff0370d3d02e7c8d09940bd0384807e1640cd86865d6a4c2a7c38346b70f1fTransfer432266222023-05-27 22:56:011 hr 20 mins ago0xfe0db25346428736bc7b9a0d3b3c30dec9715dba IN  Aavegotchi: GHST Token0 MATIC0.00974236 170
0x00e4deab9b61d3c9abcfe1d3bd7fc882cb979164465494d95b12f377135530b3Transfer432266132023-05-27 22:55:431 hr 21 mins ago0xfe0db25346428736bc7b9a0d3b3c30dec9715dba IN  Aavegotchi: GHST Token0 MATIC0.00974236 170
0x84fd7b115b67da7d3a6208f8be724fb63bc66ff87052511afd78b6966565f735Transfer432266042023-05-27 22:55:231 hr 21 mins ago0x9c90bb7d4386501994000ac1d179f987b234179e IN  Aavegotchi: GHST Token0 MATIC0.005692060314160.647446227
0x37df74fdd580be4e1d72abb2d290912f9df29151e211e95580597cde9b6b6ee4Transfer432266022023-05-27 22:55:191 hr 21 mins ago0xfe0db25346428736bc7b9a0d3b3c30dec9715dba IN  Aavegotchi: GHST Token0 MATIC0.00974236 170
[ Download CSV Export 

OVERVIEW

Aavegotchis are crypto-collectibles living on the Ethereum blockchain, backed by the ERC721 standard used in popular blockchain games. $GHST is the official utility token of the Aavegotchi ecosystem and can be used to purchase portals, wearables, and consumables.

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

608060405234801561001057600080fd5b50604051610c85380380610c858339818101604052602081101561003357600080fd5b8101908080519060200190929190505050806100543361006a60201b60201c565b610063816100ab60201b60201c565b50506100cf565b600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e6572000000000000008152506019019050604051809103902090508181555050565b60006040518080610c63602291396022019050604051809103902090508181555050565b610b85806100de6000396000f3fe6080604052600436106100595760003560e01c8063025313a21461010e578063025b22bc146101655780634555d5c9146101b65780635c60da1b146101e1578063d88ca2c814610238578063f1739cae14610313576100b6565b366100b6576100b4610069610364565b6000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610390565b005b61010c6100c1610364565b6000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610390565b005b34801561011a57600080fd5b506101236103ba565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017157600080fd5b506101b46004803603602081101561018857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506103c9565b005b3480156101c257600080fd5b506101cb6105df565b6040518082815260200191505060405180910390f35b3480156101ed57600080fd5b506101f66105e8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103116004803603604081101561024e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019064010000000081111561028b57600080fd5b82018360208201111561029d57600080fd5b803590602001918460018302840111640100000000831117156102bf57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506105f7565b005b34801561031f57600080fd5b506103626004803603602081101561033657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610813565b005b60008060006040518080610b2e6022913960220190506040518091039020905080549150819250505090565b600080825160208401856127105a03f43d604051816000823e82600081146103b6578282f35b8282fd5b60006103c4610a08565b905090565b3373ffffffffffffffffffffffffffffffffffffffff166103e8610a08565b73ffffffffffffffffffffffffffffffffffffffff1614610471576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610514576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f494e56414c49445f50524f58595f41444452455353000000000000000000000081525060200191505060405180910390fd5b61051d81610a51565b610572576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180610b096025913960400191505060405180910390fd5b61057a610364565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fd32d24edea94f55e932d9a008afc425a8561462d1b1f57bc6e508e9a6b9509e160405160405180910390a36105dc81610aa3565b50565b60006002905090565b60006105f2610364565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610616610a08565b73ffffffffffffffffffffffffffffffffffffffff161461069f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6106a8826103c9565b600060603073ffffffffffffffffffffffffffffffffffffffff1634846040518082805190602001908083835b602083106106f857805182526020820191506020810190506020830392506106d5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d806000811461075a576040519150601f19603f3d011682016040523d82523d6000602084013e61075f565b606091505b509150915081819061080c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156107d15780820151818401526020810190506107b6565b50505050905090810190601f1680156107fe5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5050505050565b3373ffffffffffffffffffffffffffffffffffffffff16610832610a08565b73ffffffffffffffffffffffffffffffffffffffff16146108bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561095e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f5a45524f5f41444452455353000000000000000000000000000000000000000081525060200191505060405180910390fd5b7fdbe5fd65bcdbae152f24ab660ea68e72b4d4705b57b16e0caae994e214680ee281610988610a08565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1610a0581610ac7565b50565b600080600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e65720000000000000081525060190190506040518091039020905080549150819250505090565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610a905760009050610a9e565b6000823b9050600081119150505b919050565b60006040518080610b2e602291396022019050604051809103902090508181555050565b600060405180807f6d617469632e6e6574776f726b2e70726f78792e6f776e657200000000000000815250601901905060405180910390209050818155505056fe44455354494e4154494f4e5f414444524553535f49535f4e4f545f415f434f4e54524143546d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6ea264697066735822122041ef759422fabf085e8197d08185f4d0cdb3a0ab3423629d2271c1c06c720f0664736f6c634300060600336d617469632e6e6574776f726b2e70726f78792e696d706c656d656e746174696f6e0000000000000000000000005004bc7e5b718c245ca859db349dd012cfd58395

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

0000000000000000000000005004bc7e5b718c245ca859db349dd012cfd58395

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

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000005004bc7e5b718c245ca859db349dd012cfd58395


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.