Sponsored Link:   Buy your 1st Ethereum in 5 minutes. Trusted by more than 100k buyers.
Contract Overview
ETH Balance: 0 Ether
ETH USD Value: $0
No Of Transactions: 20 txns
  Latest 20 txns

TxHash Age From To Value [TxFee]
0x292f1d3bea323af03b2e414a1fa34533b58bebcf92852b78ddf343623fbb2cf219 days 10 hrs ago0x10e44c6bc685c4e4eabda326c211561d5367eeec  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990 Ether0.00005240428
0xfa4087e40d6d8112773f4ba06a70d11ba33c854a8601ea40f0e574e38678016a24 days 7 hrs ago0x3102167c002387ac1287ac09d47d216ce2fc672d  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990.003 Ether0.000771836
0x6f1b6bcf11ebe0ffd0ad5f7889be5518b6ddecdea0b234897c188e3ab266031924 days 12 hrs ago0x10e44c6bc685c4e4eabda326c211561d5367eeec  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990 Ether0.000057244
0xa41b932125ed7116697f6f8fed22a0470bb058867df82892c07dd542a504ca3924 days 12 hrs ago0x10e44c6bc685c4e4eabda326c211561d5367eeec  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990 Ether0.000109284
0xf4ea899101faa57b63dd1b9f0a4ecd1005c86e2d5995ca877bb7a9bf8012464024 days 12 hrs ago0x10e44c6bc685c4e4eabda326c211561d5367eeec  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990 Ether0.000057244
0x8676e159fcec1fe37bff40efb8975b4381e5ea3abdff234cab8a40c59e7b21de24 days 12 hrs ago0x10e44c6bc685c4e4eabda326c211561d5367eeec  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990 Ether0.0000571736
0xee417f1fa3220ef17e3ffed3d0eeb98e64606f39bb9e1958280d5db44b24129f24 days 12 hrs ago0x10e44c6bc685c4e4eabda326c211561d5367eeec  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990 Ether0.000057244
0x7f0ed5943d87d2eb8b1d0d9573c35f85dcc27cd934e54771845f7da1aec4f57b24 days 12 hrs ago0x10e44c6bc685c4e4eabda326c211561d5367eeec  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990 Ether0.000057244
0x6afad44086def674f22abb5061b65738b7c34096b9f4c2c2e184c86063c50df524 days 12 hrs ago0x10e44c6bc685c4e4eabda326c211561d5367eeec  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990 Ether0.000057244
0xfb2f002a26628e4d6f6daf98c0274708d3617c398a78db85662e0e7f05ff2a3b34 days 16 hrs ago0x0be2805eb4b786369753479c0899299bd1583082  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990 Ether0.000055684
0xe551f79b74631613df163331fc0576e0cd3595854f9ac9a2d78db40b88e2e57543 days 20 hrs ago0xd17e06ffebb8d116c12c818f5e0d67d4ef62e21f  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990.003 Ether0.001023858
0xe4f71a8701ede2dc907fd3522c0c30797309409ca6cce5a23a7c5b1c304494b554 days 11 hrs ago0x80ef90a9d1af8edeb241439e60b8a1a0c68c04f6  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990.025 Ether0.000707135
0x3f8050b866dec125deefdd1c2206f848e640d627d4ee7c7ecb0d84e7b657078754 days 13 hrs ago0x6d064946c159a55a7cbf0f9b6c7bab073a156c6e  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990.003 Ether0.000742707
0x89b3e440235b4d2121354a42bc087b39223917f47b1eea68976a49c8a619e79956 days 5 hrs ago0x10e44c6bc685c4e4eabda326c211561d5367eeec  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990 Ether0.000192416
0x868a9069bbaf2f8715ae9bd222e24f814727aa46c58663e49685f5835f384bc357 days 2 mins ago0xad62d4fdd2d071536dbcb72202f1ef51b17ece30  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990.013 Ether0.000026366
0x6ff6e3b2b4445977ec4dfe3e8305a038a07e4dd9b22f135123ce9efbc23329fd57 days 3 mins ago0xad62d4fdd2d071536dbcb72202f1ef51b17ece30  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990.013 Ether0.000105269
0x182e2c5231f5c6b2b85a195419f175ec52a15687b1a702c49c271a43221e07e059 days 6 hrs ago0xf0db738b369e4246d00979393d00d87383bbb0a4  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990.013 Ether0.000636606
0x833a940d50e7123c4230bb8d7624d8cb6b37d1842dd824ec0671513bc5a6dd4459 days 8 hrs ago0x5dc297392beea0fd0af017aa57d9e98eeeb014cc  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990.013 Ether0.001568301
0x535eb5282d2db83921225711513b9b80497dc10e7dd7e7dd4e4b444ad98c16f359 days 9 hrs ago0x10e44c6bc685c4e4eabda326c211561d5367eeec  IN   0x5bf554632a059ae0537a3eeb20aced49348b8f990 Ether0.00029078
0xb1cfc0a62951a4fc5e95142a4a9af5429a825ea99a63e063bf890168d76f0c7359 days 9 hrs ago0x10e44c6bc685c4e4eabda326c211561d5367eeec  IN    Contract Creation0 Ether0.00654481
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
  Latest 8 Internal Transactions

ParentTxHash Block Age From To Value
0xfa4087e40d6d8112773f4ba06a70d11ba33c854a8601ea40f0e574e38678016a460671324 days 7 hrs ago0x5bf554632a059ae0537a3eeb20aced49348b8f990x4ba539833b6d2cf8f9292bbe70d4fa38f68e1a430.003 Ether
0xe551f79b74631613df163331fc0576e0cd3595854f9ac9a2d78db40b88e2e575448521543 days 20 hrs ago0x5bf554632a059ae0537a3eeb20aced49348b8f990x4ba539833b6d2cf8f9292bbe70d4fa38f68e1a430.003 Ether
0xe4f71a8701ede2dc907fd3522c0c30797309409ca6cce5a23a7c5b1c304494b5441946254 days 11 hrs ago0x5bf554632a059ae0537a3eeb20aced49348b8f990x6d064946c159a55a7cbf0f9b6c7bab073a156c6e0.0225 Ether
0xe4f71a8701ede2dc907fd3522c0c30797309409ca6cce5a23a7c5b1c304494b5441946254 days 11 hrs ago0x5bf554632a059ae0537a3eeb20aced49348b8f990x4ba539833b6d2cf8f9292bbe70d4fa38f68e1a430.0025 Ether
0x3f8050b866dec125deefdd1c2206f848e640d627d4ee7c7ecb0d84e7b6570787441888854 days 13 hrs ago0x5bf554632a059ae0537a3eeb20aced49348b8f990x4ba539833b6d2cf8f9292bbe70d4fa38f68e1a430.003 Ether
0x6ff6e3b2b4445977ec4dfe3e8305a038a07e4dd9b22f135123ce9efbc23329fd440364957 days 3 mins ago0x5bf554632a059ae0537a3eeb20aced49348b8f990x4ba539833b6d2cf8f9292bbe70d4fa38f68e1a430.013 Ether
0x182e2c5231f5c6b2b85a195419f175ec52a15687b1a702c49c271a43221e07e0438946059 days 6 hrs ago0x5bf554632a059ae0537a3eeb20aced49348b8f990x4ba539833b6d2cf8f9292bbe70d4fa38f68e1a430.013 Ether
0x833a940d50e7123c4230bb8d7624d8cb6b37d1842dd824ec0671513bc5a6dd44438893059 days 8 hrs ago0x5bf554632a059ae0537a3eeb20aced49348b8f990x4ba539833b6d2cf8f9292bbe70d4fa38f68e1a430.013 Ether
[ Download CSV Export  ] 
Warning: The compiled contract might be susceptible to ZeroFunctionSelector (very low-severity) Solidity compiler bugs.

Contract Source Code Verified
Contract Name: SoulToken
Compiler Version: v0.4.17+commit.bdeb9e52
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts
/*
* This is the source code of the smart contract for the SOUL token, aka Soul Napkins.
* Copyright 2017 and all rights reserved by the owner of the following Ethereum address:
* 0x10E44C6bc685c4E4eABda326c211561d5367EEec
*/

pragma solidity ^0.4.17;

// ERC Token standard #20 Interface
// https://github.com/ethereum/EIPs/issues/20
contract ERC20Interface {

    // Token symbol
    string public constant symbol = "TBA";

    // Name of token
    string public constant name ="TBA";

    // Decimals of token
    uint8 public constant decimals = 18;

    // Total token supply
    function totalSupply() public constant returns (uint256 supply);

    // The balance of account with address _owner
    function balanceOf(address _owner) public constant returns (uint256 balance);

    // Send _value tokens to address _to
    function transfer(address _to, uint256 _value) public returns (bool success);

    // Send _value tokens from address _from to address _to
    function transferFrom(address _from, address _to, uint256 _value) public returns (bool success);

    // Allow _spender to withdraw from your account, multiple times, up to the _value amount.
    // If this function is called again it overwrites the current allowance with _value.
    // this function is required for some DEX functionality
    function approve(address _spender, uint256 _value) public returns (bool success);

    // Returns the amount which _spender is still allowed to withdraw from _owner
    function allowance(address _owner, address _spender) public constant returns (uint256 remaining);

    // Triggered when tokens are transferred.
    event Transfer(address indexed _from, address indexed _to, uint256 _value);

    // Triggered whenever approve(address _spender, uint256 _value) is called.
    event Approval(address indexed _owner, address indexed _spender, uint256 _value);
}


// Implementation of ERC20Interface
contract ERC20Token is ERC20Interface{

    // account balances
    mapping(address => uint256) balances;

    // Owner of account approves the transfer of amount to another account
    mapping(address => mapping (address => uint256)) allowed;

    // Function to access acount balances
    function balanceOf(address _owner) public constant returns (uint256) {
        return balances[_owner];
    }

    // Transfer the _amount from msg.sender to _to account
    function transfer(address _to, uint256 _amount) public returns (bool) {
        if (balances[msg.sender] >= _amount && _amount > 0
                && balances[_to] + _amount > balances[_to]) {
            balances[msg.sender] -= _amount;
            balances[_to] += _amount;
            Transfer(msg.sender, _to, _amount);
            return true;
        } else {
            return false;
        }
    }

    // Send _value amount of tokens from address _from to address _to
    // The transferFrom method is used for a withdraw workflow, allowing contracts to send
    // tokens on your behalf, for example to "deposit" to a contract address and/or to charge
    // fees in sub-currencies; the command should fail unless the _from account has
    // deliberately authorized the sender of the message via some mechanism; we propose
    // these standardized APIs for approval:
    function transferFrom(
        address _from,
        address _to,
        uint256 _amount
    ) public returns (bool) {
        if (balances[_from] >= _amount
            && allowed[_from][msg.sender] >= _amount && _amount > 0
                && balances[_to] + _amount > balances[_to]) {
            balances[_from] -= _amount;
            allowed[_from][msg.sender] -= _amount;
            balances[_to] += _amount;
            Transfer(_from, _to, _amount);
            return true;
        } else {
            return false;
        }
    }

    // Allow _spender to withdraw from your account, multiple times, up to the _value amount.
    // If this function is called again it overwrites the current allowance with _value.
    function approve(address _spender, uint256 _amount) public returns (bool) {
        allowed[msg.sender][_spender] = _amount;
        Approval(msg.sender, _spender, _amount);
        return true;
    }

    // Function to specify how much _spender is allowed to transfer on _owner's behalf
    function allowance(address _owner, address _spender) public constant returns (uint256) {
        return allowed[_owner][_spender];
    }

}


// Token implementation that allows selling of souls and distribution of napkins
contract SoulToken is ERC20Token{

    // The three letter symbol of token
    string public constant symbol = "SOUL";

    // Name of token
    string public constant name = "Soul Napkins";

    // 6 is a holy number (2*3) so there are 6 decimals
    uint8 public constant decimals = 6;

    // With 6 decimals, a single unit is 10**6
    uint256 public constant unit = 1000000;

    // fee to pay to transfer soul, 10% like the ecclesiastical tithe
    uint8 public constant obol = 10;

    // price per token, 100 napkins per Ether
    uint256 public constant napkinPrice = 10 finney / unit;

    // Total number of napkins available
    // 144,000 (get it?)
    uint256 constant totalSupply_ = 144000 * unit;

    // mapping to keep the reason of the soul sale!
    mapping(address => string) reasons;

    // prices that people put up for their soul
    mapping(address => uint256) soulPrices;

    // who owns a particular soul
    mapping(address => address) ownedBy;

    // number of souls owned by someone
    mapping(address => uint256) soulsOwned;

    // book of souls, listing all souls on sale and sold
    mapping(uint256 => address) soulBook;

    // owner of the contract
    address public owner;

    // Address where soul obol is due to
    address public charonsBoat;

    // small fee to insert soul into soulbook
    uint256 public bookingFee;

    // souls for sale
    uint256 public soulsForSale;

    // souls already sold
    uint256 public soulsSold;

    // total amount of Wei collected by Charon
    uint256 public totalObol;

    // Logs a soul transfer
    event SoulTransfer(address indexed _from, address indexed _to);

    function SoulToken() public{
        owner = msg.sender;
        charonsBoat = msg.sender;
        // fee for inserting into soulbook, unholy 13 finney
        bookingFee = 13 finney;
        soulsForSale = 0;
        soulsSold = 0;
        totalObol = 0;
        // all napkins belong to the contract at first:
        balances[this] = totalSupply_;
        // 1111 napkins for the dev ;-)
        payOutNapkins(1111 * unit);
    }

    // fallback function, Charon sells napkins as merchandise!
    function () public payable {
        uint256 amount;
        uint256 checkedAmount;
        // give away some napkins in return proportional to value
        amount = msg.value / napkinPrice;
        checkedAmount = checkAmount(amount);
        // only payout napkins if there is the appropriate amount available
        // else throw
        require(amount == checkedAmount);
        // forward money to Charon
        payCharon(msg.value);
        // finally payout napkins
        payOutNapkins(checkedAmount);
    }

    // allows changing of the booking fee, note obol and token price are fixed and cannot change
    function changeBookingFee(uint256 fee) public {
        require(msg.sender == owner);
        bookingFee = fee;
    }

    // changes Charon's boat, i.e. the address where the obol is paid to
    function changeBoat(address newBoat) public{
        require(msg.sender == owner);
        charonsBoat = newBoat;
    }

    // total number of napkins distributed by Charon
    function totalSupply() public constant returns (uint256){
        return totalSupply_;
    }

    // returns the reason for the selling of one's soul
    function soldSoulBecause(address noSoulMate) public constant returns(string){
        return reasons[noSoulMate];
    }

    // returns the owner of a soul
    function soulIsOwnedBy(address noSoulMate) public constant returns(address){
        return ownedBy[noSoulMate];
    }

    // returns number of souls owned by someone
    function ownsSouls(address soulOwner) public constant returns(uint256){
        return soulsOwned[soulOwner];
    }

    // returns price of a soul
    function soldSoulFor(address noSoulMate) public constant returns(uint256){
        return soulPrices[noSoulMate];
    }

    // returns the nth entry in the soulbook
    function soulBookPage(uint256 page) public constant returns(address){
        return soulBook[page];
    }

    // sells your soul for a given price and a given reason!
    function sellSoul(string reason, uint256 price) public payable{
        uint256 charonsObol;
        string storage has_reason = reasons[msg.sender];

        // require that user gives a reason
        require(bytes(reason).length > 0);

        // require to pay bookingFee
        require(msg.value >= bookingFee);

        // you cannot give away your soul for free, at least Charon wants some share
        charonsObol = price / obol;
        require(charonsObol > 0);

        // assert has not sold her or his soul, yet
        require(bytes(has_reason).length == 0);
        require(soulPrices[msg.sender] == 0);
        require(ownedBy[msg.sender] == address(0));

        // pay book keeping fee
        payCharon(msg.value);

        // store the reason forever on the blockchain
        reasons[msg.sender] = reason;
        // also the price is forever kept on the blockchain, so do not be too cheap
        soulPrices[msg.sender] = price;
        // and keep the soul in the soul book
        soulBook[soulsForSale + soulsSold] = msg.sender;
        soulsForSale += 1;
    }

    // buys msg.sender a soul and rewards him with tokens!
    function buySoul(address noSoulMate) public payable returns(uint256 amount){
        uint256 charonsObol;
        uint256 price;

        // you cannot buy an owned soul:
        require(ownedBy[noSoulMate] == address(0));
        // get the price of the soul
        price = soulPrices[noSoulMate];
        // Soul must be for sale
        require(price > 0);
        require(bytes(reasons[noSoulMate]).length > 0);
        // Msg sender needs to pay the soul price
        require(msg.value >= price);
        charonsObol = msg.value / obol;

        // check for wrap around
        require(soulsOwned[msg.sender] + 1 > soulsOwned[msg.sender]);

        // pay Charon
        payCharon(charonsObol);
        // pay the soul owner
        noSoulMate.transfer(msg.value - charonsObol);

        // Update the soul stats
        soulsForSale -= 1;
        soulsSold += 1;
        // Increase the sender's balance by the appropriate amount of souls ;-)
        soulsOwned[msg.sender] += 1;
        ownedBy[noSoulMate] = msg.sender;
        // log the transfer
        SoulTransfer(noSoulMate, msg.sender);

        // and give away napkins proportional to obol plus 1 bonus napkin ;-)
        amount = charonsObol / napkinPrice + unit;
        amount = checkAmount(amount);
        if (amount > 0){
            // only payout napkins if they are available
            payOutNapkins(amount);
        }

        return amount;
    }

    // can transfer a soul to a different account, but beware you have to pay Charon again!
    function transferSoul(address _to, address noSoulMate) public payable{
        uint256 charonsObol;

        // require correct ownership
        require(ownedBy[noSoulMate] == msg.sender);
        require(soulsOwned[_to] + 1 > soulsOwned[_to]);
        // require transfer fee is payed again
        charonsObol = soulPrices[noSoulMate] / obol;
        require(msg.value >= charonsObol);
        // pay Charon
        payCharon(msg.value);
        // transfer the soul
        soulsOwned[msg.sender] -= 1;
        soulsOwned[_to] += 1;
        ownedBy[noSoulMate] = _to;

        // Log the soul transfer
        SoulTransfer(msg.sender, _to);
    }

    // logs and pays charon fees
    function payCharon(uint256 obolValue) internal{
        totalObol += obolValue;
        charonsBoat.transfer(obolValue);
    }

    // checks if napkins are still available and adjusts amount accordingly
    function checkAmount(uint256 amount) internal constant returns(uint256 checkedAmount){

        if (amount > balances[this]){
            checkedAmount = balances[this];
        } else {
            checkedAmount = amount;
        }

        return checkedAmount;
    }

    // transfers napkins to people
    function payOutNapkins(uint256 amount) internal{
        // check for amount and wrap around
        require(amount > 0);
        // yeah some sanity check
        require(amount <= balances[this]);

        // send napkins from contract to msg.sender
        balances[this] -= amount;
        balances[msg.sender] += amount;
        // log napkin transfer
        Transfer(this, msg.sender, amount);
    }

}

    Contract ABI  
[{"constant":true,"inputs":[{"name":"noSoulMate","type":"address"}],"name":"soulIsOwnedBy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_amount","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"soulOwner","type":"address"}],"name":"ownsSouls","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"soulsForSale","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"soulsSold","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalObol","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"napkinPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"charonsBoat","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"fee","type":"uint256"}],"name":"changeBookingFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"noSoulMate","type":"address"}],"name":"transferSoul","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"bookingFee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"noSoulMate","type":"address"}],"name":"buySoul","outputs":[{"name":"amount","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"noSoulMate","type":"address"}],"name":"soldSoulBecause","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"unit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"page","type":"uint256"}],"name":"soulBookPage","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"reason","type":"string"},{"name":"price","type":"uint256"}],"name":"sellSoul","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"noSoulMate","type":"address"}],"name":"soldSoulFor","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newBoat","type":"address"}],"name":"changeBoat","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"obol","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"}],"name":"SoulTransfer","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":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"}]

  Contract Creation Code Switch To Opcodes View
6060604052341561000f57600080fd5b60078054600160a060020a03338116600160a060020a03199283168117909355600880549092169092179055662e2f6e5e1480006009556000600a819055600b819055600c81905530909116815260208190526040902064218711a000905561008863423883c06401000000006105d861008d82021704565b610128565b6000811161009a57600080fd5b600160a060020a0330166000908152602081905260409020548111156100bf57600080fd5b600160a060020a03308116600081815260208190526040808220805486900390553390931680825290839020805485019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a350565b611062806101376000396000f300606060405236156101675763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630274d5ff811461019e57806306fdde03146101d9578063095ea7b31461026357806311db6e0e14610299578063146e7eea146102ca57806318160ddd146102dd57806323b872dd146102f05780632bb20f4a14610318578063313ce5671461032b578063434afdfc146103545780634414d940146103675780634717f25a1461037a5780635083b29f1461038d578063655ec3e4146103a55780636c788a0d146103bf57806370a08231146103d25780638773c0d0146103f15780638da5cb5b146104055780638e49cf5c14610418578063907af6c01461043757806391f4b7ff1461044a578063923480551461046057806395d89b41146104a8578063a9059cbb146104bb578063ac045aca146104dd578063dd62ed3e146104fc578063f9952ecf14610521578063f9d3b4e914610540575b6402540be4003404600061017a82610553565b905081811461018857600080fd5b6101913461059a565b61019a816105d8565b5050005b34156101a957600080fd5b6101bd600160a060020a0360043516610673565b604051600160a060020a03909116815260200160405180910390f35b34156101e457600080fd5b6101ec610691565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610228578082015183820152602001610210565b50505050905090810190601f1680156102555780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561026e57600080fd5b610285600160a060020a03600435166024356106c8565b604051901515815260200160405180910390f35b34156102a457600080fd5b6102b8600160a060020a0360043516610735565b60405190815260200160405180910390f35b34156102d557600080fd5b6102b8610750565b34156102e857600080fd5b6102b8610756565b34156102fb57600080fd5b610285600160a060020a0360043581169060243516604435610760565b341561032357600080fd5b6102b861087a565b341561033657600080fd5b61033e610880565b60405160ff909116815260200160405180910390f35b341561035f57600080fd5b6102b8610885565b341561037257600080fd5b6102b861088b565b341561038557600080fd5b6101bd610894565b341561039857600080fd5b6103a36004356108a3565b005b6103a3600160a060020a03600435811690602435166108c3565b34156103ca57600080fd5b6102b86109d9565b34156103dd57600080fd5b6102b8600160a060020a03600435166109df565b6102b8600160a060020a03600435166109fa565b341561041057600080fd5b6101bd610bbc565b341561042357600080fd5b6101ec600160a060020a0360043516610bcb565b341561044257600080fd5b6102b8610c98565b341561045557600080fd5b6101bd600435610c9f565b6103a360046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496505093359350610cba92505050565b34156104b357600080fd5b6101ec610df8565b34156104c657600080fd5b610285600160a060020a0360043516602435610e2f565b34156104e857600080fd5b6102b8600160a060020a0360043516610ef7565b341561050757600080fd5b6102b8600160a060020a0360043581169060243516610f12565b341561052c57600080fd5b6103a3600160a060020a0360043516610f3d565b341561054b57600080fd5b61033e610f87565b600160a060020a0330166000908152602081905260408120548211156105925750600160a060020a033016600090815260208190526040902054610595565b50805b919050565b600c805482019055600854600160a060020a031681156108fc0282604051600060405180830381858888f1935050505015156105d557600080fd5b50565b600081116105e557600080fd5b600160a060020a03301660009081526020819052604090205481111561060a57600080fd5b600160a060020a03308116600081815260208190526040808220805486900390553390931680825290839020805485019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a350565b600160a060020a039081166000908152600460205260409020541690565b60408051908101604052600c81527f536f756c204e61706b696e730000000000000000000000000000000000000000602082015281565b600160a060020a03338116600081815260016020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b600160a060020a031660009081526005602052604090205490565b600a5481565b64218711a0005b90565b600160a060020a0383166000908152602081905260408120548290108015906107b05750600160a060020a0380851660009081526001602090815260408083203390941683529290522054829010155b80156107bc5750600082115b80156107e15750600160a060020a038316600090815260208190526040902054828101115b1561086f57600160a060020a03808516600081815260208181526040808320805488900390556001825280832033861684528252808320805488900390559387168083529082905290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a3506001610873565b5060005b9392505050565b600b5481565b600681565b600c5481565b6402540be40081565b600854600160a060020a031681565b60075433600160a060020a039081169116146108be57600080fd5b600955565b600160a060020a0381811660009081526004602052604081205490913381169116146108ee57600080fd5b600160a060020a038316600090815260056020526040902054600181011161091557600080fd5b50600160a060020a038116600090815260036020526040902054600a9004348190101561094157600080fd5b61094a3461059a565b600160a060020a0333811660008181526005602090815260408083208054600019019055878516808452818420805460010190559487168352600490915290819020805473ffffffffffffffffffffffffffffffffffffffff1916841790557f73eab74bf16ca67b47d844630cef7b6ac6cb7a25b3271d22463406c90a3bba05905160405180910390a3505050565b60095481565b600160a060020a031660009081526020819052604090205490565b600160a060020a038181166000908152600460205260408120549091829182911615610a2557600080fd5b50600160a060020a038316600090815260036020526040812054908111610a4b57600080fd5b600160a060020a038416600090815260026020819052604082205460001961010060018316150201160411610a7f57600080fd5b3481901015610a8d57600080fd5b33600160a060020a0316600090815260056020526040902054600a340492506001810111610aba57600080fd5b610ac38261059a565b83600160a060020a03166108fc8334039081150290604051600060405180830381858888f193505050501515610af857600080fd5b600a8054600019019055600b80546001908101909155600160a060020a03338116600081815260056020908152604080832080549096019095559288168082526004909352839020805473ffffffffffffffffffffffffffffffffffffffff191682179055917f73eab74bf16ca67b47d844630cef7b6ac6cb7a25b3271d22463406c90a3bba05905160405180910390a3620f42406402540be4008304019250610ba183610553565b92506000831115610bb557610bb5836105d8565b5050919050565b600754600160a060020a031681565b610bd3610f8c565b6002600083600160a060020a0316600160a060020a031681526020019081526020016000208054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c8c5780601f10610c6157610100808354040283529160200191610c8c565b820191906000526020600020905b815481529060010190602001808311610c6f57829003601f168201915b50505050509050919050565b620f424081565b600090815260066020526040902054600160a060020a031690565b600160a060020a033316600090815260026020526040812081845111610cdf57600080fd5b600954341015610cee57600080fd5b600a8304915060008211610d0157600080fd5b80546002600019610100600184161502019091160415610d2057600080fd5b600160a060020a03331660009081526003602052604090205415610d4357600080fd5b600160a060020a033381166000908152600460205260409020541615610d6857600080fd5b610d713461059a565b600160a060020a0333166000908152600260205260409020848051610d9a929160200190610f9e565b505050600160a060020a033316600081815260036020908152604080832094909455600b54600a805490910183526006909152929020805473ffffffffffffffffffffffffffffffffffffffff191690911790558054600101905550565b60408051908101604052600481527f534f554c00000000000000000000000000000000000000000000000000000000602082015281565b600160a060020a033316600090815260208190526040812054829010801590610e585750600082115b8015610e7d5750600160a060020a038316600090815260208190526040902054828101115b15610eef57600160a060020a033381166000818152602081905260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600161072f565b50600061072f565b600160a060020a031660009081526003602052604090205490565b600160a060020a03918216600090815260016020908152604080832093909416825291909152205490565b60075433600160a060020a03908116911614610f5857600080fd5b6008805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600a81565b60206040519081016040526000815290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610fdf57805160ff191683800117855561100c565b8280016001018555821561100c579182015b8281111561100c578251825591602001919060010190610ff1565b5061101892915061101c565b5090565b61075d91905b8082111561101857600081556001016110225600a165627a7a723058208ae5e58b78d75ae4ad58d7467363ad20e9b8a539106b699ae79bca65ad42724d0029

   Swarm Source:
bzzr://8ae5e58b78d75ae4ad58d7467363ad20e9b8a539106b699ae79bca65ad42724d

 

View All
Block Age txn Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "downvote" button for any spammy posts, and the "upvote" for interesting conversations.