Contract 0x59e0520c300657a8218e6c21a2a48682f9942b66

 
TokenMaker.app contract has migrated to a new address.

Contract Overview

TokenMaker.app: Old Contract
Balance:
0 Ether

EtherValue:
$0.00

Token:
Txn Hash
Block
From
To
Value
0x6b9d90e1d7995f2b50fcef113bc42cfceb1531c8fb67522b82f738be1f0b9c0396714172020-03-14 19:17:49355 days 3 hrs agoTokenMaker.app: Deployer IN  TokenMaker.app: Old Contract0 Ether0.0000649722
0x318d4a9088beeb6fb3720f760c4c44594b92cb4d1fa7a6eabde459920835024596672072020-03-14 3:43:54355 days 19 hrs ago0xdf9611b03ee0c419d0506f108014f3619be0860e IN  TokenMaker.app: Old Contract0.1 Ether0.0101398088
0x2d3242f12c1fd30b10f69b19fe846f8f567bf2fa50f52965052251cfabd6ff7596671322020-03-14 3:25:23355 days 19 hrs ago0xdf9611b03ee0c419d0506f108014f3619be0860e IN  TokenMaker.app: Old Contract0.1 Ether0.0102799768
0xd9551ceb28d1f33b93c0b256d409b2d07c621671de42f7c5057fda072a35583796671262020-03-14 3:23:25355 days 19 hrs ago0xdf9611b03ee0c419d0506f108014f3619be0860e IN  TokenMaker.app: Old Contract0.1 Ether0.0103865448
0xf321cde97c9c1d287c8022c7525038c31e09e51ca26f82db2b0b31d62b2062e696614332020-03-13 5:56:00356 days 16 hrs ago0xe1c6986240edfc8e4bb4521ab29163f580035f50 IN  TokenMaker.app: Old Contract0 Ether0.1253953899
0xb9a7947a04019953fd82b90cfc02434bcdf4e4c8015083cfd38818cf17ad3b6996613452020-03-13 5:37:28356 days 17 hrs ago0x53f0abdf2b6889d68b9f86bc757a4e2cb7ff430a IN  TokenMaker.app: Old Contract0.1 Ether0.0644549550
0xda1b0599cba8b90b99e204d19aa40f3a757cc8479caec43e804bae7c117e012396580352020-03-12 17:25:05357 days 5 hrs ago0xc931bac8d4570356cb372cb8edc8c5a4812f5580 IN  TokenMaker.app: Old Contract0.1 Ether0.21272155298168.02
0x66f349707db6d00301f4c37a6c33e4a8bdd7944a6dc998a0779b492c78f8959196575932020-03-12 15:42:13357 days 7 hrs ago0xc931bac8d4570356cb372cb8edc8c5a4812f5580 IN  TokenMaker.app: Old Contract0.1 Ether0.21107427165
0x5a460edf85385aeae4e27e9f8140310db725d68bb00416b26cc5812424faa51796436672020-03-10 12:11:59359 days 10 hrs ago0x06ac7a2cd31533f8cc92dce9aafca1cfb3f46d98 IN  TokenMaker.app: Old Contract0.1 Ether0.0101263768
0x100ffa24302a35c6554872d2724a1bc99e2ea5216f59d66c42fbdfc47adfe3ad96364742020-03-09 9:39:48360 days 13 hrs ago0xee07af028a526616f55d1e3296f562a5993346fb IN  TokenMaker.app: Old Contract0.1 Ether0.01226857459.1
0xb652e50be2fea0b39034fdd48347505629b6df681aa53e049d8dd4a7c8f59fcc96282942020-03-08 3:17:03361 days 19 hrs agoDecentralizeCurrency: Deployer IN  TokenMaker.app: Old Contract0.1 Ether0.0097148233327.482
0x86e45005ccc79228da687e182ce00451363eebccf65621d080879c7d409e4b7396276002020-03-08 0:48:52361 days 21 hrs ago0x2db21d1e65122b009ecf82d9c5ff4e619b960a0b IN  TokenMaker.app: Old Contract0.1 Ether0.008953497
0x44c2d4d03d4925ee21fdeccfcc55b3752b3aca2d439ffd8f69ec22df1552378296153142020-03-06 3:57:29363 days 18 hrs ago0x56aec5651361c735b5a44810430194e4e542b7d9 IN  TokenMaker.app: Old Contract0.1 Ether0.0090888147
0x445bea79222ebecec95b713c8fc039bb3bbd90d175c565f486aec2621453fb3d95840102020-03-01 8:11:07368 days 14 hrs ago0x5cd8ab9bf17aa7cdba523248fc8518762ea33c2a IN  TokenMaker.app: Old Contract0.1 Ether0.0102333288
0x1427c1afdf623c8020e5026736564b3a79d4ab459c638a68cfcab4a315c92f6695192972020-02-20 9:29:53378 days 13 hrs ago0xe1c6986240edfc8e4bb4521ab29163f580035f50 IN  TokenMaker.app: Old Contract0 Ether0.0126496510
0x8f2eff4a09ae43007b004b41ab35bb8893bc105a4ab3593c564dccca528654a495104972020-02-19 0:58:56379 days 21 hrs ago0x850ae67e3324b314897699f3f3740eb031771b2b IN  TokenMaker.app: Old Contract0.1 Ether0.0101403848
0xfb6a9b171f8d4d335324f4801ac6e1a221f9eca45ef4d128841ca3e240dec4c695069742020-02-18 11:56:53380 days 10 hrs ago0x850ae67e3324b314897699f3f3740eb031771b2b IN  TokenMaker.app: Old Contract0.1 Ether0.0109701247468.666
0xaf61abf1683660eb20baeda2e06f3646be362525c2dc793adbb60c3781ac488c94656052020-02-12 2:49:37386 days 19 hrs ago0x070b1513cb30fd2a32cd77e57da772d1f2e8f1db IN  TokenMaker.app: Old Contract0.1 Ether0.00780225386.1
0x481821c2cdcf05a235bf21be4271c13756b205fcd9bd89949a7899beffc20c3994651772020-02-12 1:12:33386 days 21 hrs agoTokenMaker.app: Deployer IN  TokenMaker.app: Old Contract0 Ether0.0000974583
0x662f9a7b01e42f22d2fca84a68d0abb5cb53faf02ee801c72560cfeb732cb6b994534242020-02-10 6:21:47388 days 16 hrs ago0xe1c6986240edfc8e4bb4521ab29163f580035f50 IN  TokenMaker.app: Old Contract0 Ether0.0102263848
0x5b64c971bc834bef70dc0c8c4f5b84fd0011b2338b216caf8b4c20b009c128da94359982020-02-07 14:08:04391 days 8 hrs ago0x06ac7a2cd31533f8cc92dce9aafca1cfb3f46d98 IN  TokenMaker.app: Old Contract0.1 Ether0.0076747086
0xaf4fcae122b62993c2c4acee88937aa410527bb2b31dfbf46afd889197a26a4b94346262020-02-07 8:53:37391 days 13 hrs ago0xe1c6986240edfc8e4bb4521ab29163f580035f50 IN  TokenMaker.app: Old Contract1 Ether0.0002622355
0xc3bdfb2073ee7641af86612ab5cc5ed8395fa17137ab5908524a7f911eb6a2b594266202020-02-06 3:09:35392 days 19 hrs ago0x1a60d5802259f1222bfa2941a4cde6a57e4dd365 IN  TokenMaker.app: Old Contract0.1 Ether0.006395355
0x65904561191c29fe13dbbcfaec0567d2483e659f6956d1d3468ef22cecbffd6994087642020-02-03 9:30:28395 days 13 hrs ago0x70980e3379e78626cb15c739742a4972151048bc IN  TokenMaker.app: Old Contract0.1 Ether0.0077897646
0x8ca65ae7b8d097713bc91a1aeaebcae4fe31040953f0cc6d4a0e4a4a5b4c98f493893372020-01-31 9:51:30398 days 12 hrs ago0x9cfcbee01d7a6710c6f89f3d3895b4d24e6017b7 IN  TokenMaker.app: Old Contract0.1 Ether0.010233048
[ Download CSV Export 

OVERVIEW

The legacy contract for TokenMaker.app.

Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x6b9d90e1d7995f2b50fcef113bc42cfceb1531c8fb67522b82f738be1f0b9c0396714172020-03-14 19:17:49355 days 3 hrs ago TokenMaker.app: Old ContractTokenMaker.app: Deployer1.5 Ether
0x318d4a9088beeb6fb3720f760c4c44594b92cb4d1fa7a6eabde459920835024596672072020-03-14 3:43:54355 days 19 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0x2d3242f12c1fd30b10f69b19fe846f8f567bf2fa50f52965052251cfabd6ff7596671322020-03-14 3:25:23355 days 19 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0xd9551ceb28d1f33b93c0b256d409b2d07c621671de42f7c5057fda072a35583796671262020-03-14 3:23:25355 days 19 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0xf321cde97c9c1d287c8022c7525038c31e09e51ca26f82db2b0b31d62b2062e696614332020-03-13 5:56:00356 days 16 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0xb9a7947a04019953fd82b90cfc02434bcdf4e4c8015083cfd38818cf17ad3b6996613452020-03-13 5:37:28356 days 17 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0xda1b0599cba8b90b99e204d19aa40f3a757cc8479caec43e804bae7c117e012396580352020-03-12 17:25:05357 days 5 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0x66f349707db6d00301f4c37a6c33e4a8bdd7944a6dc998a0779b492c78f8959196575932020-03-12 15:42:13357 days 7 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0x5a460edf85385aeae4e27e9f8140310db725d68bb00416b26cc5812424faa51796436672020-03-10 12:11:59359 days 10 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0x100ffa24302a35c6554872d2724a1bc99e2ea5216f59d66c42fbdfc47adfe3ad96364742020-03-09 9:39:48360 days 13 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0xb652e50be2fea0b39034fdd48347505629b6df681aa53e049d8dd4a7c8f59fcc96282942020-03-08 3:17:03361 days 19 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0x86e45005ccc79228da687e182ce00451363eebccf65621d080879c7d409e4b7396276002020-03-08 0:48:52361 days 21 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0x44c2d4d03d4925ee21fdeccfcc55b3752b3aca2d439ffd8f69ec22df1552378296153142020-03-06 3:57:29363 days 18 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0x445bea79222ebecec95b713c8fc039bb3bbd90d175c565f486aec2621453fb3d95840102020-03-01 8:11:07368 days 14 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0x1427c1afdf623c8020e5026736564b3a79d4ab459c638a68cfcab4a315c92f6695192972020-02-20 9:29:53378 days 13 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0x8f2eff4a09ae43007b004b41ab35bb8893bc105a4ab3593c564dccca528654a495104972020-02-19 0:58:56379 days 21 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0xfb6a9b171f8d4d335324f4801ac6e1a221f9eca45ef4d128841ca3e240dec4c695069742020-02-18 11:56:53380 days 10 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0xaf61abf1683660eb20baeda2e06f3646be362525c2dc793adbb60c3781ac488c94656052020-02-12 2:49:37386 days 19 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0x481821c2cdcf05a235bf21be4271c13756b205fcd9bd89949a7899beffc20c3994651772020-02-12 1:12:33386 days 21 hrs ago TokenMaker.app: Old ContractTokenMaker.app: Deployer7.0114129827725 Ether
0x662f9a7b01e42f22d2fca84a68d0abb5cb53faf02ee801c72560cfeb732cb6b994534242020-02-10 6:21:47388 days 16 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0x5b64c971bc834bef70dc0c8c4f5b84fd0011b2338b216caf8b4c20b009c128da94359982020-02-07 14:08:04391 days 8 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0xaf4fcae122b62993c2c4acee88937aa410527bb2b31dfbf46afd889197a26a4b94346262020-02-07 8:53:37391 days 13 hrs ago TokenMaker.app: Old ContractTokenMaker.app: Deployer1 Ether
0xc3bdfb2073ee7641af86612ab5cc5ed8395fa17137ab5908524a7f911eb6a2b594266202020-02-06 3:09:35392 days 19 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0x65904561191c29fe13dbbcfaec0567d2483e659f6956d1d3468ef22cecbffd6994087642020-02-03 9:30:28395 days 13 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
0x8ca65ae7b8d097713bc91a1aeaebcae4fe31040953f0cc6d4a0e4a4a5b4c98f493893372020-01-31 9:51:30398 days 12 hrs ago TokenMaker.app: Old Contract  Contract Creation0 Ether
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TokenMaker

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-03-01
*/

pragma solidity ^0.4.24;
//ERC20
contract ERC20Ownable {
    address public owner;

    function ERC20Ownable() public{
        owner = msg.sender;
    }

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }
    function transferOwnership(address newOwner) onlyOwner public{
        if (newOwner != address(0)) {
            owner = newOwner;
        }
    }
}
contract ERC20 {
    function transfer(address to, uint256 value) public returns (bool);
    function balanceOf(address who) public view returns (uint256);
    event Transfer(address indexed from, address indexed to, uint256 value);
}

contract ERC20Token is ERC20,ERC20Ownable {
    
    mapping (address => uint256) balances;
	mapping (address => mapping (address => uint256)) allowed;
	
    event Transfer(
		address indexed _from,
		address indexed _to,
		uint256 _value
		);

	event Approval(
		address indexed _owner,
		address indexed _spender,
		uint256 _value
		);
		
	//Fix for short address attack against ERC20
	modifier onlyPayloadSize(uint size) {
		assert(msg.data.length == size + 4);
		_;
	}

	function balanceOf(address _owner) constant public returns (uint256) {
		return balances[_owner];
	}

	function transfer(address _to, uint256 _value) onlyPayloadSize(2*32) public returns (bool){
		require(balances[msg.sender] >= _value && _value > 0);
	    balances[msg.sender] -= _value;
	    balances[_to] += _value;
	    emit Transfer(msg.sender, _to, _value);
	    return true;
    }

	function transferFrom(address _from, address _to, uint256 _value) public {
		require(balances[_from] >= _value && allowed[_from][msg.sender] >= _value && _value > 0);
        balances[_to] += _value;
        balances[_from] -= _value;
        allowed[_from][msg.sender] -= _value;
        emit Transfer(_from, _to, _value);
    }

	function approve(address _spender, uint256 _value) public {
		allowed[msg.sender][_spender] = _value;
		emit Approval(msg.sender, _spender, _value);
	}

    /* Approves and then calls the receiving contract */
    function approveAndCall(address _spender, uint256 _value, bytes _extraData) public returns (bool success) {
        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        //call the receiveApproval function on the contract you want to be notified. This crafts the function signature manually so one doesn't have to include a contract in here just for this.
        //receiveApproval(address _from, uint256 _value, address _tokenContract, bytes _extraData)
        //it is assumed that when does this that the call *should* succeed, otherwise one would use vanilla approve instead.
        //require(_spender.call(bytes4(keccak256("receiveApproval(address,uint256,address,bytes)")), abi.encode(msg.sender, _value, this, _extraData)));
        require(_spender.call(abi.encodeWithSelector(bytes4(keccak256("receiveApproval(address,uint256,address,bytes)")),msg.sender, _value, this, _extraData)));

        return true;
    }
    
	function allowance(address _owner, address _spender) constant public returns (uint256) {
		return allowed[_owner][_spender];
	}
}

contract ERC20StandardToken is ERC20Token {
	uint256 public totalSupply;
	string public name;
	uint256 public decimals;
	string public symbol;
	bool public mintable;


    function ERC20StandardToken(address _owner, string _name, string _symbol, uint256 _decimals, uint256 _totalSupply, bool _mintable) public {
        require(_owner != address(0));
        owner = _owner;
		decimals = _decimals;
		symbol = _symbol;
		name = _name;
		mintable = _mintable;
        totalSupply = _totalSupply;
        balances[_owner] = totalSupply;
    }
    
    function mint(uint256 amount) onlyOwner public {
		require(mintable);
		require(amount >= 0);
		balances[msg.sender] += amount;
		totalSupply += amount;
	}

    function burn(uint256 _value) onlyOwner public returns (bool) {
        require(balances[msg.sender] >= _value  && totalSupply >=_value && _value > 0);
        balances[msg.sender] -= _value;
        totalSupply -= _value;
        emit Transfer(msg.sender, 0x0, _value);
        return true;
    }
}
pragma solidity ^0.4.24;
//ERC223
contract ERC223Ownable {
    address public owner;

    function ERC223Ownable() public{
        owner = msg.sender;
    }

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }
    function transferOwnership(address newOwner) onlyOwner public{
        if (newOwner != address(0)) {
            owner = newOwner;
        }
    }
}

contract ContractReceiver {
     
    struct TKN {
        address sender;
        uint value;
        bytes data;
        bytes4 sig;
    }
    
    function tokenFallback(address _from, uint _value, bytes _data) public pure {
      TKN memory tkn;
      tkn.sender = _from;
      tkn.value = _value;
      tkn.data = _data;
      uint32 u = uint32(_data[3]) + (uint32(_data[2]) << 8) + (uint32(_data[1]) << 16) + (uint32(_data[0]) << 24);
      tkn.sig = bytes4(u);
      
      /* tkn variable is analogue of msg variable of Ether transaction
      *  tkn.sender is person who initiated this token transaction   (analogue of msg.sender)
      *  tkn.value the number of tokens that were sent   (analogue of msg.value)
      *  tkn.data is data of token transaction   (analogue of msg.data)
      *  tkn.sig is 4 bytes signature of function
      *  if data of token transaction is a function execution
      */
    }
}

contract ERC223 {
  uint public totalSupply;
  function balanceOf(address who) public view returns (uint);

  function transfer(address to, uint value) public returns (bool ok);
  function transfer(address to, uint value, bytes data) public returns (bool ok);
  function transfer(address to, uint value, bytes data, string custom_fallback) public returns (bool ok);

  event Transfer(address indexed from, address indexed to, uint value);
  event Transfer(address indexed from, address indexed to, uint value, bytes data);
}

contract SafeMath {
    uint256 constant public MAX_UINT256 =
    0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF;

    function safeAdd(uint256 x, uint256 y) pure internal returns (uint256 z) {
        if (x > MAX_UINT256 - y) revert();
        return x + y;
    }

    function safeSub(uint256 x, uint256 y) pure internal returns (uint256 z) {
        if (x < y) revert();
        return x - y;
    }

    function safeMul(uint256 x, uint256 y) pure internal returns (uint256 z) {
        if (y == 0) return 0;
        if (x > MAX_UINT256 / y) revert();
        return x * y;
    }
}

contract ERC223Token is ERC223, SafeMath {

  mapping(address => uint) balances;

  string public name;
  string public symbol;
  uint256 public decimals;
  uint256 public totalSupply;
  bool public mintable;



  function transfer(address _to, uint _value, bytes _data, string _custom_fallback) public returns (bool success) {

    if(isContract(_to)) {
        if (balanceOf(msg.sender) < _value) revert();
        balances[msg.sender] = safeSub(balanceOf(msg.sender), _value);
        balances[_to] = safeAdd(balanceOf(_to), _value);
        assert(_to.call.value(0)(bytes4(keccak256(_custom_fallback)), msg.sender, _value, _data));
        emit Transfer(msg.sender, _to, _value);
        emit Transfer(msg.sender, _to, _value, _data);
        return true;
    }
    else {
        return transferToAddress(_to, _value, _data);
    }
}


function transfer(address _to, uint _value, bytes _data) public returns (bool success) {

    if(isContract(_to)) {
        return transferToContract(_to, _value, _data);
    }
    else {
        return transferToAddress(_to, _value, _data);
    }
}

  function transfer(address _to, uint _value) public returns (bool success) {

    //standard function transfer similar to ERC20 transfer with no _data
    //added due to backwards compatibility reasons
    bytes memory empty;
    if(isContract(_to)) {
        return transferToContract(_to, _value, empty);
    }
    else {
        return transferToAddress(_to, _value, empty);
    }
}

  function isContract(address _addr) private view returns (bool is_contract) {
      uint length;
      assembly {
            //retrieve the size of the code on target address, this needs assembly
            length := extcodesize(_addr)
      }
      return (length>0);
    }

  function transferToAddress(address _to, uint _value, bytes _data) private returns (bool success) {
    if (balanceOf(msg.sender) < _value) revert();
    balances[msg.sender] = safeSub(balanceOf(msg.sender), _value);
    balances[_to] = safeAdd(balanceOf(_to), _value);
    emit Transfer(msg.sender, _to, _value);
    emit Transfer(msg.sender, _to, _value, _data);
    return true;
  }

  function transferToContract(address _to, uint _value, bytes _data) private returns (bool success) {
    if (balanceOf(msg.sender) < _value) revert();
    balances[msg.sender] = safeSub(balanceOf(msg.sender), _value);
    balances[_to] = safeAdd(balanceOf(_to), _value);
    ContractReceiver receiver = ContractReceiver(_to);
    receiver.tokenFallback(msg.sender, _value, _data);
    emit Transfer(msg.sender, _to, _value);
    emit Transfer(msg.sender, _to, _value, _data);
    return true;
}


  function balanceOf(address _owner) public view returns (uint balance) {
    return balances[_owner];
  }
}

contract ERC223StandardToken is ERC223Token,ERC223Ownable {
    
    function ERC223StandardToken(address _owner, string _name, string _symbol, uint256 _decimals, uint256 _totalSupply, bool _mintable) public {
        
        require(_owner != address(0));
        owner = _owner;
		decimals = _decimals;
		symbol = _symbol;
		name = _name;
		mintable = _mintable;
        totalSupply = _totalSupply;
        balances[_owner] = totalSupply;
        emit Transfer(address(0), _owner, totalSupply);
        emit Transfer(address(0), _owner, totalSupply, "");
    }
  
    function mint(uint256 amount) onlyOwner public {
		require(mintable);
		require(amount >= 0);
		balances[msg.sender] += amount;
		totalSupply += amount;
	}

    function burn(uint256 _value) onlyOwner public returns (bool) {
        require(balances[msg.sender] >= _value  && totalSupply >=_value && _value > 0);
        balances[msg.sender] -= _value;
        totalSupply -= _value;
        emit Transfer(msg.sender, 0x0, _value);
        return true;
    }
}
pragma solidity ^0.4.24;
contract Ownable {
    address public owner;

    function Ownable() public{
        owner = msg.sender;
    }

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }
    function transferOwnership(address newOwner) onlyOwner public{
        if (newOwner != address(0)) {
            owner = newOwner;
        }
    }
}
//TokenMaker
contract TokenMaker is Ownable{
    
	event LogERC20TokenCreated(ERC20StandardToken token);
	event LogERC223TokenCreated(ERC223StandardToken token);

    address public receiverAddress;
    uint public txFee = 0.1 ether;
    uint public VIPFee = 1 ether;

    /* VIP List */
    mapping(address => bool) public vipList;
	uint public numContracts;

    mapping(uint => address) public deployedContracts;
	mapping(address => address[]) public userDeployedContracts;

    function () payable public{}

    function getBalance(address _tokenAddress,uint _type) onlyOwner public {
      address _receiverAddress = getReceiverAddress();
      if(_tokenAddress == address(0)){
          require(_receiverAddress.send(address(this).balance));
          return;
      }
      if(_type == 0){
          ERC20 erc20 = ERC20(_tokenAddress);
          uint256 balance = erc20.balanceOf(this);
          erc20.transfer(_receiverAddress, balance);
      }else{
          ERC223 erc223 = ERC223(_tokenAddress);
          uint256 erc223_balance = erc223.balanceOf(this);
          erc223.transfer(_receiverAddress, erc223_balance);
      }
    }
    
    //Register VIP
    function registerVIP() payable public {
      require(msg.value >= VIPFee);
      address _receiverAddress = getReceiverAddress();
      require(_receiverAddress.send(msg.value));
      vipList[msg.sender] = true;
    }


    function addToVIPList(address[] _vipList) onlyOwner public {
        for (uint i =0;i<_vipList.length;i++){
            vipList[_vipList[i]] = true;
        }
    }


    function removeFromVIPList(address[] _vipList) onlyOwner public {
        for (uint i =0;i<_vipList.length;i++){
        vipList[_vipList[i]] = false;
        }
   }

    function isVIP(address _addr) public view returns (bool) {
        return _addr == owner || vipList[_addr];
    }


    function setReceiverAddress(address _addr) onlyOwner public {
        require(_addr != address(0));
        receiverAddress = _addr;
    }

    function getReceiverAddress() public view returns  (address){
        if(receiverAddress == address(0)){
            return owner;
        }

        return receiverAddress;
    }

    function setVIPFee(uint _fee) onlyOwner public {
        VIPFee = _fee;
    }


    function setTxFee(uint _fee) onlyOwner public {
        txFee = _fee;
    }

    function getUserCreatedTokens(address _owner) public view returns  (address[]){
        return userDeployedContracts[_owner];
    }
    
    function create(string _name, string _symbol, uint256 _decimals, uint256 _totalSupply,  bool _mintable,uint256 _type) payable public returns(address a){
         //check the tx fee
        uint sendValue = msg.value;
        address from = msg.sender;
	    bool vip = isVIP(from);
        if(!vip){
		    require(sendValue >= txFee);
        }
        
        address[] userAddresses = userDeployedContracts[from];

        if(_type == 0){
            ERC20StandardToken erc20Token = new ERC20StandardToken(from, _name, _symbol, _decimals, _totalSupply, _mintable);
            userAddresses.push(erc20Token);
            userDeployedContracts[from] = userAddresses;
            deployedContracts[numContracts] = erc20Token;
            numContracts++;
            emit LogERC20TokenCreated(erc20Token);
	        return erc20Token;
        }else{
            ERC223StandardToken erc223Token = new ERC223StandardToken(from, _name, _symbol, _decimals, _totalSupply, _mintable);
            userAddresses.push(erc223Token);
            userDeployedContracts[from] = userAddresses;
            deployedContracts[numContracts] = erc223Token;
            numContracts++;
            emit LogERC223TokenCreated(erc223Token);
	        return erc223Token;
        }
        
     }
    
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"receiverAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenAddress","type":"address"},{"name":"_type","type":"uint256"}],"name":"getBalance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"userDeployedContracts","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_fee","type":"uint256"}],"name":"setVIPFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"numContracts","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getReceiverAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"setReceiverAddress","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":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint256"},{"name":"_totalSupply","type":"uint256"},{"name":"_mintable","type":"bool"},{"name":"_type","type":"uint256"}],"name":"create","outputs":[{"name":"a","type":"address"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"deployedContracts","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"registerVIP","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"vipList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"getUserCreatedTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_vipList","type":"address[]"}],"name":"addToVIPList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"txFee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_fee","type":"uint256"}],"name":"setTxFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"VIPFee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"}],"name":"isVIP","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_vipList","type":"address[]"}],"name":"removeFromVIPList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"}],"name":"LogERC20TokenCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"}],"name":"LogERC223TokenCreated","type":"event"}]

608060405267016345785d8a0000600255670de0b6b3a7640000600355336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550614b4f8061006b6000396000f30060806040526004361062000127576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806316fed3e214620001295780632b04e8401462000183578063349a9d3f14620001d35780633d06242a1462000263578063524d81d31462000293578063531ebce514620002c15780638279c7db146200031b5780638da5cb5b14620003615780639817d81f14620003bb5780639ad1ee1014620004c95780639c1f61331462000539578063aa168b471462000545578063c00be1a014620005a3578063c8813ffd1462000640578063cf82046114620006a9578063f05d16f714620006d7578063f0a0a2991462000707578063f2fde38b1462000735578063f4201c3c146200077b578063f48d11af14620007d9575b005b3480156200013657600080fd5b506200014162000842565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156200019057600080fd5b50620001d1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062000868565b005b348015620001e057600080fd5b5062000221600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062000d07565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156200027057600080fd5b50620002916004803603810190808035906020019092919050505062000d55565b005b348015620002a057600080fd5b50620002ab62000dbb565b6040518082815260200191505060405180910390f35b348015620002ce57600080fd5b50620002d962000dc1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156200032857600080fd5b506200035f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062000e6d565b005b3480156200036e57600080fd5b506200037962000f4a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b62000487600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190803590602001909291908035151590602001909291908035906020019092919050505062000f6f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015620004d657600080fd5b50620004f760048036038101908080359060200190929190505050620015c8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b62000543620015fb565b005b3480156200055257600080fd5b5062000589600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050620016b7565b604051808215151515815260200191505060405180910390f35b348015620005b057600080fd5b50620005e7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050620016d7565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156200062c5780820151818401526020810190506200060f565b505050509050019250505060405180910390f35b3480156200064d57600080fd5b50620006a760048036038101908080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050620017a6565b005b348015620006b657600080fd5b50620006c162001895565b6040518082815260200191505060405180910390f35b348015620006e457600080fd5b5062000705600480360381019080803590602001909291905050506200189b565b005b3480156200071457600080fd5b506200071f62001901565b6040518082815260200191505060405180910390f35b3480156200074257600080fd5b5062000779600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062001907565b005b3480156200078857600080fd5b50620007bf600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050620019de565b604051808215151515815260200191505060405180910390f35b348015620007e657600080fd5b50620008406004803603810190808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929050505062001a8c565b005b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515620008cc57600080fd5b620008d662000dc1565b9450600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614156200096c578473ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f1935050505015156200096657600080fd5b62000cfe565b600086141562000b3c578693508373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801562000a1557600080fd5b505af115801562000a2a573d6000803e3d6000fd5b505050506040513d602081101562000a4157600080fd5b810190808051906020019092919050505092508373ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801562000af857600080fd5b505af115801562000b0d573d6000803e3d6000fd5b505050506040513d602081101562000b2457600080fd5b81019080805190602001909291905050505062000cfd565b8691508173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801562000bdb57600080fd5b505af115801562000bf0573d6000803e3d6000fd5b505050506040513d602081101562000c0757600080fd5b810190808051906020019092919050505090508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801562000cbe57600080fd5b505af115801562000cd3573d6000803e3d6000fd5b505050506040513d602081101562000cea57600080fd5b8101908080519060200190929190505050505b5b50505050505050565b60076020528160005260406000208181548110151562000d2357fe5b906000526020600020016000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562000db157600080fd5b8060038190555050565b60055481565b60008073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141562000e44576000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905062000e6a565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505b90565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562000ec957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151562000f0657600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600080600080600034955033945062000f8b85620019de565b935083151562000fa857600254861015151562000fa757600080fd5b5b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002092506000881415620012d857848d8d8d8d8d6200100362001b7b565b808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001806020018060200186815260200185815260200184151515158152602001838103835288818151815260200191508051906020019080838360005b838110156200108e57808201518184015260208101905062001071565b50505050905090810190601f168015620010bc5780820380516001836020036101000a031916815260200191505b50838103825287818151815260200191508051906020019080838360005b83811015620010f7578082015181840152602081019050620010da565b50505050905090810190601f168015620011255780820380516001836020036101000a031916815260200191505b5098505050505050505050604051809103906000f0801580156200114d573d6000803e3d6000fd5b509150828290806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505082600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209080546200120592919062001b8c565b508160066000600554815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506005600081548092919060010191905055507f55906634f205dcd28c329ca8424a22c668bf298636551c3d7d5db6d49fc4c9d582604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1819650620015b8565b848d8d8d8d8d620012e862001be3565b808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001806020018060200186815260200185815260200184151515158152602001838103835288818151815260200191508051906020019080838360005b838110156200137357808201518184015260208101905062001356565b50505050905090810190601f168015620013a15780820380516001836020036101000a031916815260200191505b50838103825287818151815260200191508051906020019080838360005b83811015620013dc578082015181840152602081019050620013bf565b50505050905090810190601f1680156200140a5780820380516001836020036101000a031916815260200191505b5098505050505050505050604051809103906000f08015801562001432573d6000803e3d6000fd5b509050828190806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505082600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020908054620014ea92919062001b8c565b508060066000600554815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506005600081548092919060010191905055507f466a615e5019e3c0b94007f5ec83b405746f566980f425297929c66e78297ca981604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a18096505b5050505050509695505050505050565b60066020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060035434101515156200160f57600080fd5b6200161962000dc1565b90508073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015156200165c57600080fd5b6001600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60046020528060005260406000206000915054906101000a900460ff1681565b6060600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054806020026020016040519081016040528092919081815260200182805480156200179a57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190600101908083116200174f575b50505050509050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156200180457600080fd5b600090505b8151811015620018915760016004600084848151811015156200182857fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808060010191505062001809565b5050565b60025481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515620018f757600080fd5b8060028190555050565b60035481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156200196357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515620019db57806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16148062001a855750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b9050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562001aea57600080fd5b600090505b815181101562001b7757600060046000848481518110151562001b0e57fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808060010191505062001aef565b5050565b6040516116658062001c3b83390190565b82805482825590600052602060002090810192821562001bd05760005260206000209182015b8281111562001bcf57825482559160010191906001019062001bb2565b5b50905062001bdf919062001bf4565b5090565b60405161188480620032a083390190565b62001c3791905b8082111562001c3357600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555060010162001bfb565b5090565b90560060806040523480156200001157600080fd5b506040516200166538038062001665833981018060405281019080805190602001909291908051820192919060200180518201929190602001805190602001909291908051906020019092919080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614151515620000e857600080fd5b856000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600581905550836006908051906020019062000147929190620001d4565b50846004908051906020019062000160929190620001d4565b5080600760006101000a81548160ff02191690831515021790555081600381905550600354600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050505050505062000283565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200021757805160ff191683800117855562000248565b8280016001018555821562000248579182015b82811115620002475782518255916020019190600101906200022a565b5b5090506200025791906200025b565b5090565b6200028091905b808211156200027c57600081600090555060010162000262565b5090565b90565b6113d280620002936000396000f3006080604052600436106100db576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100e0578063095ea7b31461017057806318160ddd146101bd57806323b872dd146101e8578063313ce5671461025557806342966c68146102805780634bf365df146102c557806370a08231146102f45780638da5cb5b1461034b57806395d89b41146103a2578063a0712d6814610432578063a9059cbb1461045f578063cae9ca51146104c4578063dd62ed3e1461056f578063f2fde38b146105e6575b600080fd5b3480156100ec57600080fd5b506100f5610629565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561013557808201518184015260208101905061011a565b50505050905090810190601f1680156101625780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561017c57600080fd5b506101bb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106c7565b005b3480156101c957600080fd5b506101d26107b1565b6040518082815260200191505060405180910390f35b3480156101f457600080fd5b50610253600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506107b7565b005b34801561026157600080fd5b5061026a610a27565b6040518082815260200191505060405180910390f35b34801561028c57600080fd5b506102ab60048036038101908080359060200190929190505050610a2d565b604051808215151515815260200191505060405180910390f35b3480156102d157600080fd5b506102da610ba8565b604051808215151515815260200191505060405180910390f35b34801561030057600080fd5b50610335600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bbb565b6040518082815260200191505060405180910390f35b34801561035757600080fd5b50610360610c04565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103ae57600080fd5b506103b7610c29565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103f75780820151818401526020810190506103dc565b50505050905090810190601f1680156104245780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561043e57600080fd5b5061045d60048036038101908080359060200190929190505050610cc7565b005b34801561046b57600080fd5b506104aa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610dad565b604051808215151515815260200191505060405180910390f35b3480156104d057600080fd5b50610555600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f27565b604051808215151515815260200191505060405180910390f35b34801561057b57600080fd5b506105d0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061124a565b6040518082815260200191505060405180910390f35b3480156105f257600080fd5b50610627600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112d1565b005b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106bf5780601f10610694576101008083540402835291602001916106bf565b820191906000526020600020905b8154815290600101906020018083116106a257829003601f168201915b505050505081565b80600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a35050565b60035481565b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015610882575080600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b801561088e5750600081115b151561089957600080fd5b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555080600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555080600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b60055481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610a8a57600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015610adb57508160035410155b8015610ae75750600082115b1515610af257600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508160036000828254039250508190555060003373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050919050565b600760009054906101000a900460ff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60068054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cbf5780601f10610c9457610100808354040283529160200191610cbf565b820191906000526020600020905b815481529060010190602001808311610ca257829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d2257600080fd5b600760009054906101000a900460ff161515610d3d57600080fd5b60008110151515610d4d57600080fd5b80600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508060036000828254019250508190555050565b60006040600481016000369050141515610dc357fe5b82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015610e125750600083115b1515610e1d57600080fd5b82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555082600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505092915050565b600082600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff1660405180807f72656365697665417070726f76616c28616464726573732c75696e743235362c81526020017f616464726573732c627974657329000000000000000000000000000000000000815250602e019050604051809103902033853086604051602401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611133578082015181840152602081019050611118565b50505050905090810190601f1680156111605780820380516001836020036101000a031916815260200191505b5095505050505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405180828051906020019080838360005b838110156111f25780820151818401526020810190506111d7565b50505050905090810190601f16801561121f5780820380516001836020036101000a031916815260200191505b509150506000604051808303816000865af1915050151561123f57600080fd5b600190509392505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561132c57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415156113a357806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b505600a165627a7a72305820d278d6ffa66445dd36c4270b2192a11f0edbb1fc177ae277dd24f99e2bda6b60002960806040523480156200001157600080fd5b50604051620018843803806200188483398101806040528101908080519060200190929190805182019291906020018051820192919060200180519060200190929190805190602001909291908051906020019092919050505033600660016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614151515620000e957600080fd5b85600660016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600481905550836003908051906020019062000149929190620002ba565b50846002908051906020019062000162929190620002ba565b5080600660006101000a81548160ff02191690831515021790555081600581905550600554600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6005546040518082815260200191505060405180910390a38573ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c1660055460405180828152602001806020018281038252600081526020016020019250505060405180910390a350505050505062000369565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002fd57805160ff19168380011785556200032e565b828001600101855582156200032e579182015b828111156200032d57825182559160200191906001019062000310565b5b5090506200033d919062000341565b5090565b6200036691905b808211156200036257600081600090555060010162000348565b5090565b90565b61150b80620003796000396000f3006080604052600436106100d0576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100d557806318160ddd14610165578063313ce5671461019057806333a581d2146101bb57806342966c68146101e65780634bf365df1461022b57806370a082311461025a5780638da5cb5b146102b157806395d89b4114610308578063a0712d6814610398578063a9059cbb146103c5578063be45fd621461042a578063f2fde38b146104d5578063f6368f8a14610518575b600080fd5b3480156100e157600080fd5b506100ea610609565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561012a57808201518184015260208101905061010f565b50505050905090810190601f1680156101575780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561017157600080fd5b5061017a6106a7565b6040518082815260200191505060405180910390f35b34801561019c57600080fd5b506101a56106ad565b6040518082815260200191505060405180910390f35b3480156101c757600080fd5b506101d06106b3565b6040518082815260200191505060405180910390f35b3480156101f257600080fd5b50610211600480360381019080803590602001909291905050506106d7565b604051808215151515815260200191505060405180910390f35b34801561023757600080fd5b50610240610853565b604051808215151515815260200191505060405180910390f35b34801561026657600080fd5b5061029b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610866565b6040518082815260200191505060405180910390f35b3480156102bd57600080fd5b506102c66108af565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561031457600080fd5b5061031d6108d5565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561035d578082015181840152602081019050610342565b50505050905090810190601f16801561038a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103a457600080fd5b506103c360048036038101908080359060200190929190505050610973565b005b3480156103d157600080fd5b50610410600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a5a565b604051808215151515815260200191505060405180910390f35b34801561043657600080fd5b506104bb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610a93565b604051808215151515815260200191505060405180910390f35b3480156104e157600080fd5b50610516600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610aca565b005b34801561052457600080fd5b506105ef600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610ba1565b604051808215151515815260200191505060405180910390f35b60028054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561069f5780601f106106745761010080835404028352916020019161069f565b820191906000526020600020905b81548152906001019060200180831161068257829003601f168201915b505050505081565b60055481565b60045481565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81565b6000600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561073557600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015801561078657508160055410155b80156107925750600082115b151561079d57600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508160056000828254039250508190555060003373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050919050565b600660009054906101000a900460ff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60038054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561096b5780601f106109405761010080835404028352916020019161096b565b820191906000526020600020905b81548152906001019060200180831161094e57829003601f168201915b505050505081565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156109cf57600080fd5b600660009054906101000a900460ff1615156109ea57600080fd5b600081101515156109fa57600080fd5b80600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508060056000828254019250508190555050565b60006060610a6784610f43565b15610a7e57610a77848483610f56565b9150610a8c565b610a89848483611286565b91505b5092915050565b6000610a9e84610f43565b15610ab557610aae848484610f56565b9050610ac3565b610ac0848484611286565b90505b9392505050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610b2657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515610b9e5780600660016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b6000610bac85610f43565b15610f2d5783610bbb33610866565b1015610bc657600080fd5b610bd8610bd233610866565b85611489565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610c2d610c2786610866565b856114a3565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff166000836040518082805190602001908083835b602083101515610cbf5780518252602082019150602081019050602083039250610c9a565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390207c01000000000000000000000000000000000000000000000000000000009004903387876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828051906020019080838360005b83811015610da0578082015181840152602081019050610d85565b50505050905090810190601f168015610dcd5780820380516001836020036101000a031916815260200191505b50935050505060006040518083038185885af193505050501515610ded57fe5b8473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a38473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c1686866040518083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ee9578082015181840152602081019050610ece565b50505050905090810190601f168015610f165780820380516001836020036101000a031916815260200191505b50935050505060405180910390a360019050610f3b565b610f38858585611286565b90505b949350505050565b600080823b905060008111915050919050565b60008083610f6333610866565b1015610f6e57600080fd5b610f80610f7a33610866565b85611489565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610fd5610fcf86610866565b856114a3565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508490508073ffffffffffffffffffffffffffffffffffffffff1663c0ee0b8a3386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156110dd5780820151818401526020810190506110c2565b50505050905090810190601f16801561110a5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561112b57600080fd5b505af115801561113f573d6000803e3d6000fd5b505050508473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a38473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c1686866040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561123f578082015181840152602081019050611224565b50505050905090810190601f16801561126c5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a360019150509392505050565b60008261129233610866565b101561129d57600080fd5b6112af6112a933610866565b84611489565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506113046112fe85610866565b846114a3565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c1685856040518083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611443578082015181840152602081019050611428565b50505050905090810190601f1680156114705780820380516001836020036101000a031916815260200191505b50935050505060405180910390a3600190509392505050565b60008183101561149857600080fd5b818303905092915050565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038311156114d457600080fd5b8183019050929150505600a165627a7a72305820a6a101b23735e514ffbac465ccf727368f0b1f580440b631127f5b7dfa8adb950029a165627a7a72305820e073c8e698648d18b1649b90271765e14251035707598929663ce7ff01fab0370029

Swarm Source

bzzr://e073c8e698648d18b1649b90271765e14251035707598929663ce7ff01fab037
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.