Contract Overview
Balance: 0 Ether
Ether Value: $0
Transactions: 1099 txns
 Latest 25 txns From a total of 1099 Transactions

TxHash Age From To Value [TxFee]
0x43617eea4488bf9532940edb2e298f66951051390051ecf740a3b8b78ed6856c11 days 19 hrs ago0xfc306e42985d71f2be279e23ed63322a1bdfef72  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40 Ether0.000294
0x01bb61cfa984504500091856f3e19035615ed69d78b4c384b3196d17331a56dc92 days 4 hrs ago0xa2d1e1979cde223aabea4b624d45edb4c88412d3  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f44.24 Ether0.002828871
0x0462786cf735f6afd05235c6328f7f81517e5a6d0481e9a639e774d5da4d34f592 days 4 hrs ago0x5fad3522cd1cfc021d8046413d57198d0f0c4c09  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f41.2718 Ether0.004295693
0xbd8116c39b6aaf1de35246bae22b0bfe11a7a6189bf7e0ee26957fe96270a25a92 days 4 hrs ago0xeabd3ad6328df6cfdab1f63e1771e744da47a933  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40.55 Ether0.003065693
0xe99fee2d98903edcb359b439dfabea1a04b79b2b367337b2caf88b7df876bfb492 days 4 hrs ago0x0f5d4b6cd492dccce84d0b295547d5d5b9276aa8  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40.3 Ether0.002018871
0x87b5af5ce98d4c1ed32c5c2ff2d9a20d27905bd154df816ce621669548c343a292 days 5 hrs ago0xc3cdc0d32d84f274ed7e782b1de793cde40a8c1a  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f41 Ether0.002828871
0x05e2756db73893026c8c7b7a38394379f8586968bef96aef6f98dae49284c0d992 days 5 hrs ago0x8dd22d31d831271fcb3fb7a55e343f1b38c09c3a  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40.3 Ether0.002018871
0x5e0297b4d4cc1c7e2781c1900133a8b5980c7434b5e8e0689625b28ee727ffe592 days 6 hrs ago0xa700b3fba3866f7623ab177d42e4f8306eacf900  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f41.5 Ether0.003065693
0xcfda5c9fc3617c4dd8aa33277242c0fcdd841eb28a4d24ad4dba186c712e2d5f92 days 6 hrs ago0x59ff0a0351e8f7334e37d79d1510119a33457828  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f41 Ether0.002828871
0x43193c7d7bb124d3d015927852cdafc0a7b30ee37f2f2b17ddb1a1427d21e78d92 days 7 hrs ago0x10bc7f76e0648900f2834b8bcbb1cbd9cf27dca7  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f410.04 Ether0.003170079
0x3854065cb5c1db549302aeb48c351cb6bf4c7c1ad84cbccc5e870f60feef9e8792 days 8 hrs ago0x55612a07059f2555c675e4ecad71a52f2addd371  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40.31 Ether0.002828871
0x93a314a426a11ffd9745e9e9c5ea4742fcc0d1ef8cfdcfe4af3803ba1004ce8f92 days 9 hrs ago0xc7fa499405f6e538c8da8adea7544bb8008bda8f  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40.85 Ether0.002018871
0xdf6cdc7fa5f1a05a7ebdf9e4196d9f98c28900710c4d097db3e25fed95b9a93492 days 12 hrs ago0x640a10a63d55e5bdcf2d2035fff4eb39c052507b  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40.355 Ether0.002828871
0xb5d6998e733cca54da936401ef830899e42b5ae85d476c43b3b7ca4511adf6dd92 days 13 hrs ago0xd4149907c84dea9a9b405c552f9446ac5660bbff  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40.51 Ether0.00733411
0x7cf94e9b68489626313f101b042c5fdc65023ed293fab39b1a5314ed5d8a052b92 days 14 hrs ago0xd4149907c84dea9a9b405c552f9446ac5660bbff  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40.51 Ether0.00147
0xfa06a226939c470400750f9cfa28fb92278b6e7de4f374779c09b1191564741a92 days 14 hrs ago0xea1e607557839777106c40237e13b31071b3b6fd  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f41.05 Ether0.004411607
0xbe49b276ff60f6feab82097fd8a2c0c8f640d281719c027e593554806fe3986292 days 16 hrs agoPoloniex_1  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40.3 Ether0.0054377187
0xb838f516e45a7f339c591033f730e56acb5c925e74cdab387e2bc01dc7f8373192 days 16 hrs ago0x479a30a14cb8e3d7f2131feb877e55417672f3c6  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f416 Ether0.002897613
0x18de3938248f38d578923758f823e3e99226092a1f45641a23d741a1d417878492 days 17 hrs ago0xc4ed0af8ae910aa069083e79aef78301f8b2c295  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f45.49 Ether0.00289602
0x75c5e65b18d831be49d9d01e54398baa7281fe657b1839d40ec6da86b491df5592 days 17 hrs ago0xe2ff47d95780bf51763cee5b46bca87afe3ead4f  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40.32 Ether0.002828871
0x70094a4ef0f21662b3861b96da3ee58a64575af1e54129c760ce1d2ac41f4a5192 days 17 hrs ago0xab5e37ab5c132b27ef9bd6bfb6f7ca0bfe24ee6f  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f41.001 Ether0.0004725
0xb1efe9030f77bddf15ca3cd76a2ea4f949836904778bda365cf70135e7f06a6192 days 23 hrs ago0x58f78cf59bd805b00803a733a337fc10c57d37d4  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40.34 Ether0.003352736
0x95f86ccfae4fd89710ef08f092ebc3455e1c1fe0e1c82661d9ff4867c45df04493 days 3 mins ago0xb6307165719154d9391055606711015f3e3c7dc3  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40.7 Ether0.002828871
0x44ea988474c6917ccdaa2712557d2ccd5339495a5ac911eb280b9978feacb74293 days 3 hrs ago0x23002e1df2169c367ec0a519525a964c742cffee  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f43 Ether0.003065693
0x2297937c29a730d7dd0a67ca79997f5c69b290685d1257a3774740642e13022493 days 4 hrs ago0xa700b3fba3866f7623ab177d42e4f8306eacf900  IN   0x393709845c63b7ac16ea60b6cda230a53693f2f40.5 Ether0.004295693
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
 Latest 25 Internal Txns, Click Here To View More View All
ParentTxHash Block Age From To Value
0x01bb61cfa984504500091856f3e19035615ed69d78b4c384b3196d17331a56dc600040792 days 4 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136964.24 Ether
0x0462786cf735f6afd05235c6328f7f81517e5a6d0481e9a639e774d5da4d34f5600039492 days 4 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136961.2718 Ether
0xbd8116c39b6aaf1de35246bae22b0bfe11a7a6189bf7e0ee26957fe96270a25a600034692 days 4 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.55 Ether
0xe99fee2d98903edcb359b439dfabea1a04b79b2b367337b2caf88b7df876bfb4600028992 days 4 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.3 Ether
0x87b5af5ce98d4c1ed32c5c2ff2d9a20d27905bd154df816ce621669548c343a2600010192 days 5 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136961 Ether
0x05e2756db73893026c8c7b7a38394379f8586968bef96aef6f98dae49284c0d9600010092 days 5 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.3 Ether
0x5e0297b4d4cc1c7e2781c1900133a8b5980c7434b5e8e0689625b28ee727ffe5599997592 days 6 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136961.5 Ether
0xcfda5c9fc3617c4dd8aa33277242c0fcdd841eb28a4d24ad4dba186c712e2d5f599981892 days 6 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136961 Ether
0x43193c7d7bb124d3d015927852cdafc0a7b30ee37f2f2b17ddb1a1427d21e78d599963092 days 7 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba671369610.04 Ether
0x3854065cb5c1db549302aeb48c351cb6bf4c7c1ad84cbccc5e870f60feef9e87599944092 days 8 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.31 Ether
0x93a314a426a11ffd9745e9e9c5ea4742fcc0d1ef8cfdcfe4af3803ba1004ce8f599912092 days 9 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.85 Ether
0xdf6cdc7fa5f1a05a7ebdf9e4196d9f98c28900710c4d097db3e25fed95b9a934599839192 days 12 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.355 Ether
0xb5d6998e733cca54da936401ef830899e42b5ae85d476c43b3b7ca4511adf6dd599825892 days 13 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.51 Ether
0xfa06a226939c470400750f9cfa28fb92278b6e7de4f374779c09b1191564741a599782692 days 14 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136961.05 Ether
0xbe49b276ff60f6feab82097fd8a2c0c8f640d281719c027e593554806fe39862599744592 days 16 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.3 Ether
0xb838f516e45a7f339c591033f730e56acb5c925e74cdab387e2bc01dc7f83731599729992 days 16 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba671369616 Ether
0x18de3938248f38d578923758f823e3e99226092a1f45641a23d741a1d4178784599721892 days 17 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136965.49 Ether
0x75c5e65b18d831be49d9d01e54398baa7281fe657b1839d40ec6da86b491df55599715492 days 17 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.32 Ether
0xb1efe9030f77bddf15ca3cd76a2ea4f949836904778bda365cf70135e7f06a61599566592 days 23 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.34 Ether
0x95f86ccfae4fd89710ef08f092ebc3455e1c1fe0e1c82661d9ff4867c45df044599554093 days 3 mins ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.7 Ether
0x44ea988474c6917ccdaa2712557d2ccd5339495a5ac911eb280b9978feacb742599466193 days 3 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136963 Ether
0x2297937c29a730d7dd0a67ca79997f5c69b290685d1257a3774740642e130224599449993 days 4 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.5 Ether
0x7426f94f110fbaf67287c3d00fcf12089cb32aa73fcbc52d5eda9103ce7ad979599439393 days 4 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.4 Ether
0x0a1c4179e1d073df290a91973a7ec7875aa88aacfc8ab4cd8d72bf958a6a45a6599432093 days 4 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136960.53502 Ether
0x74f0edb7bc1f86a97817326fdbfe1e88b8fd879638cfaa820e72e3e97db557fb599412693 days 5 hrs ago0x393709845c63b7ac16ea60b6cda230a53693f2f40x535a10715c67faa3bea5f73f5354c16ba67136961.962990204 Ether
[ Download CSV Export  ] 
Warning: The Compiled Contract might be susceptible to ExpExponentCleanup (medium/high-severity), EventStructWrongData (very low-severity), NestedArrayFunctionCallDecoder (medium-severity) SolidityCompiler Bugs.

Contract Source Code Verified (Exact Match)
Contract Name: MallcoinCrowdSale
Compiler Text: v0.4.20+commit.3155dd80
Optimization Enabled: No
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.18;

library SafeMath {
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
      if (a == 0) {
          return 0;
      }
      uint256 c = a * b;
      assert(c / a == b);
      return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
      uint256 c = a / b;
      return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
      assert(b <= a);
      return a - b;
    }

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
      uint256 c = a + b;
      assert(c >= a);
      return c;
    }
}

contract Ownable {
    address public owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

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

    modifier onlyOwner() {
      require(msg.sender == owner);
      _;
    }

    function transferOwnership(address newOwner) public onlyOwner {
      require(newOwner != address(0));

      OwnershipTransferred(owner, newOwner);
      owner = newOwner;
    }
}

contract Authorizable {
    mapping(address => bool) authorizers;

    modifier onlyAuthorized {
      require(isAuthorized(msg.sender));
      _;
    }

    function Authorizable() public {
      authorizers[msg.sender] = true;
    }


    function isAuthorized(address _addr) public constant returns(bool) {
      require(_addr != address(0));

      bool result = bool(authorizers[_addr]);
      return result;
    }

    function addAuthorized(address _addr) external onlyAuthorized {
      require(_addr != address(0));

      authorizers[_addr] = true;
    }

    function delAuthorized(address _addr) external onlyAuthorized {
      require(_addr != address(0));
      require(_addr != msg.sender);

      //authorizers[_addr] = false;
      delete authorizers[_addr];
    }
}

interface tokenRecipient { function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) external; }

contract ERC20Basic {
    function totalSupply() public view returns (uint256);
    function balanceOf(address who) public view returns (uint256);
    function transfer(address to, uint256 value) public returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
}

contract ERC20 is ERC20Basic {
    function allowance(address owner, address spender) public view returns (uint256);
    function transferFrom(address from, address to, uint256 value) public returns (bool);
    function approve(address spender, uint256 value) public returns (bool);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

contract BasicToken is ERC20Basic {
    using SafeMath for uint256;

    mapping(address => uint256) balances;

    uint256 totalSupply_;

    //modifier onlyPayloadSize(uint size) {
    //  require(msg.data.length < size + 4);
    //  _;
    //}

    function totalSupply() public view returns (uint256) {
      return totalSupply_;
    }

    function transfer(address _to, uint256 _value) public returns (bool) {
      //requeres in FrozenToken
      //require(_to != address(0));
      //require(_value <= balances[msg.sender]);

      balances[msg.sender] = balances[msg.sender].sub(_value);
      balances[_to] = balances[_to].add(_value);
      Transfer(msg.sender, _to, _value);
      return true;
    }

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

contract StandardToken is ERC20, BasicToken {

    mapping (address => mapping (address => uint256)) internal allowed;

    function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
      //requires in FrozenToken
      //require(_to != address(0));
      //require(_value <= balances[_from]);
      //require(_value <= allowed[_from][msg.sender]);

      balances[_from] = balances[_from].sub(_value);
      balances[_to] = balances[_to].add(_value);
      allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
      Transfer(_from, _to, _value);
      return true;
    }

    function approve(address _spender, uint256 _value) public returns (bool) {
      require((_value == 0) || (allowed[msg.sender][_spender] == 0));
      allowed[msg.sender][_spender] = _value;
      Approval(msg.sender, _spender, _value);
      return true;
    }

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

    function increaseApproval(address _spender, uint _addedValue) public returns (bool) {
      allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
      Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
      return true;
    }

    function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
      uint oldValue = allowed[msg.sender][_spender];
      if (_subtractedValue > oldValue) {
        allowed[msg.sender][_spender] = 0;
      } else {
        allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
      }
      Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
      return true;
    }

    function approveAndCall(address _spender, uint256 _value, bytes _extraData) public returns (bool success) {
        tokenRecipient spender = tokenRecipient(_spender);
        if (approve(_spender, _value)) {
            spender.receiveApproval(msg.sender, _value, this, _extraData);
            return true;
        }
    }
}

contract FrozenToken is StandardToken, Ownable {
    mapping(address => bool) frozens;
    mapping(address => uint256) frozenTokens;

    event FrozenAddress(address addr);
    event UnFrozenAddress(address addr);
    event FrozenTokenEvent(address addr, uint256 amount);
    event UnFrozenTokenEvent(address addr, uint256 amount);

    modifier isNotFrozen() {
      require(frozens[msg.sender] == false);
      _;
    }

    function frozenAddress(address _addr) onlyOwner public returns (bool) {
      require(_addr != address(0));

      frozens[_addr] = true;
      FrozenAddress(_addr);
      return frozens[_addr];
    }

    function unFrozenAddress(address _addr) onlyOwner public returns (bool) {
      require(_addr != address(0));

      delete frozens[_addr];
      //frozens[_addr] = false;
      UnFrozenAddress(_addr);
      return frozens[_addr];
    }

    function isFrozenByAddress(address _addr) public constant returns(bool) {
      require(_addr != address(0));

      bool result = bool(frozens[_addr]);
      return result;
    }

    function balanceFrozenTokens(address _addr) public constant returns(uint256) {
      require(_addr != address(0));

      uint256 result = uint256(frozenTokens[_addr]);
      return result;
    }

    function balanceAvailableTokens(address _addr) public constant returns(uint256) {
      require(_addr != address(0));

      uint256 frozen = uint256(frozenTokens[_addr]);
      uint256 balance = uint256(balances[_addr]);
      require(balance >= frozen);

      uint256 result = balance.sub(frozen);

      return result;
    }

    function frozenToken(address _addr, uint256 _amount) onlyOwner public returns(bool) {
      require(_addr != address(0));
      require(_amount > 0);

      uint256 balance = uint256(balances[_addr]);
      require(balance >= _amount);

      frozenTokens[_addr] = frozenTokens[_addr].add(_amount);
      FrozenTokenEvent(_addr, _amount);
      return true;
    }
    

    function unFrozenToken(address _addr, uint256 _amount) onlyOwner public returns(bool) {
      require(_addr != address(0));
      require(_amount > 0);
      require(frozenTokens[_addr] >= _amount);

      frozenTokens[_addr] = frozenTokens[_addr].sub(_amount);
      UnFrozenTokenEvent(_addr, _amount);
      return true;
    }

    function transfer(address _to, uint256 _value) isNotFrozen() public returns (bool) {
      require(_to != address(0));
      require(_value <= balances[msg.sender]);

      uint256 balance = balances[msg.sender];
      uint256 frozen = frozenTokens[msg.sender];
      uint256 availableBalance = balance.sub(frozen);
      require(availableBalance >= _value);

      return super.transfer(_to, _value);
    }

    function transferFrom(address _from, address _to, uint256 _value) isNotFrozen() public returns (bool) {
      require(_to != address(0));
      require(_value <= balances[_from]);
      require(_value <= allowed[_from][msg.sender]);

      uint256 balance = balances[_from];
      uint256 frozen = frozenTokens[_from];
      uint256 availableBalance = balance.sub(frozen);
      require(availableBalance >= _value);

      return super.transferFrom(_from ,_to, _value);
    }
}

contract MallcoinToken is FrozenToken, Authorizable {
      string public constant name = "Mallcoin Token";
      string public constant symbol = "MLC";
      uint8 public constant decimals = 18;
      uint256 public MAX_TOKEN_SUPPLY = 250000000 * 1 ether;

      event CreateToken(address indexed to, uint256 amount);
      event CreateTokenByAtes(address indexed to, uint256 amount, string data);

      modifier onlyOwnerOrAuthorized {
        require(msg.sender == owner || isAuthorized(msg.sender));
        _;
      }

      function createToken(address _to, uint256 _amount) onlyOwnerOrAuthorized public returns (bool) {
        require(_to != address(0));
        require(_amount > 0);
        require(MAX_TOKEN_SUPPLY >= totalSupply_ + _amount);

        totalSupply_ = totalSupply_.add(_amount);
        balances[_to] = balances[_to].add(_amount);

        // KYC
        frozens[_to] = true;
        FrozenAddress(_to);

        CreateToken(_to, _amount);
        Transfer(address(0), _to, _amount);
        return true;
      }

      function createTokenByAtes(address _to, uint256 _amount, string _data) onlyOwnerOrAuthorized public returns (bool) {
        require(_to != address(0));
        require(_amount > 0);
        require(bytes(_data).length > 0);
        require(MAX_TOKEN_SUPPLY >= totalSupply_ + _amount);

        totalSupply_ = totalSupply_.add(_amount);
        balances[_to] = balances[_to].add(_amount);

        // KYC
        frozens[_to] = true;
        FrozenAddress(_to);

        CreateTokenByAtes(_to, _amount, _data);
        Transfer(address(0), _to, _amount);
        return true;
      }
} 

contract MallcoinCrowdSale is Ownable, Authorizable {
      using SafeMath for uint256;

      MallcoinToken public token;
      address public wallet; 

      uint256 public PRE_ICO_START_TIME = 1519297200; // Thursday, 22 February 2018, 11:00:00 GMT
      uint256 public PRE_ICO_END_TIME = 1520550000; // Thursday, 8 March 2018, 23:00:00 GMT
      uint256 public PRE_ICO_BONUS_TIME_1 =  1519556400; // Sunday, 25 February 2018, 11:00:00 GMT
      uint256 public PRE_ICO_BONUS_TIME_2 =  1519988400; // Friday, 2 March 2018, 11:00:00 GMT
      uint256 public PRE_ICO_BONUS_TIME_3 =  1520334000; // Tuesday, 6 March 2018, 11:00:00 GMT
      uint256 public PRE_ICO_RATE = 3000 * 1 ether; // 1 Ether = 3000 MLC
      uint256 public PRE_ICO_BONUS_RATE = 75 * 1 ether; // 75 MLC = 2.5%
      uint256 public preIcoTokenSales;

      uint256 public ICO_START_TIME = 1521716400; // Thursday, 22 March 2018, 11:00:00 GMT
      uint256 public ICO_END_TIME = 1523574000; // Thursday, 12 April 2018, 23:00:00 GMT
      uint256 public ICO_BONUS_TIME_1 = 1521975600; // Sunday, 25 March 2018, 11:00:00 GMT
      uint256 public ICO_BONUS_TIME_2 = 1522839600; // Wednesday, 4 April 2018, 11:00:00 GMT
      uint256 public ICO_BONUS_TIME_3 = 1523358000; // Tuesday, 10 April 2018, 11:00:00 GMT
      uint256 public ICO_RATE = 2000 * 1 ether; // 1 Ether = 2000 MLC
      uint256 public ICO_BONUS_RATE = 50 * 1 ether; // 50 MLC = 2.5%
      uint256 public icoTokenSales;

      uint256 public SECRET_BONUS_FACTOR = 0;

      bool public crowdSaleStop = false;

      uint256 public MAX_TOKEN_SUPPLY = 250000000 * 1 ether;
      uint256 public MAX_CROWD_SALE_TOKENS = 185000000 * 1 ether;
      uint256 public weiRaised;
      uint256 public tokenSales;
      uint256 public bountyTokenFund;
      uint256 public reserveTokenFund;
      uint256 public teamTokenFund;


      event TokenPurchase(address indexed purchaser, address indexed beneficiary, uint256 value, uint256 amount);
      event ChangeCrowdSaleDate(uint8 period, uint256 unixtime);

      modifier onlyOwnerOrAuthorized {
        require(msg.sender == owner || isAuthorized(msg.sender));
        _;
      }

      function MallcoinCrowdSale() public {
        wallet = owner;
        preIcoTokenSales = 0;
        icoTokenSales = 0;
        weiRaised = 0;
        tokenSales = 0;

        bountyTokenFund = 0;
        reserveTokenFund = 0;
        teamTokenFund = 0;
      
      }

   function () external payable {
     buyTokens(msg.sender);
   }

    function buyTokens(address beneficiary) public payable {
      require(beneficiary != address(0));
      require(validPurchase());

      uint256 weiAmount = msg.value;
      uint256 _buyTokens = 0;
      uint256 rate = 0;
      if (now >= PRE_ICO_START_TIME && now <= PRE_ICO_END_TIME) {
        rate = PRE_ICO_RATE.add(getPreIcoBonusRate());
        _buyTokens = rate.mul(weiAmount).div(1 ether);
        preIcoTokenSales = preIcoTokenSales.add(_buyTokens);
      } else if (now >= ICO_START_TIME && now <= ICO_END_TIME) {
        rate = ICO_RATE.add(getIcoBonusRate());
        _buyTokens = rate.mul(weiAmount).div(1 ether);
        icoTokenSales = icoTokenSales.add(_buyTokens);
      }

      require(MAX_CROWD_SALE_TOKENS >= tokenSales.add(_buyTokens));

      tokenSales = tokenSales.add(_buyTokens);
      weiRaised = weiRaised.add(weiAmount);
      wallet.transfer(msg.value);
      token.createToken(beneficiary, _buyTokens);
      TokenPurchase(msg.sender, beneficiary, weiAmount, _buyTokens);
    }

    function buyTokensByAtes(address addr_, uint256 amount_, string data_) onlyOwnerOrAuthorized  public returns (bool) {
      require(addr_ != address(0));
      require(amount_ > 0);
      require(bytes(data_).length > 0);
      require(validPurchase());

      uint256 _buyTokens = 0;
      uint256 rate = 0;
      if (now >= PRE_ICO_START_TIME && now <= PRE_ICO_END_TIME) {
        rate = PRE_ICO_RATE.add(getPreIcoBonusRate());
        _buyTokens = rate.mul(amount_).div(1

ether);
        preIcoTokenSales = preIcoTokenSales.add(_buyTokens);
      } else if (now >= ICO_START_TIME && now <= ICO_END_TIME) {
        rate = ICO_RATE.add(getIcoBonusRate());
        _buyTokens = rate.mul(amount_).div(1 ether);
        icoTokenSales = icoTokenSales.add(_buyTokens);
      }

      require(MAX_CROWD_SALE_TOKENS >= tokenSales.add(_buyTokens));

      tokenSales = tokenSales.add(_buyTokens);
      weiRaised = weiRaised.add(amount_);
      token.createTokenByAtes(addr_, _buyTokens, data_);
      TokenPurchase(msg.sender, addr_, amount_, _buyTokens);

      return true;
    }

    function getPreIcoBonusRate() private view returns (uint256 bonus) {
      bonus = 0;
      uint256 factorBonus = getFactorBonus();

      if (factorBonus > 0) {
        if (now >= PRE_ICO_START_TIME && now < PRE_ICO_BONUS_TIME_1) { // Sunday, 25 February 2018, 11:00:00 GMT
          factorBonus = factorBonus.add(7);
          bonus = PRE_ICO_BONUS_RATE.mul(factorBonus); // add 600-750 MLC
        } else if (now >= PRE_ICO_BONUS_TIME_1 && now < PRE_ICO_BONUS_TIME_2) { // Friday, 2 March 2018, 11:00:00 GMT
          factorBonus = factorBonus.add(5);
          bonus = PRE_ICO_BONUS_RATE.mul(factorBonus); // add 450-600 MLC
        } else if (now >= PRE_ICO_BONUS_TIME_2 && now < PRE_ICO_BONUS_TIME_3) { // Tuesday, 6 March 2018, 11:00:00 GMT
          factorBonus = factorBonus.add(1);
          bonus = PRE_ICO_BONUS_RATE.mul(factorBonus); // add 150-300 MLC
        } 
      }

      return bonus;
    }

    function getIcoBonusRate() private view returns (uint256 bonus) {
      bonus = 0;
      uint256 factorBonus = getFactorBonus();

      if (factorBonus > 0) {
        if (now >= ICO_START_TIME && now < ICO_BONUS_TIME_1) { // Sunday, 25 March 2018, 11:00:00 GMT
          factorBonus = factorBonus.add(7);
          bonus = ICO_BONUS_RATE.mul(factorBonus); // add 400-500 MLC
        } else if (now >= ICO_BONUS_TIME_1 && now < ICO_BONUS_TIME_2) { // Wednesday, 4 April 2018, 11:00:00 GMT
          factorBonus = factorBonus.add(5);
          bonus = ICO_BONUS_RATE.mul(factorBonus); // add 300-400 MLC
        } else if (now >= ICO_BONUS_TIME_2 && now < ICO_BONUS_TIME_3) { // Tuesday, 10 April 2018, 11:00:00 GMT
          factorBonus = factorBonus.add(1);
          bonus = ICO_BONUS_RATE.mul(factorBonus); // add 100-200 MLC
        } else if (now >= ICO_BONUS_TIME_3 && now < ICO_END_TIME) { // Secret bonus dates
          factorBonus = factorBonus.add(SECRET_BONUS_FACTOR);
          bonus = ICO_BONUS_RATE.mul(factorBonus); // add 150-300 MLC
        } 
      }

      return bonus;
    }

    function getFactorBonus() private view returns (uint256 factor) {
      factor = 0;
      if (msg.value >= 5 ether && msg.value < 10 ether) {
        factor = 1;
      } else if (msg.value >= 10 ether && msg.value < 100 ether) {
        factor = 2;
      } else if (msg.value >= 100 ether) {
        factor = 3;
      }
      return factor;
    }

   function validPurchase() internal view returns (bool) {
      bool withinPeriod = false;
     if (now >= PRE_ICO_START_TIME && now <= PRE_ICO_END_TIME && !crowdSaleStop) {
        withinPeriod = true;
      } else if (now >= ICO_START_TIME && now <= ICO_END_TIME && !crowdSaleStop) {
        withinPeriod = true;
      }
     bool nonZeroPurchase = msg.value > 0;
      
     return withinPeriod && nonZeroPurchase;
   }

    function stopCrowdSale() onlyOwner public {
      crowdSaleStop = true;
    }

    function startCrowdSale() onlyOwner public {
      crowdSaleStop = false;
    }

    function changeCrowdSaleDates(uint8 _period, uint256 _unixTime) onlyOwner public {
      require(_period > 0 && _unixTime > 0);

      if (_period == 1) {
        PRE_ICO_START_TIME = _unixTime;
        ChangeCrowdSaleDate(_period, _unixTime);
      } else if (_period == 2) {
        PRE_ICO_END_TIME = _unixTime;
        ChangeCrowdSaleDate(_period, _unixTime);
      } else if (_period == 3) {
        PRE_ICO_BONUS_TIME_1 = _unixTime;
        ChangeCrowdSaleDate(_period, _unixTime);
      } else if (_period == 4) {

PRE_ICO_BONUS_TIME_2 = _unixTime;
        ChangeCrowdSaleDate(_period, _unixTime);
      } else if (_period == 5) {
        PRE_ICO_BONUS_TIME_3 = _unixTime;
        ChangeCrowdSaleDate(_period, _unixTime);
      } else if (_period == 6) {
        ICO_START_TIME = _unixTime;
        ChangeCrowdSaleDate(_period, _unixTime);
      } else if (_period == 7) {
        ICO_END_TIME = _unixTime;
        ChangeCrowdSaleDate(_period, _unixTime);
      } else if (_period == 8) {
        ICO_BONUS_TIME_1 = _unixTime;
        ChangeCrowdSaleDate(_period, _unixTime);
      } else if (_period == 9) {
        ICO_BONUS_TIME_2 = _unixTime;
        ChangeCrowdSaleDate(_period, _unixTime);
      } else if (_period == 10) {
        ICO_BONUS_TIME_3 = _unixTime;
        ChangeCrowdSaleDate(_period, _unixTime);
      } 
    }

    function setSecretBonusFactor(uint256 _factor) onlyOwner public {
      require(_factor >= 0);

      SECRET_BONUS_FACTOR = _factor;
    }
    
    function changeMallcoinTokenAddress(address _token) onlyOwner public {
      require(_token != address(0));

      token = MallcoinToken(_token);
    }

    function finishCrowdSale() onlyOwner public returns (bool) {
      crowdSaleStop = true;
      teamTokenFund = tokenSales.div(100).mul(10); // Team fund 10%
      bountyTokenFund = tokenSales.div(100).mul(7); // Bounty fund 7%;
      reserveTokenFund = tokenSales.div(100).mul(9); // Reserve fund 9%;

      uint256 tokensFund = teamTokenFund.add(bountyTokenFund).add(reserveTokenFund);
      wallet.transfer(this.balance);
      token.createToken(wallet, tokensFund);

      return true;
    }
}

    Contract ABI  
[{"constant":true,"inputs":[],"name":"ICO_END_TIME","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveTokenFund","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ICO_START_TIME","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"icoTokenSales","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"MAX_CROWD_SALE_TOKENS","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"delAuthorized","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"bountyTokenFund","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ICO_BONUS_TIME_1","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ICO_RATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"weiRaised","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ICO_BONUS_RATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamTokenFund","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"wallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PRE_ICO_BONUS_TIME_1","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenSales","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_factor","type":"uint256"}],"name":"setSecretBonusFactor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"preIcoTokenSales","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"changeMallcoinTokenAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ICO_BONUS_TIME_3","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PRE_ICO_BONUS_TIME_2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PRE_ICO_BONUS_TIME_3","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_period","type":"uint8"},{"name":"_unixTime","type":"uint256"}],"name":"changeCrowdSaleDates","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"SECRET_BONUS_FACTOR","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PRE_ICO_BONUS_RATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"crowdSaleStop","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"stopCrowdSale","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"addAuthorized","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"finishCrowdSale","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"PRE_ICO_END_TIME","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"MAX_TOKEN_SUPPLY","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ICO_BONUS_TIME_2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"beneficiary","type":"address"}],"name":"buyTokens","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"startCrowdSale","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"PRE_ICO_START_TIME","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PRE_ICO_RATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"}],"name":"isAuthorized","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr_","type":"address"},{"name":"amount_","type":"uint256"},{"name":"data_","type":"string"}],"name":"buyTokensByAtes","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"purchaser","type":"address"},{"indexed":true,"name":"beneficiary","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"TokenPurchase","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"period","type":"uint8"},{"indexed":false,"name":"unixtime","type":"uint256"}],"name":"ChangeCrowdSaleDate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]

  Contract Creation Code Switch To Opcodes View
6060604052635a8ea2b0600455635aa1c070600555635a929730600655635a992eb0600755635a9e74b060085568a2a15d09519be00000600955680410d586a20a4c0000600a55635ab38cb0600c55635acfe4f0600d55635ab78130600e55635ac4b030600f55635acc9930601055686c6b935b8bbd4000006011556802b5e3af16b188000060125560006014556000601560006101000a81548160ff0219169083151502179055506acecb8f27f4200f3a0000006016556a990746187217b95900000060175534156100d157600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600b819055506000601381905550600060188190555060006019819055506000601a819055506000601b819055506000601c819055506122e3806102116000396000f3006060604052600436106101ee576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630a87557c146101f95780630b4e0513146102225780631b4cd2de1461024b57806329f5fb9c146102745780632d290d8b1461029d57806331a40b62146102c65780633406956a146102ff57806338e29ef0146103285780633bd099d3146103515780634042b66f1461037a57806342419336146103a35780634ddbf2b3146103cc578063521eb273146103f5578063545e63621461044a57806356b9a8ab14610473578063666de8d51461049c5780638da5cb5b146104bf578063906ab1111461051457806398fdfd8e1461053d578063a17f0bbd14610576578063ab3cdaf01461059f578063bb777028146105c8578063bf21e45d146105f1578063c088df4714610620578063c0ac3d1c14610649578063c143ab2c14610672578063c67c6eab1461069f578063cf1c316a146106b4578063d67c1a7a146106ed578063d8e963b31461071a578063e489d51014610743578063e92340b51461076c578063ec8ac4d814610795578063f2b45ac1146107c3578063f2fde38b146107d8578063f4e9c94414610811578063f5b9644c1461083a578063fc0c546a14610863578063fe9fbb80146108b8578063ff3d398c14610909575b6101f7336109a6565b005b341561020457600080fd5b61020c610d26565b6040518082815260200191505060405180910390f35b341561022d57600080fd5b610235610d2c565b6040518082815260200191505060405180910390f35b341561025657600080fd5b61025e610d32565b6040518082815260200191505060405180910390f35b341561027f57600080fd5b610287610d38565b6040518082815260200191505060405180910390f35b34156102a857600080fd5b6102b0610d3e565b6040518082815260200191505060405180910390f35b34156102d157600080fd5b6102fd600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610d44565b005b341561030a57600080fd5b610312610e21565b6040518082815260200191505060405180910390f35b341561033357600080fd5b61033b610e27565b6040518082815260200191505060405180910390f35b341561035c57600080fd5b610364610e2d565b6040518082815260200191505060405180910390f35b341561038557600080fd5b61038d610e33565b6040518082815260200191505060405180910390f35b34156103ae57600080fd5b6103b6610e39565b6040518082815260200191505060405180910390f35b34156103d757600080fd5b6103df610e3f565b6040518082815260200191505060405180910390f35b341561040057600080fd5b610408610e45565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561045557600080fd5b61045d610e6b565b6040518082815260200191505060405180910390f35b341561047e57600080fd5b610486610e71565b6040518082815260200191505060405180910390f35b34156104a757600080fd5b6104bd6004808035906020019091905050610e77565b005b34156104ca57600080fd5b6104d2610eec565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561051f57600080fd5b610527610f11565b6040518082815260200191505060405180910390f35b341561054857600080fd5b610574600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610f17565b005b341561058157600080fd5b610589610ff2565b6040518082815260200191505060405180910390f35b34156105aa57600080fd5b6105b2610ff8565b6040518082815260200191505060405180910390f35b34156105d357600080fd5b6105db610ffe565b6040518082815260200191505060405180910390f35b34156105fc57600080fd5b61061e600480803560ff16906020019091908035906020019091905050611004565b005b341561062b57600080fd5b610633611428565b6040518082815260200191505060405180910390f35b341561065457600080fd5b61065c61142e565b6040518082815260200191505060405180910390f35b341561067d57600080fd5b610685611434565b604051808215151515815260200191505060405180910390f35b34156106aa57600080fd5b6106b2611447565b005b34156106bf57600080fd5b6106eb600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506114bf565b005b34156106f857600080fd5b610700611569565b604051808215151515815260200191505060405180910390f35b341561072557600080fd5b61072d611828565b6040518082815260200191505060405180910390f35b341561074e57600080fd5b61075661182e565b6040518082815260200191505060405180910390f35b341561077757600080fd5b61077f611834565b6040518082815260200191505060405180910390f35b6107c1600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506109a6565b005b34156107ce57600080fd5b6107d661183a565b005b34156107e357600080fd5b61080f600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506118b2565b005b341561081c57600080fd5b610824611a07565b6040518082815260200191505060405180910390f35b341561084557600080fd5b61084d611a0d565b6040518082815260200191505060405180910390f35b341561086e57600080fd5b610876611a13565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156108c357600080fd5b6108ef600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611a39565b604051808215151515815260200191505060405180910390f35b341561091457600080fd5b61098c600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091905050611ad0565b604051808215151515815260200191505060405180910390f35b60008060008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156109e657600080fd5b6109ee611eea565b15156109f957600080fd5b34925060009150600090506004544210158015610a1857506005544211155b15610a8a57610a39610a28611f7c565b60095461207a90919063ffffffff16565b9050610a68670de0b6b3a7640000610a5a858461209890919063ffffffff16565b6120d390919063ffffffff16565b9150610a7f82600b5461207a90919063ffffffff16565b600b81905550610b0d565b600c544210158015610a9e5750600d544211155b15610b0c57610abf610aae6120ee565b60115461207a90919063ffffffff16565b9050610aee670de0b6b3a7640000610ae0858461209890919063ffffffff16565b6120d390919063ffffffff16565b9150610b058260135461207a90919063ffffffff16565b6013819055505b5b610b228260195461207a90919063ffffffff16565b60175410151515610b3257600080fd5b610b478260195461207a90919063ffffffff16565b601981905550610b628360185461207a90919063ffffffff16565b601881905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501515610bca57600080fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636a10d4d685846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515610c9757600080fd5b6102c65a03f11515610ca857600080fd5b50505060405180519050508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f623b3804fa71d67900d064613da8f94b9617215ee90799290593e1745087ad188585604051808381526020018281526020019250505060405180910390a350505050565b600d5481565b601b5481565b600c5481565b60135481565b60175481565b610d4d33611a39565b1515610d5857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610d9457600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dcf57600080fd5b600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff021916905550565b601a5481565b600e5481565b60115481565b60185481565b60125481565b601c5481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60065481565b60195481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ed257600080fd5b60008110151515610ee257600080fd5b8060148190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f7257600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610fae57600080fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60105481565b60075481565b60085481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561105f57600080fd5b60008260ff161180156110725750600081115b151561107d57600080fd5b60018260ff1614156110da57806004819055507f2c532a7114e384103c08d6710a07ec0ce455d7bc097dc4cad44680c32d8b3d488282604051808360ff1660ff1681526020018281526020019250505060405180910390a1611424565b60028260ff16141561113757806005819055507f2c532a7114e384103c08d6710a07ec0ce455d7bc097dc4cad44680c32d8b3d488282604051808360ff1660ff1681526020018281526020019250505060405180910390a1611423565b60038260ff16141561119457806006819055507f2c532a7114e384103c08d6710a07ec0ce455d7bc097dc4cad44680c32d8b3d488282604051808360ff1660ff1681526020018281526020019250505060405180910390a1611422565b60048260ff1614156111f157806007819055507f2c532a7114e384103c08d6710a07ec0ce455d7bc097dc4cad44680c32d8b3d488282604051808360ff1660ff1681526020018281526020019250505060405180910390a1611421565b60058260ff16141561124e57806008819055507f2c532a7114e384103c08d6710a07ec0ce455d7bc097dc4cad44680c32d8b3d488282604051808360ff1660ff1681526020018281526020019250505060405180910390a1611420565b60068260ff1614156112ab5780600c819055507f2c532a7114e384103c08d6710a07ec0ce455d7bc097dc4cad44680c32d8b3d488282604051808360ff1660ff1681526020018281526020019250505060405180910390a161141f565b60078260ff1614156113085780600d819055507f2c532a7114e384103c08d6710a07ec0ce455d7bc097dc4cad44680c32d8b3d488282604051808360ff1660ff1681526020018281526020019250505060405180910390a161141e565b60088260ff1614156113655780600e819055507f2c532a7114e384103c08d6710a07ec0ce455d7bc097dc4cad44680c32d8b3d488282604051808360ff1660ff1681526020018281526020019250505060405180910390a161141d565b60098260ff1614156113c25780600f819055507f2c532a7114e384103c08d6710a07ec0ce455d7bc097dc4cad44680c32d8b3d488282604051808360ff1660ff1681526020018281526020019250505060405180910390a161141c565b600a8260ff16141561141b57806010819055507f2c532a7114e384103c08d6710a07ec0ce455d7bc097dc4cad44680c32d8b3d488282604051808360ff1660ff1681526020018281526020019250505060405180910390a15b5b5b5b5b5b5b5b5b5b5050565b60145481565b600a5481565b601560009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114a257600080fd5b6001601560006101000a81548160ff021916908315150217905550565b6114c833611a39565b15156114d357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561150f57600080fd5b60018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156115c757600080fd5b6001601560006101000a81548160ff02191690831515021790555061160b600a6115fd60646019546120d390919063ffffffff16565b61209890919063ffffffff16565b601c8190555061163a600761162c60646019546120d390919063ffffffff16565b61209890919063ffffffff16565b601a81905550611669600961165b60646019546120d390919063ffffffff16565b61209890919063ffffffff16565b601b8190555061169a601b5461168c601a54601c5461207a90919063ffffffff16565b61207a90919063ffffffff16565b9050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050151561171557600080fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636a10d4d6600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561180457600080fd5b6102c65a03f1151561181557600080fd5b5050506040518051905050600191505090565b60055481565b60165481565b600f5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561189557600080fd5b6000601560006101000a81548160ff021916908315150217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561190d57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561194957600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60045481565b60095481565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611a7857600080fd5b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905080915050919050565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480611b355750611b3433611a39565b5b1515611b4057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614151515611b7c57600080fd5b600085111515611b8b57600080fd5b60008451111515611b9b57600080fd5b611ba3611eea565b1515611bae57600080fd5b60009150600090506004544210158015611bca57506005544211155b15611c3c57611beb611bda611f7c565b60095461207a90919063ffffffff16565b9050611c1a670de0b6b3a7640000611c0c878461209890919063ffffffff16565b6120d390919063ffffffff16565b9150611c3182600b5461207a90919063ffffffff16565b600b81905550611cbf565b600c544210158015611c505750600d544211155b15611cbe57611c71611c606120ee565b60115461207a90919063ffffffff16565b9050611ca0670de0b6b3a7640000611c92878461209890919063ffffffff16565b6120d390919063ffffffff16565b9150611cb78260135461207a90919063ffffffff16565b6013819055505b5b611cd48260195461207a90919063ffffffff16565b60175410151515611ce457600080fd5b611cf98260195461207a90919063ffffffff16565b601981905550611d148560185461207a90919063ffffffff16565b601881905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ca77ea258784876000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611e07578082015181840152602081019050611dec565b50505050905090810190601f168015611e345780820380516001836020036101000a031916815260200191505b50945050505050602060405180830381600087803b1515611e5457600080fd5b6102c65a03f11515611e6557600080fd5b50505060405180519050508573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f623b3804fa71d67900d064613da8f94b9617215ee90799290593e1745087ad188785604051808381526020018281526020019250505060405180910390a36001925050509392505050565b60008060008091506004544210158015611f0657506005544211155b8015611f1f5750601560009054906101000a900460ff16155b15611f2d5760019150611f65565b600c544210158015611f415750600d544211155b8015611f5a5750601560009054906101000a900460ff16155b15611f6457600191505b5b600034119050818015611f755750805b9250505090565b60008060009150611f8b612238565b90506000811115612073576004544210158015611fa9575060065442105b15611fe057611fc260078261207a90919063ffffffff16565b9050611fd981600a5461209890919063ffffffff16565b9150612072565b6006544210158015611ff3575060075442105b1561202a5761200c60058261207a90919063ffffffff16565b905061202381600a5461209890919063ffffffff16565b9150612071565b600754421015801561203d575060085442105b156120705761205660018261207a90919063ffffffff16565b905061206d81600a5461209890919063ffffffff16565b91505b5b5b5b8191505090565b600080828401905083811015151561208e57fe5b8091505092915050565b60008060008414156120ad57600091506120cc565b82840290508284828115156120be57fe5b041415156120c857fe5b8091505b5092915050565b60008082848115156120e157fe5b0490508091505092915050565b600080600091506120fd612238565b9050600081111561223157600c54421015801561211b5750600e5442105b156121525761213460078261207a90919063ffffffff16565b905061214b8160125461209890919063ffffffff16565b9150612230565b600e5442101580156121655750600f5442105b1561219c5761217e60058261207a90919063ffffffff16565b90506121958160125461209890919063ffffffff16565b915061222f565b600f5442101580156121af575060105442105b156121e6576121c860018261207a90919063ffffffff16565b90506121df8160125461209890919063ffffffff16565b915061222e565b60105442101580156121f95750600d5442105b1561222d576122136014548261207a90919063ffffffff16565b905061222a8160125461209890919063ffffffff16565b91505b5b5b5b5b8191505090565b6000809050674563918244f40000341015801561225c5750678ac7230489e8000034105b1561226a57600190506122b1565b678ac7230489e80000341015801561228a575068056bc75e2d6310000034105b1561229857600290506122b0565b68056bc75e2d63100000341015156122af57600390505b5b5b809050905600a165627a7a72305820c5bf3d78bca1eebb06f2da989af01b13f4e4d015e6c4391dec390e410e76cc530029

   Swarm Source:
bzzr://c5bf3d78bca1eebb06f2da989af01b13f4e4d015e6c4391dec390e410e76cc53

 

View All
Block Age transaction Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.