ETH Price: $1,854.01 (-13.53%)
 

Overview

ETH Balance

0.00109 ETH

Eth Value

$2.02 (@ $1,854.01/ETH)

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer171385762023-04-27 16:02:471015 days ago1682611367IN
0x402eb84d...3f4a16B54
0.00099 ETH0.0011072852.58989451
Transfer171385562023-04-27 15:58:471015 days ago1682611127IN
0x402eb84d...3f4a16B54
0.0001 ETH0.001038149.30448096
Transfer161058062022-12-03 17:34:231160 days ago1670088863IN
0x402eb84d...3f4a16B54
0 ETH0.0004712413.6732584
Approve160120872022-11-20 15:21:471173 days ago1668957707IN
0x402eb84d...3f4a16B54
0 ETH0.0007077713.81675622
Approve159976772022-11-18 15:04:231175 days ago1668783863IN
0x402eb84d...3f4a16B54
0 ETH0.0007270724.8641219
Transfer155649342022-09-19 3:37:471235 days ago1663558667IN
0x402eb84d...3f4a16B54
0 ETH0.000277358
Transfer150200942022-06-24 20:28:301322 days ago1656102510IN
0x402eb84d...3f4a16B54
0 ETH0.0024084942.56722641
Transfer149687462022-06-15 17:35:381331 days ago1655314538IN
0x402eb84d...3f4a16B54
0 ETH0.0040782772.0785473
Approve149633922022-06-14 19:20:281332 days ago1655234428IN
0x402eb84d...3f4a16B54
0 ETH0.0028882456.05414193
Transfer149570642022-06-13 16:56:221333 days ago1655139382IN
0x402eb84d...3f4a16B54
0 ETH0.0033088458.47976544
Transfer148977312022-06-03 14:54:261343 days ago1654268066IN
0x402eb84d...3f4a16B54
0 ETH0.0034967161.80011639
Transfer148875422022-06-01 23:03:261345 days ago1654124606IN
0x402eb84d...3f4a16B54
0 ETH0.003533962.45736305
Transfer148875362022-06-01 23:01:361345 days ago1654124496IN
0x402eb84d...3f4a16B54
0 ETH0.004031671.25377248
Approve147581692022-05-12 1:06:081365 days ago1652317568IN
0x402eb84d...3f4a16B54
0 ETH0.01115641217.83921718
Transfer147030272022-05-03 6:21:541374 days ago1651558914IN
0x402eb84d...3f4a16B54
0 ETH0.0027040452.4395388
Approve145261492022-04-05 13:19:471402 days ago1649164787IN
0x402eb84d...3f4a16B54
0 ETH0.0025679950.13065633
Approve145078522022-04-02 16:38:461405 days ago1648917526IN
0x402eb84d...3f4a16B54
0 ETH0.0026013950.79462401
Approve144710302022-03-27 22:55:021411 days ago1648421702IN
0x402eb84d...3f4a16B54
0 ETH0.0018874736.85468809
Approve144709632022-03-27 22:40:001411 days ago1648420800IN
0x402eb84d...3f4a16B54
0 ETH0.0034240466.84185147
Approve144083912022-03-18 5:01:561420 days ago1647579716IN
0x402eb84d...3f4a16B54
0 ETH0.0027493553.68360373
Approve143935422022-03-15 21:16:231423 days ago1647378983IN
0x402eb84d...3f4a16B54
0 ETH0.0021233841.45125451
Approve143930252022-03-15 19:24:261423 days ago1647372266IN
0x402eb84d...3f4a16B54
0 ETH0.0046365990.51254362
Approve143919072022-03-15 15:16:231423 days ago1647357383IN
0x402eb84d...3f4a16B54
0 ETH0.0033624665.63974628
Approve143725972022-03-12 14:58:341426 days ago1647097114IN
0x402eb84d...3f4a16B54
0 ETH0.0011867323.16673402
Approve143689392022-03-12 1:18:261426 days ago1647047906IN
0x402eb84d...3f4a16B54
0 ETH0.0015701130.6508075
View all transactions

Latest 3 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
-123772252021-05-05 23:25:361737 days ago1620257136
0x402eb84d...3f4a16B54
25 ETH
-123766852021-05-05 21:31:471737 days ago1620250307
0x402eb84d...3f4a16B54
0.395 ETH
-123760912021-05-05 19:21:531737 days ago1620242513  Contract Creation0 ETH
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CrowdfundProxy

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 2000 runs

Other Settings:
default evmVersion, GNU GPLv3 license
/**
 *Submitted for verification at Etherscan.io on 2021-05-05
*/

// SPDX-License-Identifier: GPL-3.0-or-later
pragma solidity 0.8.4;

// File contracts/CrowdfundStorage.sol

/**
 * @title CrowdfundProxy
 * @author MirrorXYZ
 */
contract CrowdfundStorage {
    // The two states that this contract can exist in. "FUNDING" allows
    // contributors to add funds.
    enum Status {FUNDING, TRADING}

    // ============ Constants ============

    // The factor by which ETH contributions will multiply into crowdfund tokens.
    uint16 internal constant TOKEN_SCALE = 1000;
    uint256 internal constant REENTRANCY_NOT_ENTERED = 1;
    uint256 internal constant REENTRANCY_ENTERED = 2;
    uint8 public constant decimals = 18;

    // ============ Immutable Storage ============

    // The operator has a special role to change contract status.
    address payable public operator;
    address payable public fundingRecipient;
    // We add a hard cap to prevent raising more funds than deemed reasonable.
    uint256 public fundingCap;
    // The operator takes some equity in the tokens, represented by this percent.
    uint256 public operatorPercent;
    string public symbol;
    string public name;

    // ============ Mutable Storage ============

    // Represents the current state of the campaign.
    Status public status;
    uint256 internal reentrancy_status;

    // ============ Mutable ERC20 Attributes ============

    uint256 public totalSupply;
    mapping(address => uint256) public balanceOf;
    mapping(address => mapping(address => uint256)) public allowance;
    mapping(address => uint256) public nonces;

    // ============ Delegation logic ============
    address public logic;
}


// File contracts/CrowdfundProxy.sol



interface ICrowdfundFactory {
    function mediaAddress() external returns (address);

    function logic() external returns (address);

    // ERC20 data.
    function parameters()
        external
        returns (
            address payable operator,
            address payable fundingRecipient,
            uint256 fundingCap,
            uint256 operatorPercent,
            string memory name,
            string memory symbol
        );
}

/**
 * @title CrowdfundProxy
 * @author MirrorXYZ
 */
contract CrowdfundProxy is CrowdfundStorage {
    constructor() {
        logic = ICrowdfundFactory(msg.sender).logic();
        // Crowdfund-specific data.
        (
            operator,
            fundingRecipient,
            fundingCap,
            operatorPercent,
            name,
            symbol
        ) = ICrowdfundFactory(msg.sender).parameters();
        // Initialize mutable storage.
        status = Status.FUNDING;
    }

    fallback() external payable {
        address _impl = logic;
        assembly {
            let ptr := mload(0x40)
            calldatacopy(ptr, 0, calldatasize())
            let result := delegatecall(gas(), _impl, ptr, calldatasize(), 0, 0)
            let size := returndatasize()
            returndatacopy(ptr, 0, size)

            switch result
                case 0 {
                    revert(ptr, size)
                }
                default {
                    return(ptr, size)
                }
        }
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fundingCap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fundingRecipient","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"logic","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"operator","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"operatorPercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"status","outputs":[{"internalType":"enum CrowdfundStorage.Status","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040523480156200001157600080fd5b50336001600160a01b031663d7dfa0dd6040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156200004e57600080fd5b505af115801562000063573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200008991906200031e565b600c60006101000a8154816001600160a01b0302191690836001600160a01b03160217905550336001600160a01b031663890357306040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620000eb57600080fd5b505af115801562000100573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200012a919081019062000344565b60008060016000600260006003600060056000600460008c91905090805190602001906200015a929190620001c5565b50508a516200016f919060208d0190620001c5565b5050989098559790975580546001600160a01b0398891661010098890a908102908a02199091161790558154978716950a94850294909502199095169290921790925550506006805460ff191690555062000455565b828054620001d390620003e9565b90600052602060002090601f016020900481019282620001f7576000855562000242565b82601f106200021257805160ff191683800117855562000242565b8280016001018555821562000242579182015b828111156200024257825182559160200191906001019062000225565b506200025092915062000254565b5090565b5b8082111562000250576000815560010162000255565b600082601f8301126200027c578081fd5b81516001600160401b038082111562000299576200029962000426565b604051601f8301601f19908116603f01168101908282118183101715620002c457620002c462000426565b81604052838152602092508683858801011115620002e0578485fd5b8491505b83821015620003035785820183015181830184015290820190620002e4565b838211156200031457848385830101525b9695505050505050565b60006020828403121562000330578081fd5b81516200033d816200043c565b9392505050565b60008060008060008060c087890312156200035d578182fd5b86516200036a816200043c565b60208801519096506200037d816200043c565b6040880151606089015160808a015192975090955093506001600160401b0380821115620003a9578384fd5b620003b78a838b016200026b565b935060a0890151915080821115620003cd578283fd5b50620003dc89828a016200026b565b9150509295509295509295565b600181811c90821680620003fe57607f821691505b602082108114156200042057634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b6001600160a01b03811681146200045257600080fd5b50565b61058d80620004656000396000f3fe6080604052600436106100d65760003560e01c806370a082311161007f57806395d89b411161005957806395d89b41146102aa578063d7dfa0dd146102bf578063dd62ed3e146102ec578063e3b2594f14610324576100dd565b806370a082311461023a5780637b4044a0146102675780637ecebe001461027d576100dd565b8063200d2ed2116100b0578063200d2ed2146101bf578063313ce567146101e6578063570ca7351461020d576100dd565b806306fdde031461011e57806318160ddd146101495780631bb534ba1461016d576100dd565b366100dd57005b600c5460405173ffffffffffffffffffffffffffffffffffffffff9091169036600082376000803683855af43d806000843e81801561011a578184f35b8184fd5b34801561012a57600080fd5b5061013361033a565b6040516101409190610492565b60405180910390f35b34801561015557600080fd5b5061015f60085481565b604051908152602001610140565b34801561017957600080fd5b5060015461019a9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610140565b3480156101cb57600080fd5b506006546101d99060ff1681565b6040516101409190610451565b3480156101f257600080fd5b506101fb601281565b60405160ff9091168152602001610140565b34801561021957600080fd5b5060005461019a9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561024657600080fd5b5061015f6102553660046103fe565b60096020526000908152604090205481565b34801561027357600080fd5b5061015f60035481565b34801561028957600080fd5b5061015f6102983660046103fe565b600b6020526000908152604090205481565b3480156102b657600080fd5b506101336103c8565b3480156102cb57600080fd5b50600c5461019a9073ffffffffffffffffffffffffffffffffffffffff1681565b3480156102f857600080fd5b5061015f61030736600461041f565b600a60209081526000928352604080842090915290825290205481565b34801561033057600080fd5b5061015f60025481565b6005805461034790610503565b80601f016020809104026020016040519081016040528092919081815260200182805461037390610503565b80156103c05780601f10610395576101008083540402835291602001916103c0565b820191906000526020600020905b8154815290600101906020018083116103a357829003601f168201915b505050505081565b6004805461034790610503565b803573ffffffffffffffffffffffffffffffffffffffff811681146103f957600080fd5b919050565b60006020828403121561040f578081fd5b610418826103d5565b9392505050565b60008060408385031215610431578081fd5b61043a836103d5565b9150610448602084016103d5565b90509250929050565b602081016002831061048c577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b91905290565b6000602080835283518082850152825b818110156104be578581018301518582016040015282016104a2565b818111156104cf5783604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b600181811c9082168061051757607f821691505b60208210811415610551577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b5091905056fea2646970667358221220d03f61a760b9c9e4e47cae11f7719edf7a4b3cb57db62866d2f23c905d44b02064736f6c63430008040033

Deployed Bytecode

0x6080604052600436106100d65760003560e01c806370a082311161007f57806395d89b411161005957806395d89b41146102aa578063d7dfa0dd146102bf578063dd62ed3e146102ec578063e3b2594f14610324576100dd565b806370a082311461023a5780637b4044a0146102675780637ecebe001461027d576100dd565b8063200d2ed2116100b0578063200d2ed2146101bf578063313ce567146101e6578063570ca7351461020d576100dd565b806306fdde031461011e57806318160ddd146101495780631bb534ba1461016d576100dd565b366100dd57005b600c5460405173ffffffffffffffffffffffffffffffffffffffff9091169036600082376000803683855af43d806000843e81801561011a578184f35b8184fd5b34801561012a57600080fd5b5061013361033a565b6040516101409190610492565b60405180910390f35b34801561015557600080fd5b5061015f60085481565b604051908152602001610140565b34801561017957600080fd5b5060015461019a9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610140565b3480156101cb57600080fd5b506006546101d99060ff1681565b6040516101409190610451565b3480156101f257600080fd5b506101fb601281565b60405160ff9091168152602001610140565b34801561021957600080fd5b5060005461019a9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561024657600080fd5b5061015f6102553660046103fe565b60096020526000908152604090205481565b34801561027357600080fd5b5061015f60035481565b34801561028957600080fd5b5061015f6102983660046103fe565b600b6020526000908152604090205481565b3480156102b657600080fd5b506101336103c8565b3480156102cb57600080fd5b50600c5461019a9073ffffffffffffffffffffffffffffffffffffffff1681565b3480156102f857600080fd5b5061015f61030736600461041f565b600a60209081526000928352604080842090915290825290205481565b34801561033057600080fd5b5061015f60025481565b6005805461034790610503565b80601f016020809104026020016040519081016040528092919081815260200182805461037390610503565b80156103c05780601f10610395576101008083540402835291602001916103c0565b820191906000526020600020905b8154815290600101906020018083116103a357829003601f168201915b505050505081565b6004805461034790610503565b803573ffffffffffffffffffffffffffffffffffffffff811681146103f957600080fd5b919050565b60006020828403121561040f578081fd5b610418826103d5565b9392505050565b60008060408385031215610431578081fd5b61043a836103d5565b9150610448602084016103d5565b90509250929050565b602081016002831061048c577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b91905290565b6000602080835283518082850152825b818110156104be578581018301518582016040015282016104a2565b818111156104cf5783604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b600181811c9082168061051757607f821691505b60208210811415610551577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b5091905056fea2646970667358221220d03f61a760b9c9e4e47cae11f7719edf7a4b3cb57db62866d2f23c905d44b02064736f6c63430008040033

Deployed Bytecode Sourcemap

2271:1052:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2790:5;;2847:4;2841:11;2790:5;;;;;2887:14;2774:13;2841:11;2866:36;2981:1;2978;2962:14;2957:3;2950:5;2943;2930:53;3009:16;3062:4;3059:1;3054:3;3039:28;3090:6;3114:66;;;;3241:4;3236:3;3229:17;3114:66;3156:4;3151:3;3144:17;1152:18;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1416:26;;;;;;;;;;;;;;;;;;;2380:25:1;;;2368:2;2353:18;1416:26:0;2335:76:1;847:39:0;;;;;;;;;;-1:-1:-1;847:39:0;;;;;;;;;;;867:42:1;855:55;;;837:74;;825:2;810:18;847:39:0;792:125:1;1285:20:0;;;;;;;;;;-1:-1:-1;1285:20:0;;;;;;;;;;;;;;;:::i;644:35::-;;;;;;;;;;;;677:2;644:35;;;;;2588:4:1;2576:17;;;2558:36;;2546:2;2531:18;644:35:0;2513:87:1;809:31:0;;;;;;;;;;-1:-1:-1;809:31:0;;;;;;;;1449:44;;;;;;;;;;-1:-1:-1;1449:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;1088:30;;;;;;;;;;;;;;;;1571:41;;;;;;;;;;-1:-1:-1;1571:41:0;;;;;:::i;:::-;;;;;;;;;;;;;;1125:20;;;;;;;;;;;;;:::i;1672:::-;;;;;;;;;;-1:-1:-1;1672:20:0;;;;;;;;1500:64;;;;;;;;;;-1:-1:-1;1500:64:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;973:25;;;;;;;;;;;;;;;;1152:18;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1125:20::-;;;;;;;:::i;14:196:1:-;82:20;;142:42;131:54;;121:65;;111:2;;200:1;197;190:12;111:2;63:147;;;:::o;215:196::-;274:6;327:2;315:9;306:7;302:23;298:32;295:2;;;348:6;340;333:22;295:2;376:29;395:9;376:29;:::i;:::-;366:39;285:126;-1:-1:-1;;;285:126:1:o;416:270::-;484:6;492;545:2;533:9;524:7;520:23;516:32;513:2;;;566:6;558;551:22;513:2;594:29;613:9;594:29;:::i;:::-;584:39;;642:38;676:2;665:9;661:18;642:38;:::i;:::-;632:48;;503:183;;;;;:::o;1169:393::-;1309:2;1294:18;;1342:1;1331:13;;1321:2;;1378:77;1375:1;1368:88;1479:4;1476:1;1469:15;1507:4;1504:1;1497:15;1321:2;1531:25;;;1276:286;:::o;1567:662::-;1679:4;1708:2;1737;1726:9;1719:21;1769:6;1763:13;1812:6;1807:2;1796:9;1792:18;1785:34;1837:4;1850:140;1864:6;1861:1;1858:13;1850:140;;;1959:14;;;1955:23;;1949:30;1925:17;;;1944:2;1921:26;1914:66;1879:10;;1850:140;;;2008:6;2005:1;2002:13;1999:2;;;2078:4;2073:2;2064:6;2053:9;2049:22;2045:31;2038:45;1999:2;-1:-1:-1;2145:2:1;2133:15;2150:66;2129:88;2114:104;;;;2220:2;2110:113;;1688:541;-1:-1:-1;;;1688:541:1:o;2605:437::-;2684:1;2680:12;;;;2727;;;2748:2;;2802:4;2794:6;2790:17;2780:27;;2748:2;2855;2847:6;2844:14;2824:18;2821:38;2818:2;;;2892:77;2889:1;2882:88;2993:4;2990:1;2983:15;3021:4;3018:1;3011:15;2818:2;;2660:382;;;:::o

Swarm Source

ipfs://d03f61a760b9c9e4e47cae11f7719edf7a4b3cb57db62866d2f23c905d44b020

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.