ETH Price: $3,339.62 (-2.51%)

Token

HEART Token (HEART)
 

Overview

Max Total Supply

10,000,000 HEART

Holders

2,330

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
150 HEART

Value
$0.00
0xe7906af421Faf5e8FA3336c54898e3de7A20663F
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Created by visual artist Stefan Meier and photographer and director Aidan Cullen in September 2021, the Heart Project is a community-run creative studio designed to cultivate and democratize artistic collaboration.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
BeaconProxy

Compiler Version
v0.8.13+commit.abaa5c0e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

File 1 of 3: BeaconProxy.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "IBeacon.sol";
import "Proxy.sol";

/// @custom:security-contact [email protected]
contract BeaconProxy is Proxy {
    IBeacon private immutable _beacon;

    event BeaconUpgraded(IBeacon indexed beacon);

    constructor(IBeacon beacon)
    {
        _beacon = beacon;
        emit BeaconUpgraded(beacon);
    }

    function _implementation()
        internal
        view
        override
        returns (address)
    {
        return _beacon.implementation();
    }
}

File 2 of 3: IBeacon.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (proxy/beacon/IBeacon.sol)

pragma solidity ^0.8.0;

/**
 * @dev This is the interface that {BeaconProxy} expects of its beacon.
 */
interface IBeacon {
    /**
     * @dev Must return an address that can be used as a delegate call target.
     *
     * {BeaconProxy} will check that this address is a contract.
     */
    function implementation() external view returns (address);
}

File 3 of 3: Proxy.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.5.0) (proxy/Proxy.sol)

pragma solidity ^0.8.0;

/**
 * @dev This abstract contract provides a fallback function that delegates all calls to another contract using the EVM
 * instruction `delegatecall`. We refer to the second contract as the _implementation_ behind the proxy, and it has to
 * be specified by overriding the virtual {_implementation} function.
 *
 * Additionally, delegation to the implementation can be triggered manually through the {_fallback} function, or to a
 * different contract through the {_delegate} function.
 *
 * The success and return data of the delegated call will be returned back to the caller of the proxy.
 */
abstract contract Proxy {
    /**
     * @dev Delegates the current call to `implementation`.
     *
     * This function does not return to its internal call site, it will return directly to the external caller.
     */
    function _delegate(address implementation) internal virtual {
        assembly {
            // Copy msg.data. We take full control of memory in this inline assembly
            // block because it will not return to Solidity code. We overwrite the
            // Solidity scratch pad at memory position 0.
            calldatacopy(0, 0, calldatasize())

            // Call the implementation.
            // out and outsize are 0 because we don't know the size yet.
            let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)

            // Copy the returned data.
            returndatacopy(0, 0, returndatasize())

            switch result
            // delegatecall returns 0 on error.
            case 0 {
                revert(0, returndatasize())
            }
            default {
                return(0, returndatasize())
            }
        }
    }

    /**
     * @dev This is a virtual function that should be overriden so it returns the address to which the fallback function
     * and {_fallback} should delegate.
     */
    function _implementation() internal view virtual returns (address);

    /**
     * @dev Delegates the current call to the address returned by `_implementation()`.
     *
     * This function does not return to its internall call site, it will return directly to the external caller.
     */
    function _fallback() internal virtual {
        _beforeFallback();
        _delegate(_implementation());
    }

    /**
     * @dev Fallback function that delegates calls to the address returned by `_implementation()`. Will run if no other
     * function in the contract matches the call data.
     */
    fallback() external payable virtual {
        _fallback();
    }

    /**
     * @dev Fallback function that delegates calls to the address returned by `_implementation()`. Will run if call data
     * is empty.
     */
    receive() external payable virtual {
        _fallback();
    }

    /**
     * @dev Hook that is called before falling back to the implementation. Can happen as part of a manual `_fallback`
     * call, or as part of the Solidity `fallback` or `receive` functions.
     *
     * If overriden should call `super._beforeFallback()`.
     */
    function _beforeFallback() internal virtual {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"contract IBeacon","name":"beacon","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"contract IBeacon","name":"beacon","type":"address"}],"name":"BeaconUpgraded","type":"event"},{"stateMutability":"payable","type":"fallback"},{"stateMutability":"payable","type":"receive"}]

60a060405234801561001057600080fd5b506040516101e53803806101e583398101604081905261002f9161006d565b6001600160a01b03811660808190526040517f1cf3b03a6cf19fa2baba4df148e9dcabedea7f8a5c07840e207e5c089be95d3e90600090a25061009d565b60006020828403121561007f57600080fd5b81516001600160a01b038116811461009657600080fd5b9392505050565b60805161012e6100b760003960006025015261012e6000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b60a7565b565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c60da1b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156080573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019060a2919060ca565b905090565b3660008037600080366000845af43d6000803e80801560c5573d6000f35b3d6000fd5b60006020828403121560db57600080fd5b81516001600160a01b038116811460f157600080fd5b939250505056fea26469706673582212203a4dbcbf605f16658c46966ee07264c12645db37ed83e6355e8faf932b92c30b64736f6c634300080d003300000000000000000000000023b0c2381075df4002bc6d3b9baf52ab0acb1e9b

Deployed Bytecode

0x608060405236601057600e6013565b005b600e5b601f601b6021565b60a7565b565b60007f00000000000000000000000023b0c2381075df4002bc6d3b9baf52ab0acb1e9b6001600160a01b0316635c60da1b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156080573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019060a2919060ca565b905090565b3660008037600080366000845af43d6000803e80801560c5573d6000f35b3d6000fd5b60006020828403121560db57600080fd5b81516001600160a01b038116811460f157600080fd5b939250505056fea26469706673582212203a4dbcbf605f16658c46966ee07264c12645db37ed83e6355e8faf932b92c30b64736f6c634300080d0033

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

00000000000000000000000023b0c2381075df4002bc6d3b9baf52ab0acb1e9b

-----Decoded View---------------
Arg [0] : beacon (address): 0x23b0C2381075dF4002BC6D3B9baF52Ab0ACB1E9B

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000023b0c2381075df4002bc6d3b9baf52ab0acb1e9b


Deployed Bytecode Sourcemap

148:389:0:-:0;;;;;;2898:11:2;:9;:11::i;:::-;148:389:0;;2675:11:2;2322:110;2397:28;2407:17;:15;:17::i;:::-;2397:9;:28::i;:::-;2322:110::o;383:152:0:-;474:7;504;-1:-1:-1;;;;;504:22:0;;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;497:31;;383:152;:::o;948:895:2:-;1286:14;1283:1;1280;1267:34;1500:1;1497;1481:14;1478:1;1462:14;1455:5;1442:60;1576:16;1573:1;1570;1555:38;1614:6;1681:66;;;;1796:16;1793:1;1786:27;1681:66;1716:16;1713:1;1706:27;14:290:3;84:6;137:2;125:9;116:7;112:23;108:32;105:52;;;153:1;150;143:12;105:52;179:16;;-1:-1:-1;;;;;224:31:3;;214:42;;204:70;;270:1;267;260:12;204:70;293:5;14:290;-1:-1:-1;;;14:290:3:o

Swarm Source

ipfs://3a4dbcbf605f16658c46966ee07264c12645db37ed83e6355e8faf932b92c30b
Loading...
Loading
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.