Contract 0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB 7

 
Ad
Crypto.com
Txn Hash Method
Block
From
To
Value
0xf90e69fb8a22b952ce3eb23972fec60c6f2926063f540c62c5a5345b55de9820Enter Bid For Pu...(pending)2021-09-26 23:54:572 hrs 5 mins ago0x35b8d2c0f7552ce2ed94b2c51604d0a5d486327f IN CryptoPunks: Ͼ Token0.0001 Ether(Pending)(Pending)
0xab1409503302571ea129ef4bb4da0b0e2dd771ab5f77607fb54f79caf9ca6d55Enter Bid For Pu...(pending)2021-09-26 21:37:194 hrs 23 mins ago0x4014d002b839a38f727604e4298b136e7424729b IN CryptoPunks: Ͼ Token0 Ether(Pending)(Pending)
0xe82678c6b954ba90d429a6171180f588de901e2e56e6b074adefed14494ff68eEnter Bid For Pu...(pending)2021-09-26 21:30:474 hrs 29 mins ago0x4014d002b839a38f727604e4298b136e7424729b IN CryptoPunks: Ͼ Token0 Ether(Pending)(Pending)
0x9cf308ae091b373f1497d5c34435c8754fbdfc9804393505a0a24a0c55750060Withdraw Bid For...(pending)2021-09-26 10:13:2015 hrs 47 mins ago0x29f2435aa9312f1217ca153d0823fa6ef12a0b5b IN CryptoPunks: Ͼ Token0 Ether(Pending)(Pending)
0x78c267e202748168538cf2e8d58b66f819a666759da87cb8f0b0ad5b263e30e6Enter Bid For Pu...(pending)2021-09-26 5:22:3220 hrs 37 mins ago0x395179ca6fbfaa8d1abcc1f98028a6d9172664f2 IN CryptoPunks: Ͼ Token0.003 Ether(Pending)(Pending)
0x6dc708db4459e2f5d29b94ae78c3d8924c3b26a819e1665b8915e7d4bb76126eWithdraw(pending)2021-09-26 3:28:5222 hrs 31 mins ago0xaf6bd1b086ed940fac77c9b18783636db88d18d4 IN CryptoPunks: Ͼ Token0 Ether(Pending)(Pending)
0x9232b475d679e99ed54d6b74e00d0e9443c647abc1bc882e0e453a2128999808Enter Bid For Pu...(pending)2021-09-26 3:23:3922 hrs 36 mins ago0xf4864b38feddf87e5fa5bd0493f90e5162d6532f IN CryptoPunks: Ͼ Token0.002 Ether(Pending)(Pending)
0xf36c147b7b35020d8f88106af947f1c0c1766843645e072074d84d91334c30b6Buy Punk(pending)2021-09-26 2:26:2623 hrs 34 mins ago0xba87d04160f474534e89a7da9c19f17ac63e05f7 IN CryptoPunks: Ͼ Token0 Ether(Pending)(Pending)
0x57136dac8684ce425a96f988dd50f304096c9cbb6f2a02eca0d1781f3ef62534Enter Bid For Pu...(pending)2021-09-26 2:23:5023 hrs 36 mins ago0x364f594011c19d6c5eed98ab09baf697fd34cef1 IN CryptoPunks: Ͼ Token0.002 Ether(Pending)(Pending)
0xb2c92132048a0611c8f5cf0198ba7a25ebe18e7d305e50e6bed9ae39ca5789e2Enter Bid For Pu...(pending)2021-09-26 2:15:2423 hrs 45 mins ago0xc8479d7e080bdaf5d77138f0ca4edc3854577d3c IN CryptoPunks: Ͼ Token0.0006 Ether(Pending)(Pending)
0x7fa9623e9fb12157a94cd941fc40148c2a06890d1527980992ca26e1d684617fEnter Bid For Pu...(pending)2021-09-26 2:14:5923 hrs 45 mins ago0x1bb57822e332a10c606ef07fba5029cdda98b2c4 IN CryptoPunks: Ͼ Token0.01 Ether(Pending)(Pending)
0xc379b0011b62019e0ae79d8a2995c98c6b548598040c053bc61290fc83dff6a1Enter Bid For Pu...(pending)2021-09-26 2:04:5823 hrs 55 mins ago0xff57703e3fd5837ab54c9d3262d3551c5726ab11 IN CryptoPunks: Ͼ Token0.01 Ether(Pending)(Pending)
0x0d59bac16894bbc9dc7b2cfd11507d76366bef294e58bc0b250df0f1d9e679bbOffer Punk For S...(pending)2021-09-26 1:56:491 day 3 mins ago0x488e98bb77a67d51f585e7da439c15ffa87cd6a4 IN CryptoPunks: Ͼ Token0 Ether(Pending)(Pending)
0x4a21c1daccdd66b5acb9f52d557f762f76c4cb1eacaa3c1a3688719e05b024e8Enter Bid For Pu...(pending)2021-09-26 1:56:261 day 4 mins ago0xc875c10f5975d85890d45cc3a4f27a947b3d8d27 IN CryptoPunks: Ͼ Token0.01 Ether(Pending)(Pending)
0x8df769e8f72982a358279f79fa344f07d4e7cebd65c270023f7897cc9e86a5a2Withdraw Bid For...(pending)2021-09-19 2:30:207 days 23 hrs ago0xf390b1f992ef56a670ef8cddbee251b7acfc9d6b IN CryptoPunks: Ͼ Token0 Ether(Pending)(Pending)
0x2e2ccd31cbc7b4c21c42def4c259689dae3512a17b36d829803552bcf29ed99cEnter Bid For Pu...133050642021-09-27 1:56:313 mins ago0x2b6d8a60a1725ad449f5346973ade0d29d188419 IN  CryptoPunks: Ͼ Token110 Ether0.0071854 74
0xd335ebefbdb4c00c1c2536f194da0e9a81ba59e3041d48990d860f759255374cOffer Punk For S...133050312021-09-27 1:46:5813 mins agoENS Name sartoshi.eth IN  CryptoPunks: Ͼ Token0 Ether0.002814636 66
0x1bc521e10d72fb8e9f27b865c06fdd40dec612d90664e5f437103ce37725d342Offer Punk For S...133050052021-09-27 1:40:0620 mins agoENS Name sartoshi.eth IN  CryptoPunks: Ͼ Token0 Ether0.00255876 60
0x56b472c7bd9dd4bfbac6e14d63abf6c12ca219542eea044fbb9c39d65a3cc2c5Withdraw Bid For...133049592021-09-27 1:27:1133 mins ago0x19fd95ca684085e4ed248f6b96dff65b86df4859 IN  CryptoPunks: Ͼ Token0 Ether0.00234498 55
0x8dcb732a58012f7f57da90e25a0ceb7da3823f12a34e6ce5dec195c5307e4b4eWithdraw Bid For...133049572021-09-27 1:26:3333 mins ago0x19fd95ca684085e4ed248f6b96dff65b86df4859 IN  CryptoPunks: Ͼ Token0 Ether0.00158125 55
0xcfd1eea67e801e39dc038bf9eebe7475138cce5b6ac7d18c4213a4e97fd7656eWithdraw Bid For...133049542021-09-27 1:26:2534 mins ago0x19fd95ca684085e4ed248f6b96dff65b86df4859 IN  CryptoPunks: Ͼ Token0 Ether0.00234498 55
0x39176034bab5e443213f45f310618d439307a4c245081581bc6ff5337fdb1575Enter Bid For Pu...133049462021-09-27 1:24:4935 mins ago0x65b1b96bd01926d3d60dd3c8bc452f22819443a9 IN  CryptoPunks: Ͼ Token111.11 Ether0.005923161
0x45f8d9a59a4209bdd0e8946ab95456f1194c8ed756140a268d84436515cedcb1Offer Punk For S...133049092021-09-27 1:18:3941 mins ago0x91338ccfb8c0adb7756034a82008531d7713009d IN  CryptoPunks: Ͼ Token0 Ether0.002430822 57
0x2b4be908bbd24b5c2bd1c5f56e1a9a8746b1623fc21c52f7d2fbcad65feafcf9Enter Bid For Pu...133048972021-09-27 1:16:0044 mins ago0x19fd95ca684085e4ed248f6b96dff65b86df4859 IN  CryptoPunks: Ͼ Token0.5 Ether0.0057289 59
0xcb566aa4f737b1a330910cba64331d2f48e896d6339da32bc5e78033e1a34997Enter Bid For Pu...133048892021-09-27 1:15:0245 mins ago0x19fd95ca684085e4ed248f6b96dff65b86df4859 IN  CryptoPunks: Ͼ Token0.5 Ether0.006903 59
[ Download CSV Export 

OVERVIEW

10,000 unique collectible characters with proof of ownership stored on the Ethereum blockchain.

Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x56b472c7bd9dd4bfbac6e14d63abf6c12ca219542eea044fbb9c39d65a3cc2c5133049592021-09-27 1:27:1133 mins ago CryptoPunks: Ͼ Token0x19fd95ca684085e4ed248f6b96dff65b86df48590.5 Ether
0xcfd1eea67e801e39dc038bf9eebe7475138cce5b6ac7d18c4213a4e97fd7656e133049542021-09-27 1:26:2534 mins ago CryptoPunks: Ͼ Token0x19fd95ca684085e4ed248f6b96dff65b86df48590.5 Ether
0x349bd04410dee995ea4984fee4f4d1684148f9c3d76cad6d02eee0cfc4561b24133047722021-09-27 0:52:161 hr 8 mins ago CryptoPunks: Ͼ Token0x6d6a443ed637a23b0fc3a0e55a07e785a6b0caa8135 Ether
0x551b312eedb3c5d6047076c1431b6016e767d45af24cee991f477c612b825ee4133046292021-09-27 0:23:231 hr 37 mins ago CryptoPunks: Ͼ Token0xea2606df39ba3d8cd117c534fc4bc459e316194a115 Ether
0xe532a6b7df4783d006f0ad51f3a9da0b6fccba8f06f2bbc7b28221ce035ea6a7133042162021-09-26 22:52:393 hrs 7 mins ago CryptoPunks: Ͼ Token0x9626d135162685447f1c7ce58e8fd5ac4889620a110 Ether
0x95ee25fdef8a1f3caae31951ae5fa9578911ae3ea27ee58f5716e16a0fed8c49133041992021-09-26 22:48:093 hrs 12 mins ago CryptoPunks: Ͼ Token0xf9ff236d8311c2e96e80c0261453748f54d266e5130 Ether
0x5c8e1f0110879096da4a95ca332b5e24c149f79329f74fc071382c5bc1ceadda133041962021-09-26 22:47:363 hrs 12 mins ago CryptoPunks: Ͼ Token0xa94181f3fbc5dc4c74f550b568318227d8a454a0225 Ether
0x83b14505a88ef24e09d1b12d882c9d39de22efe8c16483b3d003949c6f747fc3133041882021-09-26 22:45:293 hrs 15 mins ago CryptoPunks: Ͼ Token0xe9572718a87a434b4f556bf9be2cf740d29a8b4b114 Ether
0x140b2dcaf94dbd990b69b252383c1dc6f20096861c5f2fdbf6cd8d605069647e133039512021-09-26 21:52:354 hrs 7 mins ago CryptoPunks: Ͼ Token0x6a8b990801dade9077acb0ea8948d023c72d7060107 Ether
0xca5627caf9004830f544ec726ce6913634022b49919d20af54757e433b3389a1133038912021-09-26 21:40:114 hrs 20 mins ago CryptoPunks: Ͼ Token0xc77fa6c05b4e472feee7c0f9b20e70c5bf33a99b101 Ether
0x1e56a0e28f6fd14e74e3d35c59c22ec0fa230fec4a28d9e9ddddd24d598f59a0133038122021-09-26 21:23:314 hrs 36 mins ago CryptoPunks: Ͼ Token0x05c6df5d4cc1158629ffef15d67e34eee73a77b2108 Ether
0x3364ea49da81ba885e009e3809f68d4cc1ea96f084bb5f3a94d91119538a04ce133038012021-09-26 21:21:224 hrs 39 mins ago CryptoPunks: Ͼ Token0xfc48426da0338735945badef273736ccff53a358103 Ether
0x3cda9b3be9efa7935be082d25cb2f1a34ee3101d40106d6efa1b6713b52cfe9c133036042021-09-26 20:34:335 hrs 25 mins ago CryptoPunks: Ͼ Token0x91338ccfb8c0adb7756034a82008531d7713009d102 Ether
0xacb15880da47055f86649c67bfd1a11d0caac5c1e25a3bfdb0cc0da51a7650b0133035752021-09-26 20:27:545 hrs 32 mins ago CryptoPunks: Ͼ Token0xc830eb280887eb0618b74e5759f9c49fefb3e98e111 Ether
0xfa5c389813ca5eb0a576895c99e2e12f4fb947a684a5f631ff9075ccd663541f133035682021-09-26 20:26:305 hrs 33 mins ago CryptoPunks: Ͼ TokenENS Name whitetusker.eth119 Ether
0xb7e39e6b8764ce31a9e67598668191e5fbe3195fdbd11e3f57eaf04581d89b2c133033452021-09-26 19:36:436 hrs 23 mins ago CryptoPunks: Ͼ Token0x2c346187c6eda97b16adf40edeada56ef9c9ad9f0.06 Ether
0x2a31a0690af59776d776381fe1f44a5f9b2c36eb8cf0c9975ff47e4abf1b8ed6133030772021-09-26 18:33:447 hrs 26 mins ago CryptoPunks: Ͼ Token0xa5493656b559ac046a302e8efa7c64d5ad4c9302110 Ether
0xa8caed681f4da5ba8379c65347674935484574f82f6b15222649a4e1249bbd6f133030052021-09-26 18:20:367 hrs 39 mins ago CryptoPunks: Ͼ Token0x327788f46b5bd167676e0cc15180af017296278d114.76 Ether
0x1f66e55366bb7758616694224bb5d215f5809680e11374d783d4b8e9882783a6133029932021-09-26 18:18:387 hrs 41 mins ago CryptoPunks: Ͼ Token0x91338ccfb8c0adb7756034a82008531d7713009d100 Ether
0xf5b6c7f1eae7a673fcec0926451c58a34e025c874205498562b9d11acc61a3ad133027412021-09-26 17:27:568 hrs 32 mins ago CryptoPunks: Ͼ Token0xef1a58c1b01cd6d22356bbecb681174981657ffb105.69 Ether
0xf07f4016eaf7719e10f3633bd44029dd297c360db456783e3307332eccacce2c133027362021-09-26 17:26:428 hrs 33 mins ago CryptoPunks: Ͼ Token0x965177425d86acb79eb77bf4afe9cb214e9fd034115.69 Ether
0x9f9fdedc5de0995de8967b8f3bf24ef09686cf3e9b3801ab60d80f6c32811fdf133027052021-09-26 17:18:338 hrs 41 mins ago CryptoPunks: Ͼ Token0x8584dcb28d318a30c37b1b1bfab566858147e7d9125 Ether
0x71bc9d53ba0b42071ba86130f85df7f1b5a62dc1a4562a3a9744b2ab5af591e8133024312021-09-26 16:19:269 hrs 41 mins ago CryptoPunks: Ͼ Token0x904e43d32b86475952ae8fb3c0c3bc09221e4987108 Ether
0x31a1e29c361ae2818fa5fa0d285bd53fb7a6c5935200970089a12b31ed5ec07f133020812021-09-26 15:06:3610 hrs 53 mins ago CryptoPunks: Ͼ Token0x904e43d32b86475952ae8fb3c0c3bc09221e4987115 Ether
0xb1a03d4eb2319d84ff3e7248f61e7fbc0117b349a3739351d8c0779760a6fcbe133016262021-09-26 13:27:4412 hrs 32 mins ago CryptoPunks: Ͼ Token0xa47b31690eca4badb02ca78b2f90a04ab1f7e9f6105 Ether
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CryptoPunksMarket

Compiler Version
v0.4.11+commit.68ef5810

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Audited
/**
 *Submitted for verification at Etherscan.io on 2017-07-19
*/

pragma solidity ^0.4.8;
contract CryptoPunksMarket {

    // You can use this hash to verify the image file containing all the punks
    string public imageHash = "ac39af4793119ee46bbff351d8cb6b5f23da60222126add4268e261199a2921b";

    address owner;

    string public standard = 'CryptoPunks';
    string public name;
    string public symbol;
    uint8 public decimals;
    uint256 public totalSupply;

    uint public nextPunkIndexToAssign = 0;

    bool public allPunksAssigned = false;
    uint public punksRemainingToAssign = 0;

    //mapping (address => uint) public addressToPunkIndex;
    mapping (uint => address) public punkIndexToAddress;

    /* This creates an array with all balances */
    mapping (address => uint256) public balanceOf;

    struct Offer {
        bool isForSale;
        uint punkIndex;
        address seller;
        uint minValue;          // in ether
        address onlySellTo;     // specify to sell only to a specific person
    }

    struct Bid {
        bool hasBid;
        uint punkIndex;
        address bidder;
        uint value;
    }

    // A record of punks that are offered for sale at a specific minimum value, and perhaps to a specific person
    mapping (uint => Offer) public punksOfferedForSale;

    // A record of the highest punk bid
    mapping (uint => Bid) public punkBids;

    mapping (address => uint) public pendingWithdrawals;

    event Assign(address indexed to, uint256 punkIndex);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event PunkTransfer(address indexed from, address indexed to, uint256 punkIndex);
    event PunkOffered(uint indexed punkIndex, uint minValue, address indexed toAddress);
    event PunkBidEntered(uint indexed punkIndex, uint value, address indexed fromAddress);
    event PunkBidWithdrawn(uint indexed punkIndex, uint value, address indexed fromAddress);
    event PunkBought(uint indexed punkIndex, uint value, address indexed fromAddress, address indexed toAddress);
    event PunkNoLongerForSale(uint indexed punkIndex);

    /* Initializes contract with initial supply tokens to the creator of the contract */
    function CryptoPunksMarket() payable {
        //        balanceOf[msg.sender] = initialSupply;              // Give the creator all initial tokens
        owner = msg.sender;
        totalSupply = 10000;                        // Update total supply
        punksRemainingToAssign = totalSupply;
        name = "CRYPTOPUNKS";                                   // Set the name for display purposes
        symbol = "Ͼ";                               // Set the symbol for display purposes
        decimals = 0;                                       // Amount of decimals for display purposes
    }

    function setInitialOwner(address to, uint punkIndex) {
        if (msg.sender != owner) throw;
        if (allPunksAssigned) throw;
        if (punkIndex >= 10000) throw;
        if (punkIndexToAddress[punkIndex] != to) {
            if (punkIndexToAddress[punkIndex] != 0x0) {
                balanceOf[punkIndexToAddress[punkIndex]]--;
            } else {
                punksRemainingToAssign--;
            }
            punkIndexToAddress[punkIndex] = to;
            balanceOf[to]++;
            Assign(to, punkIndex);
        }
    }

    function setInitialOwners(address[] addresses, uint[] indices) {
        if (msg.sender != owner) throw;
        uint n = addresses.length;
        for (uint i = 0; i < n; i++) {
            setInitialOwner(addresses[i], indices[i]);
        }
    }

    function allInitialOwnersAssigned() {
        if (msg.sender != owner) throw;
        allPunksAssigned = true;
    }

    function getPunk(uint punkIndex) {
        if (!allPunksAssigned) throw;
        if (punksRemainingToAssign == 0) throw;
        if (punkIndexToAddress[punkIndex] != 0x0) throw;
        if (punkIndex >= 10000) throw;
        punkIndexToAddress[punkIndex] = msg.sender;
        balanceOf[msg.sender]++;
        punksRemainingToAssign--;
        Assign(msg.sender, punkIndex);
    }

    // Transfer ownership of a punk to another user without requiring payment
    function transferPunk(address to, uint punkIndex) {
        if (!allPunksAssigned) throw;
        if (punkIndexToAddress[punkIndex] != msg.sender) throw;
        if (punkIndex >= 10000) throw;
        if (punksOfferedForSale[punkIndex].isForSale) {
            punkNoLongerForSale(punkIndex);
        }
        punkIndexToAddress[punkIndex] = to;
        balanceOf[msg.sender]--;
        balanceOf[to]++;
        Transfer(msg.sender, to, 1);
        PunkTransfer(msg.sender, to, punkIndex);
        // Check for the case where there is a bid from the new owner and refund it.
        // Any other bid can stay in place.
        Bid bid = punkBids[punkIndex];
        if (bid.bidder == to) {
            // Kill bid and refund value
            pendingWithdrawals[to] += bid.value;
            punkBids[punkIndex] = Bid(false, punkIndex, 0x0, 0);
        }
    }

    function punkNoLongerForSale(uint punkIndex) {
        if (!allPunksAssigned) throw;
        if (punkIndexToAddress[punkIndex] != msg.sender) throw;
        if (punkIndex >= 10000) throw;
        punksOfferedForSale[punkIndex] = Offer(false, punkIndex, msg.sender, 0, 0x0);
        PunkNoLongerForSale(punkIndex);
    }

    function offerPunkForSale(uint punkIndex, uint minSalePriceInWei) {
        if (!allPunksAssigned) throw;
        if (punkIndexToAddress[punkIndex] != msg.sender) throw;
        if (punkIndex >= 10000) throw;
        punksOfferedForSale[punkIndex] = Offer(true, punkIndex, msg.sender, minSalePriceInWei, 0x0);
        PunkOffered(punkIndex, minSalePriceInWei, 0x0);
    }

    function offerPunkForSaleToAddress(uint punkIndex, uint minSalePriceInWei, address toAddress) {
        if (!allPunksAssigned) throw;
        if (punkIndexToAddress[punkIndex] != msg.sender) throw;
        if (punkIndex >= 10000) throw;
        punksOfferedForSale[punkIndex] = Offer(true, punkIndex, msg.sender, minSalePriceInWei, toAddress);
        PunkOffered(punkIndex, minSalePriceInWei, toAddress);
    }

    function buyPunk(uint punkIndex) payable {
        if (!allPunksAssigned) throw;
        Offer offer = punksOfferedForSale[punkIndex];
        if (punkIndex >= 10000) throw;
        if (!offer.isForSale) throw;                // punk not actually for sale
        if (offer.onlySellTo != 0x0 && offer.onlySellTo != msg.sender) throw;  // punk not supposed to be sold to this user
        if (msg.value < offer.minValue) throw;      // Didn't send enough ETH
        if (offer.seller != punkIndexToAddress[punkIndex]) throw; // Seller no longer owner of punk

        address seller = offer.seller;

        punkIndexToAddress[punkIndex] = msg.sender;
        balanceOf[seller]--;
        balanceOf[msg.sender]++;
        Transfer(seller, msg.sender, 1);

        punkNoLongerForSale(punkIndex);
        pendingWithdrawals[seller] += msg.value;
        PunkBought(punkIndex, msg.value, seller, msg.sender);

        // Check for the case where there is a bid from the new owner and refund it.
        // Any other bid can stay in place.
        Bid bid = punkBids[punkIndex];
        if (bid.bidder == msg.sender) {
            // Kill bid and refund value
            pendingWithdrawals[msg.sender] += bid.value;
            punkBids[punkIndex] = Bid(false, punkIndex, 0x0, 0);
        }
    }

    function withdraw() {
        if (!allPunksAssigned) throw;
        uint amount = pendingWithdrawals[msg.sender];
        // Remember to zero the pending refund before
        // sending to prevent re-entrancy attacks
        pendingWithdrawals[msg.sender] = 0;
        msg.sender.transfer(amount);
    }

    function enterBidForPunk(uint punkIndex) payable {
        if (punkIndex >= 10000) throw;
        if (!allPunksAssigned) throw;                
        if (punkIndexToAddress[punkIndex] == 0x0) throw;
        if (punkIndexToAddress[punkIndex] == msg.sender) throw;
        if (msg.value == 0) throw;
        Bid existing = punkBids[punkIndex];
        if (msg.value <= existing.value) throw;
        if (existing.value > 0) {
            // Refund the failing bid
            pendingWithdrawals[existing.bidder] += existing.value;
        }
        punkBids[punkIndex] = Bid(true, punkIndex, msg.sender, msg.value);
        PunkBidEntered(punkIndex, msg.value, msg.sender);
    }

    function acceptBidForPunk(uint punkIndex, uint minPrice) {
        if (punkIndex >= 10000) throw;
        if (!allPunksAssigned) throw;                
        if (punkIndexToAddress[punkIndex] != msg.sender) throw;
        address seller = msg.sender;
        Bid bid = punkBids[punkIndex];
        if (bid.value == 0) throw;
        if (bid.value < minPrice) throw;

        punkIndexToAddress[punkIndex] = bid.bidder;
        balanceOf[seller]--;
        balanceOf[bid.bidder]++;
        Transfer(seller, bid.bidder, 1);

        punksOfferedForSale[punkIndex] = Offer(false, punkIndex, bid.bidder, 0, 0x0);
        uint amount = bid.value;
        punkBids[punkIndex] = Bid(false, punkIndex, 0x0, 0);
        pendingWithdrawals[seller] += amount;
        PunkBought(punkIndex, bid.value, seller, bid.bidder);
    }

    function withdrawBidForPunk(uint punkIndex) {
        if (punkIndex >= 10000) throw;
        if (!allPunksAssigned) throw;                
        if (punkIndexToAddress[punkIndex] == 0x0) throw;
        if (punkIndexToAddress[punkIndex] == msg.sender) throw;
        Bid bid = punkBids[punkIndex];
        if (bid.bidder != msg.sender) throw;
        PunkBidWithdrawn(punkIndex, bid.value, msg.sender);
        uint amount = bid.value;
        punkBids[punkIndex] = Bid(false, punkIndex, 0x0, 0);
        // Refund the bid money
        msg.sender.transfer(amount);
    }

}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"punksOfferedForSale","outputs":[{"name":"isForSale","type":"bool"},{"name":"punkIndex","type":"uint256"},{"name":"seller","type":"address"},{"name":"minValue","type":"uint256"},{"name":"onlySellTo","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"punkIndex","type":"uint256"}],"name":"enterBidForPunk","outputs":[],"payable":true,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"punkIndex","type":"uint256"},{"name":"minPrice","type":"uint256"}],"name":"acceptBidForPunk","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"addresses","type":"address[]"},{"name":"indices","type":"uint256[]"}],"name":"setInitialOwners","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"withdraw","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"imageHash","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"nextPunkIndexToAssign","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"punkIndexToAddress","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"standard","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"punkBids","outputs":[{"name":"hasBid","type":"bool"},{"name":"punkIndex","type":"uint256"},{"name":"bidder","type":"address"},{"name":"value","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"allInitialOwnersAssigned","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"allPunksAssigned","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"punkIndex","type":"uint256"}],"name":"buyPunk","outputs":[],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"punkIndex","type":"uint256"}],"name":"transferPunk","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"punkIndex","type":"uint256"}],"name":"withdrawBidForPunk","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"punkIndex","type":"uint256"}],"name":"setInitialOwner","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"punkIndex","type":"uint256"},{"name":"minSalePriceInWei","type":"uint256"},{"name":"toAddress","type":"address"}],"name":"offerPunkForSaleToAddress","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"punksRemainingToAssign","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"punkIndex","type":"uint256"},{"name":"minSalePriceInWei","type":"uint256"}],"name":"offerPunkForSale","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"punkIndex","type":"uint256"}],"name":"getPunk","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"pendingWithdrawals","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"punkIndex","type":"uint256"}],"name":"punkNoLongerForSale","outputs":[],"payable":false,"type":"function"},{"inputs":[],"payable":true,"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"punkIndex","type":"uint256"}],"name":"Assign","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"punkIndex","type":"uint256"}],"name":"PunkTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"punkIndex","type":"uint256"},{"indexed":false,"name":"minValue","type":"uint256"},{"indexed":true,"name":"toAddress","type":"address"}],"name":"PunkOffered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"punkIndex","type":"uint256"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":true,"name":"fromAddress","type":"address"}],"name":"PunkBidEntered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"punkIndex","type":"uint256"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":true,"name":"fromAddress","type":"address"}],"name":"PunkBidWithdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"punkIndex","type":"uint256"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":true,"name":"fromAddress","type":"address"},{"indexed":true,"name":"toAddress","type":"address"}],"name":"PunkBought","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"punkIndex","type":"uint256"}],"name":"PunkNoLongerForSale","type":"event"}]

60c0604090815260608190527f616333396166343739333131396565343662626666333531643863623662356660809081527f323364613630323232313236616464343236386532363131393961323932316260a05262000064916000919062000186565b5060408051808201909152600b8082527f43727970746f50756e6b730000000000000000000000000000000000000000006020909201918252620000ab9160029162000186565b50600060078190556008805460ff191690556009555b60018054600160a060020a03191633600160a060020a0316179055612710600681905560095560408051808201909152600b8082527f43525950544f50554e4b5300000000000000000000000000000000000000000060209092019182526200012d9160039162000186565b506040805180820190915260028082527fcfbe0000000000000000000000000000000000000000000000000000000000006020909201918252620001749160049162000186565b506005805460ff191690555b62000230565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001c957805160ff1916838001178555620001f9565b82800160010185558215620001f9579182015b82811115620001f9578251825591602001919060010190620001dc565b5b50620002089291506200020c565b5090565b6200022d91905b8082111562000208576000815560010162000213565b5090565b90565b611b3980620002406000396000f3006060604052361561015c5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461015e578063088f11f3146101ee578063091dbfd21461023a57806318160ddd1461024757806323165b7514610269578063313ce5671461028157806339c5dde6146102a75780633ccfd60b1461033457806351605d801461034657806352f29a25146103d657806358178168146103f85780635a3b7e42146104275780636e743fa9146104b757806370a08231146104fa5780637ecedac9146105285780638126c38a1461053a5780638264fe981461055e5780638b72a2ec1461056b57806395d89b411461058c578063979bc6381461061c578063a75a904914610631578063bf31196f14610652578063c0d6ce6314610676578063c44193c314610698578063c81d1d5b146106b0578063f3f43703146106c5578063f6eeff1e146106f3575bfe5b341561016657fe5b61016e610708565b6040805160208082528351818301528351919283929083019185019080838382156101b4575b8051825260208311156101b457601f199092019160209182019101610194565b505050905090810190601f1680156101e05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101f657fe5b610201600435610796565b6040805195151586526020860194909452600160a060020a03928316858501526060850191909152166080830152519081900360a00190f35b6102456004356107d4565b005b341561024f57fe5b610257610959565b60408051918252519081900360200190f35b341561027157fe5b61024560043560243561095f565b005b341561028957fe5b610291610cbf565b6040805160ff9092168252519081900360200190f35b34156102af57fe5b610245600480803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843750506040805187358901803560208181028481018201909552818452989a998901989297509082019550935083925085019084908082843750949650610cc895505050505050565b005b341561033c57fe5b610245610d40565b005b341561034e57fe5b61016e610d9b565b6040805160208082528351818301528351919283929083019185019080838382156101b4575b8051825260208311156101b457601f199092019160209182019101610194565b505050905090810190601f1680156101e05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156103de57fe5b610257610e29565b60408051918252519081900360200190f35b341561040057fe5b61040b600435610e2f565b60408051600160a060020a039092168252519081900360200190f35b341561042f57fe5b61016e610e4a565b6040805160208082528351818301528351919283929083019185019080838382156101b4575b8051825260208311156101b457601f199092019160209182019101610194565b505050905090810190601f1680156101e05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156104bf57fe5b6104ca600435610ed5565b6040805194151585526020850193909352600160a060020a03909116838301526060830152519081900360800190f35b341561050257fe5b610257600160a060020a0360043516610f0c565b60408051918252519081900360200190f35b341561053057fe5b610245610f1e565b005b341561054257fe5b61054a610f4a565b604080519115158252519081900360200190f35b610245600435610f53565b005b341561057357fe5b610245600160a060020a03600435166024356111c0565b005b341561059457fe5b61016e6113b5565b6040805160208082528351818301528351919283929083019185019080838382156101b4575b8051825260208311156101b457601f199092019160209182019101610194565b505050905090810190601f1680156101e05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561062457fe5b610245600435611443565b005b341561063957fe5b610245600160a060020a03600435166024356115c6565b005b341561065a57fe5b610245600435602435600160a060020a03604435166116f3565b005b341561067e57fe5b61025761180c565b60408051918252519081900360200190f35b34156106a057fe5b610245600435602435611812565b005b34156106b857fe5b610245600435611927565b005b34156106cd57fe5b610257600160a060020a03600435166119f9565b60408051918252519081900360200190f35b34156106fb57fe5b610245600435611a0b565b005b6003805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561078e5780601f106107635761010080835404028352916020019161078e565b820191906000526020600020905b81548152906001019060200180831161077157829003601f168201915b505050505081565b600c602052600090815260409020805460018201546002830154600384015460049094015460ff909316939192600160a060020a0391821692911685565b600061271082106107e55760006000fd5b60085460ff1615156107f75760006000fd5b6000828152600a6020526040902054600160a060020a0316151561081b5760006000fd5b6000828152600a602052604090205433600160a060020a03908116911614156108445760006000fd5b3415156108515760006000fd5b506000818152600d60205260409020600381015434116108715760006000fd5b6000816003015411156108a75760038101546002820154600160a060020a03166000908152600e60205260409020805490910190555b604080516080810182526001808252602080830186815233600160a060020a03908116858701818152346060880181815260008c8152600d88528a90209851895460ff191690151517895594519688019690965551600287018054600160a060020a0319169190931617909155905160039094019390935583519182529251919285927f5b859394fabae0c1ba88baffe67e751ab5248d2e879028b8c8d6897b0519f56a9281900390910190a35b5050565b60065481565b6000808061271085106109725760006000fd5b60085460ff1615156109845760006000fd5b6000858152600a602052604090205433600160a060020a039081169116146109ac5760006000fd5b6000858152600d60205260409020600381015433945090925015156109d15760006000fd5b83826003015410156109e35760006000fd5b6002820180546000878152600a602090815260408083208054600160a060020a031916600160a060020a03958616179055878416808452600b83528184208054600019019055855485168452928190208054600190810190915594548151958652905193169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a360a0604051908101604052806000151581526020018681526020018360020160009054906101000a9004600160a060020a0316600160a060020a03168152602001600081526020016000600160a060020a0316815250600c600087815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001015560408201518160020160006101000a815481600160a060020a030219169083600160a060020a031602179055506060820151816003015560808201518160040160006101000a815481600160a060020a030219169083600160a060020a03160217905550905050816003015490506080604051908101604052806000151581526020018681526020016000600160a060020a031681526020016000815250600d600087815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001015560408201518160020160006101000a815481600160a060020a030219169083600160a060020a031602179055506060820151816003015590505080600e600085600160a060020a0316600160a060020a03168152602001908152602001600020600082825401925050819055508160020160009054906101000a9004600160a060020a0316600160a060020a031683600160a060020a0316867f58e5d5a525e3b40bc15abaa38b5882678db1ee68befd2f60bafe3a7fd06db9e385600301546040518082815260200191505060405180910390a45b5050505050565b60055460ff1681565b600154600090819033600160a060020a03908116911614610ce95760006000fd5b5050815160005b81811015610d3957610d308482815181101515610d0957fe5b906020019060200201518483815181101515610d2157fe5b906020019060200201516115c6565b5b600101610cf0565b5b50505050565b60085460009060ff161515610d555760006000fd5b50600160a060020a0333166000818152600e6020526040808220805490839055905190929183156108fc02918491818181858888f193505050501515610d9757fe5b5b50565b6000805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561078e5780601f106107635761010080835404028352916020019161078e565b820191906000526020600020905b81548152906001019060200180831161077157829003601f168201915b505050505081565b60075481565b600a60205260009081526040902054600160a060020a031681565b6002805460408051602060018416156101000260001901909316849004601f8101849004840282018401909252818152929183018282801561078e5780601f106107635761010080835404028352916020019161078e565b820191906000526020600020905b81548152906001019060200180831161077157829003601f168201915b505050505081565b600d60205260009081526040902080546001820154600283015460039093015460ff909216929091600160a060020a039091169084565b600b6020526000908152604090205481565b60015433600160a060020a03908116911614610f3a5760006000fd5b6008805460ff191660011790555b565b60085460ff1681565b6008546000908190819060ff161515610f6c5760006000fd5b6000848152600c6020526040902092506127108410610f8b5760006000fd5b825460ff161515610f9c5760006000fd5b6004830154600160a060020a031615801590610fc95750600483015433600160a060020a03908116911614155b15610fd45760006000fd5b8260030154341015610fe65760006000fd5b6000848152600a60205260409020546002840154600160a060020a039081169116146110125760006000fd5b60028301546000858152600a602090815260408083208054600160a060020a031916600160a060020a033381169182179092559416808452600b8352818420805460001901905584845292819020805460019081019091558151908152905192955085927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a36110aa84611a0b565b600160a060020a038083166000818152600e602090815260409182902080543490810190915582519081529151339094169388927f58e5d5a525e3b40bc15abaa38b5882678db1ee68befd2f60bafe3a7fd06db9e392908290030190a4506000838152600d60205260409020600281015433600160a060020a0390811691161415610d395760038181015433600160a060020a039081166000908152600e60209081526040808320805490950190945583516080810185528281528082018a8152818601848152606083018581528c8652600d909452959093209051815460ff1916901515178155915160018301559251600282018054600160a060020a031916919093161790915590519101555b5b50505050565b60085460009060ff1615156111d55760006000fd5b6000828152600a602052604090205433600160a060020a039081169116146111fd5760006000fd5b612710821061120c5760006000fd5b6000828152600c602052604090205460ff161561122c5761122c82611a0b565b5b6000828152600a602090815260408083208054600160a060020a031916600160a060020a0388811691821790925533909116808552600b845282852080546000190190558185529382902080546001908101909155825190815291519093927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef928290030190a382600160a060020a031633600160a060020a03167f05af636b70da6819000c49f85b21fa82081c632069bb626f30932034099107d8846040518082815260200191505060405180910390a3506000818152600d602052604090206002810154600160a060020a03848116911614156113af57600381810154600160a060020a038581166000908152600e6020908152604080832080549095019094558351608081018552828152808201888152818601848152606083018581528a8652600d909452959093209051815460ff1916901515178155915160018301559251600282018054600160a060020a031916919093161790915590519101555b5b505050565b6004805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561078e5780601f106107635761010080835404028352916020019161078e565b820191906000526020600020905b81548152906001019060200180831161077157829003601f168201915b505050505081565b60008061271083106114555760006000fd5b60085460ff1615156114675760006000fd5b6000838152600a6020526040902054600160a060020a0316151561148b5760006000fd5b6000838152600a602052604090205433600160a060020a03908116911614156114b45760006000fd5b6000838152600d60205260409020600281015490925033600160a060020a039081169116146114e35760006000fd5b60038201546040805191825251600160a060020a0333169185917f6f30e1ee4d81dcc7a8a478577f65d2ed2edb120565960ac45fe7c50551c879329181900360200190a3506003818101546040805160808101825260008082526020808301888152838501838152606085018481528a8552600d9093528584209451855460ff19169015151785559051600185015551600284018054600160a060020a031916600160a060020a0392831617905590519290950191909155905191923316916108fc84150291849190818181858888f1935050505015156113af57fe5b5b505050565b60015433600160a060020a039081169116146115e25760006000fd5b60085460ff16156115f35760006000fd5b61271081106116025760006000fd5b6000818152600a6020526040902054600160a060020a03838116911614610955576000818152600a6020526040902054600160a060020a031615611671576000818152600a6020908152604080832054600160a060020a03168352600b9091529020805460001901905561167c565b600980546000190190555b6000818152600a602090815260408083208054600160a060020a031916600160a060020a038716908117909155808452600b83529281902080546001019055805184815290517f8a0e37b73a0d9c82e205d4d1a3ff3d0b57ce5f4d7bccf6bac03336dc101cb7ba929181900390910190a25b5b5050565b60085460ff1615156117055760006000fd5b6000838152600a602052604090205433600160a060020a0390811691161461172d5760006000fd5b612710831061173c5760006000fd5b6040805160a0810182526001808252602080830187815233600160a060020a03908116858701908152606086018981528883166080880181815260008d8152600c88528a90209851895460ff19169015151789559451968801969096559051600287018054600160a060020a03199081169285169290921790559051600387015591516004909501805490921694169390931790925582518581529251909286927f3c7b682d5da98001a9b8cbda6c647d2c63d698a4184fd1d55e2ce7b66f5d21eb92918290030190a35b505050565b60095481565b60085460ff1615156118245760006000fd5b6000828152600a602052604090205433600160a060020a0390811691161461184c5760006000fd5b612710821061185b5760006000fd5b6040805160a0810182526001808252602080830186815233600160a060020a03908116858701908152606086018881526000608088018181528b8252600c87528982209851895460ff19169015151789559451968801969096559051600287018054600160a060020a03199081169285169290921790559051600387015591516004909501805490921694169390931790925582518481529251909285927f3c7b682d5da98001a9b8cbda6c647d2c63d698a4184fd1d55e2ce7b66f5d21eb92918290030190a35b5050565b60085460ff1615156119395760006000fd5b60095415156119485760006000fd5b6000818152600a6020526040902054600160a060020a03161561196b5760006000fd5b612710811061197a5760006000fd5b6000818152600a602090815260408083208054600160a060020a03191633600160a060020a0316908117909155808452600b8352928190208054600101905560098054600019019055805184815290517f8a0e37b73a0d9c82e205d4d1a3ff3d0b57ce5f4d7bccf6bac03336dc101cb7ba929181900390910190a25b50565b600e6020526000908152604090205481565b60085460ff161515611a1d5760006000fd5b6000818152600a602052604090205433600160a060020a03908116911614611a455760006000fd5b6127108110611a545760006000fd5b6040805160a08101825260008082526020808301858152600160a060020a033381168587019081526060860185815260808701868152898752600c9095528786209651875490151560ff199091161787559251600187015551600286018054918316600160a060020a03199283161790559151600386015591516004909401805494909216931692909217909155905182917fb0e0a660b4e50f26f0b7ce75c24655fc76cc66e3334a54ff410277229fa10bd491a25b505600a165627a7a72305820e876fd2bb43babdd65d8ea9d7f8fb4a2de975957026c8b91057b2e1417ff38a20029

Swarm Source

bzzr://e876fd2bb43babdd65d8ea9d7f8fb4a2de975957026c8b91057b2e1417ff38a2
Block Transaction Difficulty Gas Used Reward
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.