Contract 0xf9d3a9254ed32faf7299d18cb43502b29ebc1956

Contract Overview

Balance:
0.51 Ether
TxHash Block Age From To Value [TxFee]
0xcaf43922a4efc953bb434d3366ff5fdd93e627e85e68e6e6b71f10ffa9922a081981768363 days 9 hrs ago0xd464d8349a52c5ab5ffaaf98f519611666032b24 IN  0xf9d3a9254ed32faf7299d18cb43502b29ebc19560.01 Ether0.000219726
0x76c4b26766e7fb625bd7d911d58253714c874e91fdc6e627d70715dbd2db52bc1981647363 days 10 hrs ago0xd464d8349a52c5ab5ffaaf98f519611666032b24 IN  0xf9d3a9254ed32faf7299d18cb43502b29ebc19560.5 Ether0.000219918
0xa6d262d1a7275a9b31189ae43d88c73ba19b6e2659c834a7fd1ef724e0cd04bc1981591363 days 10 hrs ago0xd464d8349a52c5ab5ffaaf98f519611666032b24 IN  0xf9d3a9254ed32faf7299d18cb43502b29ebc19560.0001 Ether0.000161098
0x7074afc05a77a871c1d5743bd37f7df3a352bb613e78968b40267d9478426ca41981579363 days 10 hrs ago0xd464d8349a52c5ab5ffaaf98f519611666032b24 IN  0xf9d3a9254ed32faf7299d18cb43502b29ebc19560.01 Ether0.000201953
0xe1eef073ff663be641428edb556646832daaa5c19f03243ef44bce14ad3249e01981575363 days 10 hrs ago0xd464d8349a52c5ab5ffaaf98f519611666032b24 IN  0xf9d3a9254ed32faf7299d18cb43502b29ebc19560.0101 Ether0.000251582
0xbb02cdb890ec5981deb519215b7010f62cef6bd20cc368f226997900a62096261976315364 days 8 hrs ago0x8a6ad22c5a2ae4bcde0e64ecdc90056c41f8a08d IN  0xf9d3a9254ed32faf7299d18cb43502b29ebc19560.001 Ether0.000246034
0x43c35cdd8faddd46028376edb0e8ef382b685a3470bb6137b0d93653734655cf1976290364 days 8 hrs ago0x8a6ad22c5a2ae4bcde0e64ecdc90056c41f8a08d IN  0xf9d3a9254ed32faf7299d18cb43502b29ebc19560.001 Ether0.000301446
0x7fa23991546d1b3a4d07b679baa350379bcb5c0ae4d4319afea7921a1e79e79b1976257364 days 8 hrs ago0x8a6ad22c5a2ae4bcde0e64ecdc90056c41f8a08d IN  Contract Creation0 Ether0.001695321
[ Download CSV Export 

Latest 2 internal transactions Internal Transactions as a result of Contract Execution

Parent TxHash Block Age From To Value
0xa6d262d1a7275a9b31189ae43d88c73ba19b6e2659c834a7fd1ef724e0cd04bc1981591363 days 10 hrs ago0xf9d3a9254ed32faf7299d18cb43502b29ebc19560x42eb768f2244c8811c63729a21a3569731535f060.0202 Ether
0xbb02cdb890ec5981deb519215b7010f62cef6bd20cc368f226997900a62096261976315364 days 8 hrs ago0xf9d3a9254ed32faf7299d18cb43502b29ebc19560x5523a7c740fdaa89a5fc737be754d59bbf89c86e0.002 Ether
[ Download CSV Export 

Contract Source Code Verified (Exact Match)

Contract Name:
EthPledge

Compiler Version
v0.4.21+commit.dfe3193c

Optimization Enabled:
No

Runs (Optimizer):
200

Contract Source Code

pragma solidity ^0.4.2;

contract EthPledge {
    
    address public owner;
    
    function EthPledge() {
        owner = msg.sender;
    }
    
    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }
    
    struct Campaign {
        address benefactor; // Person starting the campaign, who puts in some ETH to donate to an Ethereum address. 
        address charity;
        uint amountPledged;
        uint amountRaised;
        uint donationsReceived;
        uint multiplier; // If this was 5, for example, other donators would only need to put up 1/5th of the amount the benefactor does for the pledge to be successful and all funds to be donated. Eg. Benefactor pledges 10 ETH, then after only 2 ETH is contributed to the campaign, all funds are send to the charity and the campaign ends
        bool active;
        bool successful;
        uint timeStarted;
        bytes32 descriptionPart1; // Allow a description of up to 132 characters. Each bytes32 part can only hold 32 characters.
        bytes32 descriptionPart2;
        bytes32 descriptionPart3;
        bytes32 descriptionPart4;
    }
    
    mapping (uint => Campaign) public campaign;
    
    mapping (address => uint[]) public campaignsStartedByUser;
    
    mapping (address => mapping(uint => uint)) public addressToCampaignIDToFundsDonated;
    
    mapping (address => uint[]) public campaignIDsDonatedToByUser; // Will contain duplicates if a user donates to a campaign twice
    
    struct Donation {
        address donator;
        uint amount;
        uint timeSent;
    }
    
    mapping (uint => mapping(uint => Donation)) public campaignIDtoDonationNumberToDonation;
    
    uint public totalCampaigns;
    
    uint public totalDonations;
    
    uint public totalETHraised;
    
    uint public minimumPledgeAmount = 10**14; // 0.1 Ether
    
    function createCampaign (address charity, uint multiplier, bytes32 descriptionPart1, bytes32 descriptionPart2, bytes32 descriptionPart3, bytes32 descriptionPart4) payable {
        require (msg.value >= minimumPledgeAmount);
        require (multiplier > 0);
        campaign[totalCampaigns].benefactor = msg.sender;
        campaign[totalCampaigns].charity = charity;
        campaign[totalCampaigns].multiplier = multiplier;
        campaign[totalCampaigns].timeStarted = now;
        campaign[totalCampaigns].amountPledged = msg.value;
        campaign[totalCampaigns].active = true;
        campaign[totalCampaigns].descriptionPart1 = descriptionPart1;
        campaign[totalCampaigns].descriptionPart2 = descriptionPart2;
        campaign[totalCampaigns].descriptionPart3 = descriptionPart3;
        campaign[totalCampaigns].descriptionPart4 = descriptionPart4;
        campaignsStartedByUser[msg.sender].push(totalCampaigns);
        totalETHraised += msg.value;
        totalCampaigns++;
    }
    
    function cancelDonation (uint campaignID) {
        require (msg.sender == campaign[campaignID].benefactor);
        campaign[campaignID].active = false;
        campaign[campaignID].successful = false;
        uint amountToSendTocharity = (campaign[campaignID].amountRaised * campaign[campaignID].multiplier) + campaign[campaignID].amountRaised;
        uint amountToSendToStarter = campaign[campaignID].amountPledged - amountToSendTocharity;
        campaign[campaignID].charity.transfer(amountToSendTocharity);
        campaign[campaignID].benefactor.transfer(amountToSendToStarter);
        
    }
    
    function contributeToDonation (uint campaignID) payable {
        require (msg.value > 0);
        require (campaign[campaignID].active = true);
        campaignIDsDonatedToByUser[msg.sender].push(campaignID);
        addressToCampaignIDToFundsDonated[msg.sender][campaignID] += msg.value;
        
        campaignIDtoDonationNumberToDonation[campaignID][campaign[campaignID].donationsReceived].donator = msg.sender;
        campaignIDtoDonationNumberToDonation[campaignID][campaign[campaignID].donationsReceived].amount = msg.value;
        campaignIDtoDonationNumberToDonation[campaignID][campaign[campaignID].donationsReceived].timeSent = now;
        
        campaign[campaignID].donationsReceived++;
        totalDonations++;
        totalETHraised += msg.value;
        campaign[campaignID].amountRaised += msg.value;
        if (campaign[campaignID].amountRaised >= (campaign[campaignID].amountPledged / campaign[campaignID].multiplier)) {
            // Target reached
            campaign[campaignID].charity.transfer(campaign[campaignID].amountRaised + campaign[campaignID].amountPledged);
            campaign[campaignID].active = false;
            campaign[campaignID].successful = true;
        }
    }
    
    function adjustMinimumPledgeAmount (uint newMinimum) onlyOwner {
        require (newMinimum > 0);
        minimumPledgeAmount = newMinimum;
    }
    
    // Below are view functions that an external contract can call to get information on a campaign ID or user
    
    function returnHowMuchMoreETHNeeded (uint campaignID) view returns (uint) {
        return (campaign[campaignID].amountPledged / campaign[campaignID].multiplier - campaign[campaignID].amountRaised);
    }
    
    function generalInfo() view returns (uint, uint, uint) {
        return (totalCampaigns, totalDonations, totalETHraised);
    }
    
    function lookupDonation (uint campaignID, uint donationNumber) view returns (address, uint, uint) {
        return (campaignIDtoDonationNumberToDonation[campaignID][donationNumber].donator, campaignIDtoDonationNumberToDonation[campaignID][donationNumber].amount, campaignIDtoDonationNumberToDonation[campaignID][donationNumber].timeSent);
    }
    
    // Below two functions have to be split into two parts, otherwise there are call-stack too deep errors
    
    function lookupCampaignPart1 (uint campaignID) view returns (address, address, uint, uint, uint, bytes32, bytes32) {
        return (campaign[campaignID].benefactor, campaign[campaignID].charity, campaign[campaignID].amountPledged, campaign[campaignID].amountRaised,campaign[campaignID].donationsReceived, campaign[campaignID].descriptionPart1, campaign[campaignID].descriptionPart2);
    }
    
    function lookupCampaignPart2 (uint campaignID) view returns (uint, bool, bool, uint, bytes32, bytes32) {
        return (campaign[campaignID].multiplier, campaign[campaignID].active, campaign[campaignID].successful, campaign[campaignID].timeStarted, campaign[campaignID].descriptionPart3, campaign[campaignID].descriptionPart4);
    }
    
    // Below functions are probably not necessary, but included just in case another contract needs this information in future
    
    function lookupUserDonationHistoryByCampaignID (address user) view returns (uint[]) {
        return (campaignIDsDonatedToByUser[user]);
    }
    
    function lookupAmountUserDonatedToCampaign (address user, uint campaignID) view returns (uint) {
        return (addressToCampaignIDToFundsDonated[user][campaignID]);
    }
    
}

Contract ABI

[{"constant":false,"inputs":[{"name":"charity","type":"address"},{"name":"multiplier","type":"uint256"},{"name":"descriptionPart1","type":"bytes32"},{"name":"descriptionPart2","type":"bytes32"},{"name":"descriptionPart3","type":"bytes32"},{"name":"descriptionPart4","type":"bytes32"}],"name":"createCampaign","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"totalCampaigns","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"campaignID","type":"uint256"}],"name":"returnHowMuchMoreETHNeeded","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"campaignID","type":"uint256"},{"name":"donationNumber","type":"uint256"}],"name":"lookupDonation","outputs":[{"name":"","type":"address"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"campaignID","type":"uint256"}],"name":"contributeToDonation","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"addressToCampaignIDToFundsDonated","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"generalInfo","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"},{"name":"campaignID","type":"uint256"}],"name":"lookupAmountUserDonatedToCampaign","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalETHraised","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newMinimum","type":"uint256"}],"name":"adjustMinimumPledgeAmount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"campaignID","type":"uint256"}],"name":"cancelDonation","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"campaignsStartedByUser","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"campaign","outputs":[{"name":"benefactor","type":"address"},{"name":"charity","type":"address"},{"name":"amountPledged","type":"uint256"},{"name":"amountRaised","type":"uint256"},{"name":"donationsReceived","type":"uint256"},{"name":"multiplier","type":"uint256"},{"name":"active","type":"bool"},{"name":"successful","type":"bool"},{"name":"timeStarted","type":"uint256"},{"name":"descriptionPart1","type":"bytes32"},{"name":"descriptionPart2","type":"bytes32"},{"name":"descriptionPart3","type":"bytes32"},{"name":"descriptionPart4","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"lookupUserDonationHistoryByCampaignID","outputs":[{"name":"","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"campaignID","type":"uint256"}],"name":"lookupCampaignPart1","outputs":[{"name":"","type":"address"},{"name":"","type":"address"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"bytes32"},{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalDonations","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"minimumPledgeAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"name":"campaignIDtoDonationNumberToDonation","outputs":[{"name":"donator","type":"address"},{"name":"amount","type":"uint256"},{"name":"timeSent","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"campaignID","type":"uint256"}],"name":"lookupCampaignPart2","outputs":[{"name":"","type":"uint256"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"uint256"},{"name":"","type":"bytes32"},{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"campaignIDsDonatedToByUser","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"}]

Contract Creation Code

6060604052655af3107a4000600955341561001957600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611790806100686000396000f30060606040526004361061011d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630161d5f01461012257806302932f561461018d5780631527d657146101b657806318cf1c25146101ed5780631d84665f1461026757806323eba3e31461027f57806325a6c545146102d55780637a6b2a2c1461030c5780637d4504e014610362578063806c61881461038b5780638da5cb5b146103ae578063993c800014610403578063bf832a3514610426578063ccd390371461047c578063ceea391414610587578063d73f0b2514610615578063de2ed893146106de578063decf1e6414610707578063fa99a77c14610730578063fcd24400146107aa578063fe6c52f31461081c575b600080fd5b61018b600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803560001916906020019091908035600019169060200190919080356000191690602001909190803560001916906020019091905050610872565b005b341561019857600080fd5b6101a0610add565b6040518082815260200191505060405180910390f35b34156101c157600080fd5b6101d76004808035906020019091905050610ae3565b6040518082815260200191505060405180910390f35b34156101f857600080fd5b6102176004808035906020019091908035906020019091905050610b3c565b604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390f35b61027d6004808035906020019091905050610be6565b005b341561028a57600080fd5b6102bf600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610fb8565b6040518082815260200191505060405180910390f35b34156102e057600080fd5b6102e8610fdd565b60405180848152602001838152602001828152602001935050505060405180910390f35b341561031757600080fd5b61034c600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610ff6565b6040518082815260200191505060405180910390f35b341561036d57600080fd5b610375611051565b6040518082815260200191505060405180910390f35b341561039657600080fd5b6103ac6004808035906020019091905050611057565b005b34156103b957600080fd5b6103c16110cb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040e57600080fd5b61042460048080359060200190919050506110f0565b005b341561043157600080fd5b610466600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611316565b6040518082815260200191505060405180910390f35b341561048757600080fd5b61049d6004808035906020019091905050611347565b604051808e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c81526020018b81526020018a8152602001898152602001881515151581526020018715151515815260200186815260200185600019166000191681526020018460001916600019168152602001836000191660001916815260200182600019166000191681526020019d505050505050505050505050505060405180910390f35b341561059257600080fd5b6105be600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611407565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156106015780820151818401526020810190506105e6565b505050509050019250505060405180910390f35b341561062057600080fd5b61063660048080359060200190919050506114a4565b604051808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018481526020018360001916600019168152602001826000191660001916815260200197505050505050505060405180910390f35b34156106e957600080fd5b6106f16115a9565b6040518082815260200191505060405180910390f35b341561071257600080fd5b61071a6115af565b6040518082815260200191505060405180910390f35b341561073b57600080fd5b61075a60048080359060200190919080359060200190919050506115b5565b604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390f35b34156107b557600080fd5b6107cb600480803590602001909190505061160c565b60405180878152602001861515151581526020018515151515815260200184815260200183600019166000191681526020018260001916600019168152602001965050505050505060405180910390f35b341561082757600080fd5b61085c600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506116ce565b6040518082815260200191505060405180910390f35b600954341015151561088357600080fd5b60008511151561089257600080fd5b3360016000600654815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508560016000600654815260200190815260200160002060010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508460016000600654815260200190815260200160002060050181905550426001600060065481526020019081526020016000206007018190555034600160006006548152602001908152602001600020600201819055506001806000600654815260200190815260200160002060060160006101000a81548160ff02191690831515021790555083600160006006548152602001908152602001600020600801816000191690555082600160006006548152602001908152602001600020600901816000191690555081600160006006548152602001908152602001600020600a01816000191690555080600160006006548152602001908152602001600020600b018160001916905550600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054806001018281610a9c91906116ff565b916000526020600020900160006006549091909150555034600860008282540192505081905550600660008154809291906001019190505550505050505050565b60065481565b6000600160008381526020019081526020016000206003015460016000848152602001908152602001600020600501546001600085815260200190815260200160002060020154811515610b3357fe5b04039050919050565b600080600060056000868152602001908152602001600020600085815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660056000878152602001908152602001600020600086815260200190815260200160002060010154600560008881526020019081526020016000206000878152602001908152602001600020600201549250925092509250925092565b600034111515610bf557600080fd5b600180600083815260200190815260200160002060060160006101000a81548160ff02191690831515021790551515610c2d57600080fd5b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054806001018281610c7e91906116ff565b91600052602060002090016000839091909150555034600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060008282540192505081905550336005600083815260200190815260200160002060006001600085815260200190815260200160002060040154815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555034600560008381526020019081526020016000206000600160008581526020019081526020016000206004015481526020019081526020016000206001018190555042600560008381526020019081526020016000206000600160008581526020019081526020016000206004015481526020019081526020016000206002018190555060016000828152602001908152602001600020600401600081548092919060010191905055506007600081548092919060010191905055503460086000828254019250508190555034600160008381526020019081526020016000206003016000828254019250508190555060016000828152602001908152602001600020600501546001600083815260200190815260200160002060020154811515610e9457fe5b046001600083815260200190815260200160002060030154101515610fb5576001600082815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc60016000848152602001908152602001600020600201546001600085815260200190815260200160002060030154019081150290604051600060405180830381858888f193505050501515610f5757600080fd5b60006001600083815260200190815260200160002060060160006101000a81548160ff021916908315150217905550600180600083815260200190815260200160002060060160016101000a81548160ff0219169083151502179055505b50565b6003602052816000526040600020602052806000526040600020600091509150505481565b6000806000600654600754600854925092509250909192565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b60085481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110b257600080fd5b6000811115156110c157600080fd5b8060098190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806001600084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561116357600080fd5b60006001600085815260200190815260200160002060060160006101000a81548160ff02191690831515021790555060006001600085815260200190815260200160002060060160016101000a81548160ff021916908315150217905550600160008481526020019081526020016000206003015460016000858152602001908152602001600020600501546001600086815260200190815260200160002060030154020191508160016000858152602001908152602001600020600201540390506001600084815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050151561129b57600080fd5b6001600084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561131157600080fd5b505050565b60026020528160005260406000208181548110151561133157fe5b9060005260206000209001600091509150505481565b60016020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154908060040154908060050154908060060160009054906101000a900460ff16908060060160019054906101000a900460ff169080600701549080600801549080600901549080600a01549080600b015490508d565b61140f61172b565b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080548060200260200160405190810160405280929190818152602001828054801561149857602002820191906000526020600020905b815481526020019060010190808311611484575b50505050509050919050565b60008060008060008060006001600089815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160008a815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160008b815260200190815260200160002060020154600160008c815260200190815260200160002060030154600160008d815260200190815260200160002060040154600160008e815260200190815260200160002060080154600160008f8152602001908152602001600020600901549650965096509650965096509650919395979092949650565b60075481565b60095481565b6005602052816000526040600020602052806000526040600020600091509150508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154908060020154905083565b60008060008060008060016000888152602001908152602001600020600501546001600089815260200190815260200160002060060160009054906101000a900460ff16600160008a815260200190815260200160002060060160019054906101000a900460ff16600160008b815260200190815260200160002060070154600160008c8152602001908152602001600020600a0154600160008d8152602001908152602001600020600b015495509550955095509550955091939550919395565b6004602052816000526040600020818154811015156116e957fe5b9060005260206000209001600091509150505481565b81548183558181151161172657818360005260206000209182019101611725919061173f565b5b505050565b602060405190810160405280600081525090565b61176191905b8082111561175d576000816000905550600101611745565b5090565b905600a165627a7a72305820254beeee24cdb148cde9d85d2dc1f7f83553cb7a9c88e74fc2c07a63fd892d440029

Swarm Source

bzzr://254beeee24cdb148cde9d85d2dc1f7f83553cb7a9c88e74fc2c07a63fd892d44
Block Age Transaction Difficulty GasUsed Reward
Block Age Uncle Number Difficulty GasUsed Reward