ETH Price: $3,434.54 (-6.76%)
Gas: 10.6 Gwei
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Add Vesting145023932022-04-01 20:00:491011 days ago1648843249IN
Salient Investment Holding: SIH Token
0 ETH0.00753774109.48222606
Add Vesting145023692022-04-01 19:54:511011 days ago1648842891IN
Salient Investment Holding: SIH Token
0 ETH0.0040064658.1920377
Transfer137517742021-12-06 10:32:451128 days ago1638786765IN
Salient Investment Holding: SIH Token
0 ETH0.0044744275
Transfer137517162021-12-06 10:17:141128 days ago1638785834IN
Salient Investment Holding: SIH Token
0 ETH0.0019642584
Approve131578162021-09-04 7:17:341221 days ago1630739854IN
Salient Investment Holding: SIH Token
0 ETH0.0038128282.16937108
Approve131577752021-09-04 7:09:071221 days ago1630739347IN
Salient Investment Holding: SIH Token
0 ETH0.0040924788.19605611
Transfer131577612021-09-04 7:05:511221 days ago1630739151IN
Salient Investment Holding: SIH Token
0 ETH0.0031549681.16508446
Approve131455352021-09-02 9:47:001223 days ago1630576020IN
Salient Investment Holding: SIH Token
0 ETH0.0043978694.77743232
Approve127530892021-07-03 6:44:241284 days ago1625294664IN
Salient Investment Holding: SIH Token
0 ETH0.0004640210
Add Vesting127222512021-06-28 11:27:151289 days ago1624879635IN
Salient Investment Holding: SIH Token
0 ETH0.0006884910
Add Vesting127222512021-06-28 11:27:151289 days ago1624879635IN
Salient Investment Holding: SIH Token
0 ETH0.0006884910
Add Vesting127222412021-06-28 11:24:551289 days ago1624879495IN
Salient Investment Holding: SIH Token
0 ETH0.0006883710
Add Vesting127222372021-06-28 11:23:511289 days ago1624879431IN
Salient Investment Holding: SIH Token
0 ETH0.0007573311
Add Vesting127222272021-06-28 11:22:461289 days ago1624879366IN
Salient Investment Holding: SIH Token
0 ETH0.0006883710
Add Vesting127221602021-06-28 11:07:441289 days ago1624878464IN
Salient Investment Holding: SIH Token
0 ETH0.0007573311.00000134
Add Vesting127221512021-06-28 11:05:131289 days ago1624878313IN
Salient Investment Holding: SIH Token
0 ETH0.0006884910.00000134
Add Vesting127221392021-06-28 11:02:241289 days ago1624878144IN
Salient Investment Holding: SIH Token
0 ETH0.0008261812.00000134
Add Vesting127214272021-06-28 8:19:221289 days ago1624868362IN
Salient Investment Holding: SIH Token
0 ETH0.0013838620.1
Transfer127214042021-06-28 8:13:571289 days ago1624868037IN
Salient Investment Holding: SIH Token
0 ETH0.0011931820
Transfer127213932021-06-28 8:12:401289 days ago1624867960IN
Salient Investment Holding: SIH Token
0 ETH0.0014497124.3
Transfer127210812021-06-28 7:01:121289 days ago1624863672IN
Salient Investment Holding: SIH Token
0 ETH0.000238584
Transfer127210812021-06-28 7:01:121289 days ago1624863672IN
Salient Investment Holding: SIH Token
0 ETH0.000238634
Transfer127210812021-06-28 7:01:121289 days ago1624863672IN
Salient Investment Holding: SIH Token
0 ETH0.000238584
Transfer127210672021-06-28 6:58:381289 days ago1624863518IN
Salient Investment Holding: SIH Token
0 ETH0.000238634
Transfer127210672021-06-28 6:58:381289 days ago1624863518IN
Salient Investment Holding: SIH Token
0 ETH0.000238634
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Salient

Compiler Version
v0.4.22+commit.4cb486ee

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2020-06-28
*/

pragma solidity ^0.4.22;


//Math operations with safety checks that throw on error


library SafeMath {


    //multiply
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a * b;
        assert(a == 0 || c / a == b);
        return c;
    }
    //divide
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        // assert(b > 0); // Solidity automatically throws when dividing by 0
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold
        return c;
    }


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


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


contract Ownable {
    address public contractOwner;


    event TransferredOwnership(address indexed _previousOwner, address indexed _newOwner);


    constructor() public {        
        contractOwner = msg.sender;
    }


    modifier ownerOnly() {
        require(msg.sender == contractOwner);
        _;
    }


    function transferOwnership(address _newOwner) internal ownerOnly {
        require(_newOwner != address(0));
        contractOwner = _newOwner;


        emit TransferredOwnership(contractOwner, _newOwner);
    }


}


// Natmin vesting contract for team members
contract SalientVesting is Ownable {
    struct Vesting {        
        uint256 amount;
        uint256 endTime;
    }
    mapping(address => Vesting) internal vestings;


    function addVesting(address _user, uint256 _amount, uint256 _endTime) public ;
    function getVestedAmount(address _user) public view returns (uint256 _amount);
    function getVestingEndTime(address _user) public view returns (uint256 _endTime);
    function vestingEnded(address _user) public view returns (bool) ;
    function endVesting(address _user) public ;
}


//ERC20 Standard interface specification
contract ERC20Standard {
    function balanceOf(address _user) public view returns (uint256 balance);
    function transfer(address _to, uint256 _value) public returns (bool success);
    function transferFrom(address _from, address _to, uint256 _value) public returns (bool success);
    function approve(address _spender, uint256 _value) public returns (bool success);
    function allowance(address _owner, address _spender) public view returns (uint256 remaining);
    event Transfer(address indexed _from, address indexed _to, uint256 _value);
    event Approval(address indexed _owner, address indexed _spender, uint256 _value);
}


//ERC223 Standard interface specification
contract ERC223Standard {
    function transfer(address _to, uint256 _value, bytes _data) public returns (bool success);
    event Transfer(address indexed _from, address indexed _to, uint _value, bytes _data);
}


//ERC223 function to handle incoming token transfers
contract ERC223ReceivingContract { 
    function tokenFallback(address _from, uint256 _value, bytes _data) public;
}


contract BurnToken is Ownable {
    using SafeMath for uint256;
    
    function burn(uint256 _value) public;
    function _burn(address _user, uint256 _value) internal;
    event Burn(address indexed _user, uint256 _value);
}


//Salient implements the ERC20, ERC223 standard methods
contract Salient is ERC20Standard, ERC223Standard, Ownable, SalientVesting, BurnToken {
    using SafeMath for uint256;


    string _name = "Salient Investment Holding";
    string _symbol = "SIH";
    string _standard = "ERC20 / ERC223";
    uint256 _decimals = 18; // same value as wei
    uint256 _totalSupply;


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


    constructor(uint256 _supply) public {
        require(_supply != 0);
        _totalSupply = _supply * (10 ** 18);
        balances[contractOwner] = _totalSupply;
    }


    // Returns the _name of the token
    function name() public view returns (string) {
        return _name;        
    }


    // Returns the _symbol of the token
    function symbol() public view returns (string) {
        return _symbol;
    }


    // Returns the _standard of the token
    function standard() public view returns (string) {
        return _standard;
    }


    // Returns the _decimals of the token
    function decimals() public view returns (uint256) {
        return _decimals;
    }


    // Function to return the total supply of the token
    function totalSupply() public view returns (uint256) {
        return _totalSupply;
    }


    // Function to return the balance of a specified address
    function balanceOf(address _user) public view returns (uint256 balance){
        return balances[_user];
    }   


    // Transfer function to be compatable with ERC20 Standard
    function transfer(address _to, uint256 _value) public returns (bool success){
        require(_to != 0x0);
        bytes memory _empty;
        if(isContract(_to)){
            return transferToContract(_to, _value, _empty);
        }else{
            return transferToAddress(_to, _value, _empty);
        }
    }


    // Transfer function to be compatable with ERC223 Standard
    function transfer(address _to, uint256 _value, bytes _data) public returns (bool success) {
        require(_to != 0x0);
        if(isContract(_to)){
            return transferToContract(_to, _value, _data);
        }else{
            return transferToAddress(_to, _value, _data);
        }
    }


    // This function checks if the address is a contract or wallet
    // If the codeLength is greater than 0, it is a contract
    function isContract(address _to) internal view returns (bool) {
        uint256 _codeLength;


        assembly {
            _codeLength := extcodesize(_to)
        }


        return _codeLength > 0;
    }


    // This function to be used if the target is a contract address
    function transferToContract(address _to, uint256 _value, bytes _data) internal returns (bool) {
        require(balances[msg.sender] >= _value);
        require(validateTransferAmount(msg.sender,_value));
        
        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);


        ERC223ReceivingContract _tokenReceiver = ERC223ReceivingContract(_to);
        _tokenReceiver.tokenFallback(msg.sender, _value, _data);


        emit Transfer(msg.sender, _to, _value);
        emit Transfer(msg.sender, _to, _value, _data);
        return true;
    }


    // This function to be used if the target is a normal eth/wallet address 
    function transferToAddress(address _to, uint256 _value, bytes _data) internal returns (bool) {
        require(balances[msg.sender] >= _value);
        require(validateTransferAmount(msg.sender,_value));


        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);


        emit Transfer(msg.sender, _to, _value);
        emit Transfer(msg.sender, _to, _value, _data);
        return true;
    }


    // ERC20 standard function
    function transferFrom(address _from, address _to, uint256 _value) public returns (bool success){
        require(_to != 0x0);
        require(_value <= allowed[_from][msg.sender]);
        require(_value <= balances[_from]);
        require(validateTransferAmount(_from,_value));


        balances[_from] = balances[_from].sub(_value);
        balances[_to] = balances[_to].add(_value);
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);


        emit Transfer(_from, _to, _value);


        return true;
    }


    // ERC20 standard function
    function approve(address _spender, uint256 _value) public returns (bool success){
        allowed[msg.sender][_spender] = 0;
        allowed[msg.sender][_spender] = _value;


        emit Approval(msg.sender, _spender, _value);


        return true;
    }


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


    // Stops any attempt from sending Ether to this contract
    function () public {
        revert();
    }


    // public function to call the _burn function 
    function burn(uint256 _value) public ownerOnly {
        _burn(msg.sender, _value);
    }


    // Burn the specified amount of tokens by the owner
    function _burn(address _user, uint256 _value) internal ownerOnly {
        require(balances[_user] >= _value);


        balances[_user] = balances[_user].sub(_value);
        _totalSupply = _totalSupply.sub(_value);
        
        emit Burn(_user, _value);
        emit Transfer(_user, address(0), _value);


        bytes memory _empty;
        emit Transfer(_user, address(0), _value, _empty);
    }


    // Create a vesting entry for the specified user
    function addVesting(address _user, uint256 _amount, uint256 _endTime) public ownerOnly {
        vestings[_user].amount = _amount;
        vestings[_user].endTime = _endTime;
    }


    // Returns the vested amount for a specified user
    function getVestedAmount(address _user) public view returns (uint256 _amount) {
        _amount = vestings[_user].amount;
        return _amount;
    }


    // Returns the vested end time for a specified user
    function getVestingEndTime(address _user) public view returns (uint256 _endTime) {
        _endTime = vestings[_user].endTime;
        return _endTime;
    }


    // Checks if the venting period is over for a specified user
    function vestingEnded(address _user) public view returns (bool) {
        if(vestings[_user].endTime <= now) {
            return true;
        }
        else {
            return false;
        }
    }


    // This function checks the transfer amount against the current balance and vested amount
    // Returns true if transfer amount is smaller than the difference between the balance and vested amount
    function validateTransferAmount(address _user, uint256 _amount) internal view returns (bool) {
        if(vestingEnded(_user)){
            return true;
        }else{
            uint256 _vestedAmount = getVestedAmount(_user);
            uint256 _currentBalance = balanceOf(_user);
            uint256 _availableBalance = _currentBalance.sub(_vestedAmount);


            if(_amount <= _availableBalance) {
                return true;
            }else{
                return false;
            }
        }
    }


    // Manual end vested time 
    function endVesting(address _user) public ownerOnly {
        vestings[_user].endTime = now;
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_user","type":"address"}],"name":"getVestingEndTime","outputs":[{"name":"_endTime","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_user","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_endTime","type":"uint256"}],"name":"addVesting","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"standard","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_user","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_user","type":"address"}],"name":"endVesting","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"contractOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_user","type":"address"}],"name":"getVestedAmount","outputs":[{"name":"_amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_user","type":"address"}],"name":"vestingEnded","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_supply","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":false,"stateMutability":"nonpayable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_user","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_previousOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"TransferredOwnership","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"},{"indexed":false,"name":"_data","type":"bytes"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"}]

60806040526040805190810160405280601a81526020017f53616c69656e7420496e766573746d656e7420486f6c64696e670000000000008152506002908051906020019062000051929190620001f4565b506040805190810160405280600381526020017f5349480000000000000000000000000000000000000000000000000000000000815250600390805190602001906200009f929190620001f4565b506040805190810160405280600e81526020017f4552433230202f2045524332323300000000000000000000000000000000000081525060049080519060200190620000ed929190620001f4565b5060126005553480156200010057600080fd5b506040516020806200211e83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600081141515156200017557600080fd5b670de0b6b3a76400008102600681905550600654600760008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050620002a3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200023757805160ff191683800117855562000268565b8280016001018555821562000268579182015b82811115620002675782518255916020019190600101906200024a565b5b5090506200027791906200027b565b5090565b620002a091905b808211156200029c57600081600090555060010162000282565b5090565b90565b611e6b80620002b36000396000f3006080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461010e578063095ea7b31461019e57806315875f541461020357806318160ddd1461025a57806323b872dd14610285578063313ce5671461030a57806342966c68146103355780634691a998146103625780635a3b7e42146103b957806370a082311461044957806395d89b41146104a0578063a9059cbb14610530578063be45fd6214610595578063bf05d65314610640578063ce606ee014610683578063d5a73fdd146106da578063dd62ed3e14610731578063fe0c4085146107a8575b34801561010857600080fd5b50600080fd5b34801561011a57600080fd5b50610123610803565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610163578082015181840152602081019050610148565b50505050905090810190601f1680156101905780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101aa57600080fd5b506101e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506108a5565b604051808215151515815260200191505060405180910390f35b34801561020f57600080fd5b50610244600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a18565b6040518082815260200191505060405180910390f35b34801561026657600080fd5b5061026f610a67565b6040518082815260200191505060405180910390f35b34801561029157600080fd5b506102f0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a71565b604051808215151515815260200191505060405180910390f35b34801561031657600080fd5b5061031f610e2f565b6040518082815260200191505060405180910390f35b34801561034157600080fd5b5061036060048036038101908080359060200190929190505050610e39565b005b34801561036e57600080fd5b506103b7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190505050610ea1565b005b3480156103c557600080fd5b506103ce610f8f565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561040e5780820151818401526020810190506103f3565b50505050905090810190601f16801561043b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561045557600080fd5b5061048a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611031565b6040518082815260200191505060405180910390f35b3480156104ac57600080fd5b506104b561107a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104f55780820151818401526020810190506104da565b50505050905090810190601f1680156105225780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561053c57600080fd5b5061057b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061111c565b604051808215151515815260200191505060405180910390f35b3480156105a157600080fd5b50610626600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061117b565b604051808215151515815260200191505060405180910390f35b34801561064c57600080fd5b50610681600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111d7565b005b34801561068f57600080fd5b5061069861127c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106e657600080fd5b5061071b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112a1565b6040518082815260200191505060405180910390f35b34801561073d57600080fd5b50610792600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112f0565b6040518082815260200191505060405180910390f35b3480156107b457600080fd5b506107e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611377565b604051808215151515815260200191505060405180910390f35b606060028054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561089b5780601f106108705761010080835404028352916020019161089b565b820191906000526020600020905b81548152906001019060200180831161087e57829003601f168201915b5050505050905090565b600080600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050809050919050565b6000600654905090565b6000808373ffffffffffffffffffffffffffffffffffffffff1614151515610a9857600080fd5b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610b2357600080fd5b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610b7157600080fd5b610b7b84836113d7565b1515610b8657600080fd5b610bd882600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143f90919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610c6d82600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461145890919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610d3f82600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143f90919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b6000600554905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e9457600080fd5b610e9e3382611476565b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610efc57600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555080600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010181905550505050565b606060048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110275780601f10610ffc57610100808354040283529160200191611027565b820191906000526020600020905b81548152906001019060200180831161100a57829003601f168201915b5050505050905090565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b606060038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111125780601f106110e757610100808354040283529160200191611112565b820191906000526020600020905b8154815290600101906020018083116110f557829003601f168201915b5050505050905090565b6000606060008473ffffffffffffffffffffffffffffffffffffffff161415151561114657600080fd5b61114f8461175d565b156111665761115f848483611770565b9150611174565b611171848483611b6e565b91505b5092915050565b6000808473ffffffffffffffffffffffffffffffffffffffff16141515156111a257600080fd5b6111ab8461175d565b156111c2576111bb848484611770565b90506111d0565b6111cd848484611b6e565b90505b9392505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561123257600080fd5b42600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001549050809050919050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600042600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101541115156113cd57600190506113d2565b600090505b919050565b6000806000806113e686611377565b156113f45760019350611436565b6113fd866112a1565b925061140886611031565b915061141d838361143f90919063ffffffff16565b905080851115156114315760019350611436565b600093505b50505092915050565b600082821115151561144d57fe5b818303905092915050565b600080828401905083811015151561146c57fe5b8091505092915050565b60606000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114d357600080fd5b81600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561152157600080fd5b61157382600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143f90919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506115cb8260065461143f90919063ffffffff16565b6006819055508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a2600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c1684846040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561171d578082015181840152602081019050611702565b50505050905090810190601f16801561174a5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a3505050565b600080823b905060008111915050919050565b60008083600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156117c157600080fd5b6117cb33856113d7565b15156117d657600080fd5b61182884600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143f90919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118bd84600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461145890919063ffffffff16565b600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508490508073ffffffffffffffffffffffffffffffffffffffff1663c0ee0b8a3386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156119c55780820151818401526020810190506119aa565b50505050905090810190601f1680156119f25780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611a1357600080fd5b505af1158015611a27573d6000803e3d6000fd5b505050508473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a38473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c1686866040518083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611b27578082015181840152602081019050611b0c565b50505050905090810190601f168015611b545780820380516001836020036101000a031916815260200191505b50935050505060405180910390a360019150509392505050565b600082600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515611bbe57600080fd5b611bc833846113d7565b1515611bd357600080fd5b611c2583600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143f90919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611cba83600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461145890919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c1685856040518083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611df9578082015181840152602081019050611dde565b50505050905090810190601f168015611e265780820380516001836020036101000a031916815260200191505b50935050505060405180910390a36001905093925050505600a165627a7a72305820248f11d8d43d83c34cbdc9fdc42d6bf8c1d7e963e994ed30ed69a038fd0ac0e900290000000000000000000000000000000000000000000000000000000005f5e100

Deployed Bytecode

0x6080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461010e578063095ea7b31461019e57806315875f541461020357806318160ddd1461025a57806323b872dd14610285578063313ce5671461030a57806342966c68146103355780634691a998146103625780635a3b7e42146103b957806370a082311461044957806395d89b41146104a0578063a9059cbb14610530578063be45fd6214610595578063bf05d65314610640578063ce606ee014610683578063d5a73fdd146106da578063dd62ed3e14610731578063fe0c4085146107a8575b34801561010857600080fd5b50600080fd5b34801561011a57600080fd5b50610123610803565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610163578082015181840152602081019050610148565b50505050905090810190601f1680156101905780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101aa57600080fd5b506101e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506108a5565b604051808215151515815260200191505060405180910390f35b34801561020f57600080fd5b50610244600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a18565b6040518082815260200191505060405180910390f35b34801561026657600080fd5b5061026f610a67565b6040518082815260200191505060405180910390f35b34801561029157600080fd5b506102f0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a71565b604051808215151515815260200191505060405180910390f35b34801561031657600080fd5b5061031f610e2f565b6040518082815260200191505060405180910390f35b34801561034157600080fd5b5061036060048036038101908080359060200190929190505050610e39565b005b34801561036e57600080fd5b506103b7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190505050610ea1565b005b3480156103c557600080fd5b506103ce610f8f565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561040e5780820151818401526020810190506103f3565b50505050905090810190601f16801561043b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561045557600080fd5b5061048a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611031565b6040518082815260200191505060405180910390f35b3480156104ac57600080fd5b506104b561107a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104f55780820151818401526020810190506104da565b50505050905090810190601f1680156105225780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561053c57600080fd5b5061057b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061111c565b604051808215151515815260200191505060405180910390f35b3480156105a157600080fd5b50610626600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061117b565b604051808215151515815260200191505060405180910390f35b34801561064c57600080fd5b50610681600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111d7565b005b34801561068f57600080fd5b5061069861127c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106e657600080fd5b5061071b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112a1565b6040518082815260200191505060405180910390f35b34801561073d57600080fd5b50610792600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112f0565b6040518082815260200191505060405180910390f35b3480156107b457600080fd5b506107e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611377565b604051808215151515815260200191505060405180910390f35b606060028054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561089b5780601f106108705761010080835404028352916020019161089b565b820191906000526020600020905b81548152906001019060200180831161087e57829003601f168201915b5050505050905090565b600080600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050809050919050565b6000600654905090565b6000808373ffffffffffffffffffffffffffffffffffffffff1614151515610a9857600080fd5b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610b2357600080fd5b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610b7157600080fd5b610b7b84836113d7565b1515610b8657600080fd5b610bd882600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143f90919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610c6d82600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461145890919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610d3f82600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143f90919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b6000600554905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e9457600080fd5b610e9e3382611476565b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610efc57600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555080600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010181905550505050565b606060048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110275780601f10610ffc57610100808354040283529160200191611027565b820191906000526020600020905b81548152906001019060200180831161100a57829003601f168201915b5050505050905090565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b606060038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111125780601f106110e757610100808354040283529160200191611112565b820191906000526020600020905b8154815290600101906020018083116110f557829003601f168201915b5050505050905090565b6000606060008473ffffffffffffffffffffffffffffffffffffffff161415151561114657600080fd5b61114f8461175d565b156111665761115f848483611770565b9150611174565b611171848483611b6e565b91505b5092915050565b6000808473ffffffffffffffffffffffffffffffffffffffff16141515156111a257600080fd5b6111ab8461175d565b156111c2576111bb848484611770565b90506111d0565b6111cd848484611b6e565b90505b9392505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561123257600080fd5b42600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001549050809050919050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600042600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101541115156113cd57600190506113d2565b600090505b919050565b6000806000806113e686611377565b156113f45760019350611436565b6113fd866112a1565b925061140886611031565b915061141d838361143f90919063ffffffff16565b905080851115156114315760019350611436565b600093505b50505092915050565b600082821115151561144d57fe5b818303905092915050565b600080828401905083811015151561146c57fe5b8091505092915050565b60606000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114d357600080fd5b81600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561152157600080fd5b61157382600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143f90919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506115cb8260065461143f90919063ffffffff16565b6006819055508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a2600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c1684846040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561171d578082015181840152602081019050611702565b50505050905090810190601f16801561174a5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a3505050565b600080823b905060008111915050919050565b60008083600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156117c157600080fd5b6117cb33856113d7565b15156117d657600080fd5b61182884600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143f90919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118bd84600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461145890919063ffffffff16565b600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508490508073ffffffffffffffffffffffffffffffffffffffff1663c0ee0b8a3386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156119c55780820151818401526020810190506119aa565b50505050905090810190601f1680156119f25780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611a1357600080fd5b505af1158015611a27573d6000803e3d6000fd5b505050508473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a38473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c1686866040518083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611b27578082015181840152602081019050611b0c565b50505050905090810190601f168015611b545780820380516001836020036101000a031916815260200191505b50935050505060405180910390a360019150509392505050565b600082600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515611bbe57600080fd5b611bc833846113d7565b1515611bd357600080fd5b611c2583600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143f90919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611cba83600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461145890919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c1685856040518083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611df9578082015181840152602081019050611dde565b50505050905090810190601f168015611e265780820380516001836020036101000a031916815260200191505b50935050505060405180910390a36001905093925050505600a165627a7a72305820248f11d8d43d83c34cbdc9fdc42d6bf8c1d7e963e994ed30ed69a038fd0ac0e90029

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000000000000000000000000000000000000005f5e100

-----Decoded View---------------
Arg [0] : _supply (uint256): 100000000

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000005f5e100


Deployed Bytecode Sourcemap

3547:7592:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3547:7592:0;8618:8;;;4208:84;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4208:84:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4208:84:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8066:265;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8066:265:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9804:160;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9804:160:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4765:91;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4765:91:0;;;;;;;;;;;;;;;;;;;;;;;7470:554;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7470:554:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4613:85;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4613:85:0;;;;;;;;;;;;;;;;;;;;;;;8696:91;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8696:91:0;;;;;;;;;;;;;;;;;;;;;;;;;;9335:183;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9335:183:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4476:84;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4476:84:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4476:84:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4928:112;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4928:112:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4343:80;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4343:80:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4343:80:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5116:322;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5116:322:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5512:304;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5512:304:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11036:100;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11036:100:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;960:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;960:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;9583:154;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9583:154:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8373:143;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8373:143:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10040:209;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10040:209:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4208:84;4245:6;4271:5;4264:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4208:84;:::o;8066:265::-;8133:12;8189:1;8157:7;:19;8165:10;8157:19;;;;;;;;;;;;;;;:29;8177:8;8157:29;;;;;;;;;;;;;;;:33;;;;8233:6;8201:7;:19;8209:10;8201:19;;;;;;;;;;;;;;;:29;8221:8;8201:29;;;;;;;;;;;;;;;:38;;;;8280:8;8259:38;;8268:10;8259:38;;;8290:6;8259:38;;;;;;;;;;;;;;;;;;8319:4;8312:11;;8066:265;;;;:::o;9804:160::-;9867:16;9907:8;:15;9916:5;9907:15;;;;;;;;;;;;;;;:23;;;9896:34;;9948:8;9941:15;;9804:160;;;:::o;4765:91::-;4809:7;4836:12;;4829:19;;4765:91;:::o;7470:554::-;7552:12;7591:3;7584;:10;;;;7576:19;;;;;;;;7624:7;:14;7632:5;7624:14;;;;;;;;;;;;;;;:26;7639:10;7624:26;;;;;;;;;;;;;;;;7614:6;:36;;7606:45;;;;;;;;7680:8;:15;7689:5;7680:15;;;;;;;;;;;;;;;;7670:6;:25;;7662:34;;;;;;;;7715:36;7738:5;7744:6;7715:22;:36::i;:::-;7707:45;;;;;;;;7785:27;7805:6;7785:8;:15;7794:5;7785:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;7767:8;:15;7776:5;7767:15;;;;;;;;;;;;;;;:45;;;;7839:25;7857:6;7839:8;:13;7848:3;7839:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;7823:8;:13;7832:3;7823:13;;;;;;;;;;;;;;;:41;;;;7904:38;7935:6;7904:7;:14;7912:5;7904:14;;;;;;;;;;;;;;;:26;7919:10;7904:26;;;;;;;;;;;;;;;;:30;;:38;;;;:::i;:::-;7875:7;:14;7883:5;7875:14;;;;;;;;;;;;;;;:26;7890:10;7875:26;;;;;;;;;;;;;;;:67;;;;7978:3;7962:28;;7971:5;7962:28;;;7983:6;7962:28;;;;;;;;;;;;;;;;;;8012:4;8005:11;;7470:554;;;;;:::o;4613:85::-;4654:7;4681:9;;4674:16;;4613:85;:::o;8696:91::-;1233:13;;;;;;;;;;;1219:27;;:10;:27;;;1211:36;;;;;;;;8754:25;8760:10;8772:6;8754:5;:25::i;:::-;8696:91;:::o;9335:183::-;1233:13;;;;;;;;;;;1219:27;;:10;:27;;;1211:36;;;;;;;;9458:7;9433:8;:15;9442:5;9433:15;;;;;;;;;;;;;;;:22;;:32;;;;9502:8;9476;:15;9485:5;9476:15;;;;;;;;;;;;;;;:23;;:34;;;;9335:183;;;:::o;4476:84::-;4517:6;4543:9;4536:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4476:84;:::o;4928:112::-;4983:15;5017:8;:15;5026:5;5017:15;;;;;;;;;;;;;;;;5010:22;;4928:112;;;:::o;4343:80::-;4382:6;4408:7;4401:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4343:80;:::o;5116:322::-;5179:12;5233:19;5218:3;5211;:10;;;;5203:19;;;;;;;;5266:15;5277:3;5266:10;:15::i;:::-;5263:168;;;5304:39;5323:3;5328:6;5336;5304:18;:39::i;:::-;5297:46;;;;5263:168;5381:38;5399:3;5404:6;5412;5381:17;:38::i;:::-;5374:45;;5116:322;;;;;;:::o;5512:304::-;5588:12;5628:3;5621;:10;;;;5613:19;;;;;;;;5646:15;5657:3;5646:10;:15::i;:::-;5643:166;;;5684:38;5703:3;5708:6;5716:5;5684:18;:38::i;:::-;5677:45;;;;5643:166;5760:37;5778:3;5783:6;5791:5;5760:17;:37::i;:::-;5753:44;;5512:304;;;;;;:::o;11036:100::-;1233:13;;;;;;;;;;;1219:27;;:10;:27;;;1211:36;;;;;;;;11125:3;11099:8;:15;11108:5;11099:15;;;;;;;;;;;;;;;:23;;:29;;;;11036:100;:::o;960:28::-;;;;;;;;;;;;;:::o;9583:154::-;9644:15;9682:8;:15;9691:5;9682:15;;;;;;;;;;;;;;;:22;;;9672:32;;9722:7;9715:14;;9583:154;;;:::o;8373:143::-;8447:17;8483:7;:15;8491:6;8483:15;;;;;;;;;;;;;;;:25;8499:8;8483:25;;;;;;;;;;;;;;;;8476:32;;8373:143;;;;:::o;10040:209::-;10098:4;10145:3;10118:8;:15;10127:5;10118:15;;;;;;;;;;;;;;;:23;;;:30;;10115:127;;;10172:4;10165:11;;;;10115:127;10225:5;10218:12;;10040:209;;;;:::o;10463:531::-;10550:4;10647:21;10708:23;10765:25;10570:19;10583:5;10570:12;:19::i;:::-;10567:420;;;10612:4;10605:11;;;;10567:420;10671:22;10687:5;10671:15;:22::i;:::-;10647:46;;10734:16;10744:5;10734:9;:16::i;:::-;10708:42;;10793:34;10813:13;10793:15;:19;;:34;;;;:::i;:::-;10765:62;;10860:17;10849:7;:28;;10846:130;;;10905:4;10898:11;;;;10846:130;10955:5;10948:12;;10463:531;;;;;;;;:::o;631:123::-;689:7;721:1;716;:6;;709:14;;;;;;745:1;741;:5;734:12;;631:123;;;;:::o;780:147::-;838:7;858:9;874:1;870;:5;858:17;;898:1;893;:6;;886:14;;;;;;918:1;911:8;;780:147;;;;;:::o;8854:417::-;9185:19;1233:13;;;;;;;;;;;1219:27;;:10;:27;;;1211:36;;;;;;;;8957:6;8938:8;:15;8947:5;8938:15;;;;;;;;;;;;;;;;:25;;8930:34;;;;;;;;8997:27;9017:6;8997:8;:15;9006:5;8997:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;8979:8;:15;8988:5;8979:15;;;;;;;;;;;;;;;:45;;;;9050:24;9067:6;9050:12;;:16;;:24;;;;:::i;:::-;9035:12;:39;;;;9105:5;9100:19;;;9112:6;9100:19;;;;;;;;;;;;;;;;;;9159:1;9135:35;;9144:5;9135:35;;;9163:6;9135:35;;;;;;;;;;;;;;;;;;9244:1;9220:43;;9229:5;9220:43;;;9248:6;9256;9220:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;9220:43:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8854:417;;;:::o;5956:217::-;6012:4;6029:19;6114:3;6102:16;6087:31;;6164:1;6150:11;:15;6143:22;;5956:217;;;;:::o;6252:622::-;6340:4;6600:38;6389:6;6365:8;:20;6374:10;6365:20;;;;;;;;;;;;;;;;:30;;6357:39;;;;;;;;6415:41;6438:10;6449:6;6415:22;:41::i;:::-;6407:50;;;;;;;;6501:32;6526:6;6501:8;:20;6510:10;6501:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;6478:8;:20;6487:10;6478:20;;;;;;;;;;;;;;;:55;;;;6560:25;6578:6;6560:8;:13;6569:3;6560:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;6544:8;:13;6553:3;6544:13;;;;;;;;;;;;;;;:41;;;;6665:3;6600:69;;6680:14;:28;;;6709:10;6721:6;6729:5;6680:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;6680:55:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6680:55:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6680:55:0;;;;6776:3;6755:33;;6764:10;6755:33;;;6781:6;6755:33;;;;;;;;;;;;;;;;;;6825:3;6804:40;;6813:10;6804:40;;;6830:6;6838:5;6804:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;6804:40:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6862:4;6855:11;;6252:622;;;;;;:::o;6963:465::-;7050:4;7099:6;7075:8;:20;7084:10;7075:20;;;;;;;;;;;;;;;;:30;;7067:39;;;;;;;;7125:41;7148:10;7159:6;7125:22;:41::i;:::-;7117:50;;;;;;;;7205:32;7230:6;7205:8;:20;7214:10;7205:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;7182:8;:20;7191:10;7182:20;;;;;;;;;;;;;;;:55;;;;7264:25;7282:6;7264:8;:13;7273:3;7264:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;7248:8;:13;7257:3;7248:13;;;;;;;;;;;;;;;:41;;;;7330:3;7309:33;;7318:10;7309:33;;;7335:6;7309:33;;;;;;;;;;;;;;;;;;7379:3;7358:40;;7367:10;7358:40;;;7384:6;7392:5;7358:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;7358:40:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7416:4;7409:11;;6963:465;;;;;:::o

Swarm Source

bzzr://248f11d8d43d83c34cbdc9fdc42d6bf8c1d7e963e994ed30ed69a038fd0ac0e9

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

OVERVIEW

SIH is an assets-backed investment system. Monthly returns are paid to wallets in USD Stablecoin. Their platform has CoinCover insurance backed guarantees up to $100000 per wallet, funds are stored with BitGo

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.