Overview
Max Total Supply
1,500,000,000 BDP
Holders
679 (0.00%)
Total Transfers
-
Market
Price
$0.00 @ 0.000000 ETH
Onchain Market Cap
$299,955.00
Circulating Supply Market Cap
$0.00
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
BDPToken
Compiler Version
v0.4.25+commit.59dbf8f1
Contract Source Code (Solidity Multiple files format)
pragma solidity 0.4.25; import "./StandardBurnableToken.sol"; import "./Whitelist.sol"; import "./SafeMath.sol"; contract BDPToken is StandardBurnableToken, Whitelist { using SafeMath for uint256; event Mint(address indexed to, uint256 amount); string public name = "BidiPass"; string public symbol = "BDP"; uint8 public decimals = 18; mapping(address => uint256) public _burnAllowance; /** * @param _beneficiary Beneficiary of whole amount of tokens * @param _cap Total amount of tokens to be minted */ constructor( address _beneficiary, uint256 _cap ) public { require(_cap > 0, "MissingCap"); totalSupply_ = totalSupply_.add(_cap); balances[_beneficiary] = balances[_beneficiary].add(_cap); emit Mint(_beneficiary, _cap); emit Transfer(address(0), _beneficiary, _cap); } /** * @dev Burns a specific amount of tokens. * @param _value The amount of token to be burned. */ function burn(uint256 _value) public { uint256 allowance = burnAllowance(msg.sender); require(_value > 0, "MissingValue"); require(allowance >= _value, "NotEnoughAllowance"); _setBurnAllowance(msg.sender, allowance.sub(_value)); _burn(msg.sender, _value); } /** * @dev Get tokens amount allowed to be burned * @param _who Tokens holder address */ function burnAllowance(address _who) public view returns (uint256) { return _burnAllowance[_who]; } /** MANAGER FUNCTIONS */ /** * @dev Set amount of tokens allowed to be burned by the holder * @param _who Tokens holder address * @param _amount Amount of tokens allowed to be burned */ function setBurnAllowance( address _who, uint256 _amount ) public onlyIfWhitelisted(msg.sender) { require(_amount <= balances[_who]); _setBurnAllowance(_who, _amount); } /** INTERNAL FUNCTIONS */ /** * @dev Set amount of tokens allowed to be burned by the holder * @param _who Tokens holder address * @param _amount Amount of tokens allowed to be burned */ function _setBurnAllowance( address _who, uint256 _amount ) internal { _burnAllowance[_who] = _amount; } }
pragma solidity ^0.4.24; import "./ERC20Basic.sol"; import "./SafeMath.sol"; /** * @title Basic token * @dev Basic version of StandardToken, with no allowances. */ contract BasicToken is ERC20Basic { using SafeMath for uint256; mapping(address => uint256) internal balances; uint256 internal totalSupply_; /** * @dev Total number of tokens in existence */ function totalSupply() public view returns (uint256) { return totalSupply_; } /** * @dev Transfer token for a specified address * @param _to The address to transfer to. * @param _value The amount to be transferred. */ function transfer(address _to, uint256 _value) public returns (bool) { require(_value <= balances[msg.sender]); require(_to != address(0)); balances[msg.sender] = balances[msg.sender].sub(_value); balances[_to] = balances[_to].add(_value); emit Transfer(msg.sender, _to, _value); return true; } /** * @dev Gets the balance of the specified address. * @param _owner The address to query the the balance of. * @return An uint256 representing the amount owned by the passed address. */ function balanceOf(address _owner) public view returns (uint256) { return balances[_owner]; } }
pragma solidity ^0.4.24; import "./BasicToken.sol"; /** * @title Burnable Token * @dev Token that can be irreversibly burned (destroyed). */ contract BurnableToken is BasicToken { event Burn(address indexed burner, uint256 value); /** * @dev Burns a specific amount of tokens. * @param _value The amount of token to be burned. */ function burn(uint256 _value) public { _burn(msg.sender, _value); } function _burn(address _who, uint256 _value) internal { require(_value <= balances[_who]); // no need to require value <= totalSupply, since that would imply the // sender's balance is greater than the totalSupply, which *should* be an assertion failure balances[_who] = balances[_who].sub(_value); totalSupply_ = totalSupply_.sub(_value); emit Burn(_who, _value); emit Transfer(_who, address(0), _value); } }
pragma solidity ^0.4.24; import "./ERC20Basic.sol"; /** * @title ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ 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 ); }
pragma solidity ^0.4.24; /** * @title ERC20Basic * @dev Simpler version of ERC20 interface * See https://github.com/ethereum/EIPs/issues/179 */ 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); }
pragma solidity ^0.4.24; /** * @title Ownable * @dev The Ownable contract has an owner address, and provides basic authorization control * functions, this simplifies the implementation of "user permissions". */ contract Ownable { address public owner; event OwnershipRenounced(address indexed previousOwner); event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); /** * @dev The Ownable constructor sets the original `owner` of the contract to the sender * account. */ constructor() public { owner = msg.sender; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(msg.sender == owner); _; } /** * @dev Allows the current owner to relinquish control of the contract. * @notice Renouncing to ownership will leave the contract without an owner. * It will not be possible to call the functions with the `onlyOwner` * modifier anymore. */ function renounceOwnership() public onlyOwner { emit OwnershipRenounced(owner); owner = address(0); } /** * @dev Allows the current owner to transfer control of the contract to a newOwner. * @param _newOwner The address to transfer ownership to. */ function transferOwnership(address _newOwner) public onlyOwner { _transferOwnership(_newOwner); } /** * @dev Transfers control of the contract to a newOwner. * @param _newOwner The address to transfer ownership to. */ function _transferOwnership(address _newOwner) internal { require(_newOwner != address(0)); emit OwnershipTransferred(owner, _newOwner); owner = _newOwner; } }
pragma solidity ^0.4.24; import "./Roles.sol"; /** * @title RBAC (Role-Based Access Control) * @author Matt Condon (@Shrugs) * @dev Stores and provides setters and getters for roles and addresses. * Supports unlimited numbers of roles and addresses. * See //contracts/mocks/RBACMock.sol for an example of usage. * This RBAC method uses strings to key roles. It may be beneficial * for you to write your own implementation of this interface using Enums or similar. */ contract RBAC { using Roles for Roles.Role; mapping (string => Roles.Role) private roles; event RoleAdded(address indexed operator, string role); event RoleRemoved(address indexed operator, string role); /** * @dev reverts if addr does not have role * @param _operator address * @param _role the name of the role * // reverts */ function checkRole(address _operator, string _role) public view { roles[_role].check(_operator); } /** * @dev determine if addr has role * @param _operator address * @param _role the name of the role * @return bool */ function hasRole(address _operator, string _role) public view returns (bool) { return roles[_role].has(_operator); } /** * @dev add a role to an address * @param _operator address * @param _role the name of the role */ function addRole(address _operator, string _role) internal { roles[_role].add(_operator); emit RoleAdded(_operator, _role); } /** * @dev remove a role from an address * @param _operator address * @param _role the name of the role */ function removeRole(address _operator, string _role) internal { roles[_role].remove(_operator); emit RoleRemoved(_operator, _role); } /** * @dev modifier to scope access to a single role (uses msg.sender as addr) * @param _role the name of the role * // reverts */ modifier onlyRole(string _role) { checkRole(msg.sender, _role); _; } /** * @dev modifier to scope access to a set of roles (uses msg.sender as addr) * @param _roles the names of the roles to scope access to * // reverts * * @TODO - when solidity supports dynamic arrays as arguments to modifiers, provide this * see: https://github.com/ethereum/solidity/issues/2467 */ // modifier onlyRoles(string[] _roles) { // bool hasAnyRole = false; // for (uint8 i = 0; i < _roles.length; i++) { // if (hasRole(msg.sender, _roles[i])) { // hasAnyRole = true; // break; // } // } // require(hasAnyRole); // _; // } }
pragma solidity ^0.4.24; /** * @title Roles * @author Francisco Giordano (@frangio) * @dev Library for managing addresses assigned to a Role. * See RBAC.sol for example usage. */ library Roles { struct Role { mapping (address => bool) bearer; } /** * @dev give an address access to this role */ function add(Role storage _role, address _addr) internal { _role.bearer[_addr] = true; } /** * @dev remove an address' access to this role */ function remove(Role storage _role, address _addr) internal { _role.bearer[_addr] = false; } /** * @dev check if an address has this role * // reverts */ function check(Role storage _role, address _addr) internal view { require(has(_role, _addr)); } /** * @dev check if an address has this role * @return bool */ function has(Role storage _role, address _addr) internal view returns (bool) { return _role.bearer[_addr]; } }
pragma solidity ^0.4.24; /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ library SafeMath { /** * @dev Multiplies two numbers, throws on overflow. */ function mul(uint256 _a, uint256 _b) internal pure returns (uint256 c) { // Gas optimization: this is cheaper than asserting 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522 if (_a == 0) { return 0; } c = _a * _b; assert(c / _a == _b); return c; } /** * @dev Integer division of two numbers, truncating the quotient. */ 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 _a / _b; } /** * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend). */ function sub(uint256 _a, uint256 _b) internal pure returns (uint256) { assert(_b <= _a); return _a - _b; } /** * @dev Adds two numbers, throws on overflow. */ function add(uint256 _a, uint256 _b) internal pure returns (uint256 c) { c = _a + _b; assert(c >= _a); return c; } }
pragma solidity ^0.4.24; import "./BurnableToken.sol"; import "./StandardToken.sol"; /** * @title Standard Burnable Token * @dev Adds burnFrom method to ERC20 implementations */ contract StandardBurnableToken is BurnableToken, StandardToken { /** * @dev Burns a specific amount of tokens from the target address and decrements allowance * @param _from address The address which you want to send tokens from * @param _value uint256 The amount of token to be burned */ function burnFrom(address _from, uint256 _value) public { require(_value <= allowed[_from][msg.sender]); // Should https://github.com/OpenZeppelin/zeppelin-solidity/issues/707 be accepted, // this function needs to emit an event with the updated approval. allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value); _burn(_from, _value); } }
pragma solidity ^0.4.24; import "./BasicToken.sol"; import "./ERC20.sol"; /** * @title Standard ERC20 token * * @dev Implementation of the basic standard token. * https://github.com/ethereum/EIPs/issues/20 * Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol */ contract StandardToken is ERC20, BasicToken { mapping (address => mapping (address => uint256)) internal allowed; /** * @dev Transfer tokens from one address to another * @param _from address The address which you want to send tokens from * @param _to address The address which you want to transfer to * @param _value uint256 the amount of tokens to be transferred */ function transferFrom( address _from, address _to, uint256 _value ) public returns (bool) { require(_value <= balances[_from]); require(_value <= allowed[_from][msg.sender]); require(_to != address(0)); 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; } /** * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender. * Beware that changing an allowance with this method brings the risk that someone may use both the old * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * @param _spender The address which will spend the funds. * @param _value The amount of tokens to be spent. */ function approve(address _spender, uint256 _value) public returns (bool) { allowed[msg.sender][_spender] = _value; emit Approval(msg.sender, _spender, _value); return true; } /** * @dev Function to check the amount of tokens that an owner allowed to a spender. * @param _owner address The address which owns the funds. * @param _spender address The address which will spend the funds. * @return A uint256 specifying the amount of tokens still available for the spender. */ function allowance( address _owner, address _spender ) public view returns (uint256) { return allowed[_owner][_spender]; } /** * @dev Increase the amount of tokens that an owner allowed to a spender. * approve should be called when allowed[_spender] == 0. To increment * allowed value is better to use this function to avoid 2 calls (and wait until * the first transaction is mined) * From MonolithDAO Token.sol * @param _spender The address which will spend the funds. * @param _addedValue The amount of tokens to increase the allowance by. */ function increaseApproval( address _spender, uint256 _addedValue ) public returns (bool) { allowed[msg.sender][_spender] = ( allowed[msg.sender][_spender].add(_addedValue)); emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); return true; } /** * @dev Decrease the amount of tokens that an owner allowed to a spender. * approve should be called when allowed[_spender] == 0. To decrement * allowed value is better to use this function to avoid 2 calls (and wait until * the first transaction is mined) * From MonolithDAO Token.sol * @param _spender The address which will spend the funds. * @param _subtractedValue The amount of tokens to decrease the allowance by. */ function decreaseApproval( address _spender, uint256 _subtractedValue ) public returns (bool) { uint256 oldValue = allowed[msg.sender][_spender]; if (_subtractedValue >= oldValue) { allowed[msg.sender][_spender] = 0; } else { allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue); } emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); return true; } }
pragma solidity ^0.4.24; import "./Ownable.sol"; import "./RBAC.sol"; /** * @title Whitelist * @dev The Whitelist contract has a whitelist of addresses, and provides basic authorization control functions. * This simplifies the implementation of "user permissions". */ contract Whitelist is Ownable, RBAC { string public constant ROLE_WHITELISTED = "whitelist"; /** * @dev Throws if operator is not whitelisted. * @param _operator address */ modifier onlyIfWhitelisted(address _operator) { checkRole(_operator, ROLE_WHITELISTED); _; } /** * @dev add an address to the whitelist * @param _operator address * @return true if the address was added to the whitelist, false if the address was already in the whitelist */ function addAddressToWhitelist(address _operator) public onlyOwner { addRole(_operator, ROLE_WHITELISTED); } /** * @dev getter to determine if address is in whitelist */ function whitelist(address _operator) public view returns (bool) { return hasRole(_operator, ROLE_WHITELISTED); } /** * @dev add addresses to the whitelist * @param _operators addresses * @return true if at least one address was added to the whitelist, * false if all addresses were already in the whitelist */ function addAddressesToWhitelist(address[] _operators) public onlyOwner { for (uint256 i = 0; i < _operators.length; i++) { addAddressToWhitelist(_operators[i]); } } /** * @dev remove an address from the whitelist * @param _operator address * @return true if the address was removed from the whitelist, * false if the address wasn't in the whitelist in the first place */ function removeAddressFromWhitelist(address _operator) public onlyOwner { removeRole(_operator, ROLE_WHITELISTED); } /** * @dev remove addresses from the whitelist * @param _operators addresses * @return true if at least one address was removed from the whitelist, * false if all addresses weren't in the whitelist in the first place */ function removeAddressesFromWhitelist(address[] _operators) public onlyOwner { for (uint256 i = 0; i < _operators.length; i++) { removeAddressFromWhitelist(_operators[i]); } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"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":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_operator","type":"address"},{"name":"_role","type":"string"}],"name":"checkRole","outputs":[],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ROLE_WHITELISTED","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"_burnAllowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_operator","type":"address"},{"name":"_role","type":"string"}],"name":"hasRole","outputs":[{"name":"","type":"bool"}],"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":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_operators","type":"address[]"}],"name":"removeAddressesFromWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_operator","type":"address"}],"name":"removeAddressFromWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"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":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"}],"name":"burnFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_who","type":"address"},{"name":"_amount","type":"uint256"}],"name":"setBurnAllowance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_operator","type":"address"}],"name":"addAddressToWhitelist","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":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_operator","type":"address"}],"name":"whitelist","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_operators","type":"address[]"}],"name":"addAddressesToWhitelist","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":"_who","type":"address"}],"name":"burnAllowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_beneficiary","type":"address"},{"name":"_cap","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"operator","type":"address"},{"indexed":false,"name":"role","type":"string"}],"name":"RoleAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"operator","type":"address"},{"indexed":false,"name":"role","type":"string"}],"name":"RoleRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"}],"name":"OwnershipRenounced","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"burner","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","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"},{"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"}]
Contract Creation Code
60c0604052600860808190527f426964695061737300000000000000000000000000000000000000000000000060a09081526200004091600591906200023e565b506040805180820190915260038082527f4244500000000000000000000000000000000000000000000000000000000000602090920191825262000087916006916200023e565b506007805460ff19166012179055348015620000a257600080fd5b506040516040806200186c83398101604052805160209091015160038054600160a060020a03191633179055600081116200013e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4d697373696e6743617000000000000000000000000000000000000000000000604482015290519081900360640190fd5b6001546200015b90826401000000006200115b6200022a82021704565b600155600160a060020a0382166000908152602081905260409020546200019190826401000000006200115b6200022a82021704565b600160a060020a03831660008181526020818152604091829020939093558051848152905191927f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688592918290030190a2604080518281529051600160a060020a038416916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050620002e3565b818101828110156200023857fe5b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200028157805160ff1916838001178555620002b1565b82800160010185558215620002b1579182015b82811115620002b157825182559160200191906001019062000294565b50620002bf929150620002c3565b5090565b620002e091905b80821115620002bf5760008155600101620002ca565b90565b61157980620002f36000396000f30060806040526004361061015e5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610163578063095ea7b3146101ed5780630988ca8c1461022557806318160ddd1461028e57806318b919e9146102b55780631fc693f2146102ca578063217fe6c6146102eb57806323b872dd1461035257806324953eaa1461037c578063286dd3f5146103d1578063313ce567146103f257806342966c681461041d578063661884631461043557806370a0823114610459578063715018a61461047a57806379cc67901461048f5780637b1f8c17146104b35780637b9417c8146104d75780638da5cb5b146104f857806395d89b41146105295780639b19251a1461053e578063a9059cbb1461055f578063d73dd62314610583578063dd62ed3e146105a7578063e2ec6ec3146105ce578063f2fde38b14610623578063f93102b814610644575b600080fd5b34801561016f57600080fd5b50610178610665565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101b257818101518382015260200161019a565b50505050905090810190601f1680156101df5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101f957600080fd5b50610211600160a060020a03600435166024356106f3565b604080519115158252519081900360200190f35b34801561023157600080fd5b5060408051602060046024803582810135601f810185900485028601850190965285855261028c958335600160a060020a03169536956044949193909101919081908401838280828437509497506107599650505050505050565b005b34801561029a57600080fd5b506102a36107c7565b60408051918252519081900360200190f35b3480156102c157600080fd5b506101786107cd565b3480156102d657600080fd5b506102a3600160a060020a03600435166107f2565b3480156102f757600080fd5b5060408051602060046024803582810135601f8101859004850286018501909652858552610211958335600160a060020a03169536956044949193909101919081908401838280828437509497506108049650505050505050565b34801561035e57600080fd5b50610211600160a060020a0360043581169060243516604435610877565b34801561038857600080fd5b506040805160206004803580820135838102808601850190965280855261028c953695939460249493850192918291850190849080828437509497506109ec9650505050505050565b3480156103dd57600080fd5b5061028c600160a060020a0360043516610a3b565b3480156103fe57600080fd5b50610407610a82565b6040805160ff9092168252519081900360200190f35b34801561042957600080fd5b5061028c600435610a8b565b34801561044157600080fd5b50610211600160a060020a0360043516602435610b99565b34801561046557600080fd5b506102a3600160a060020a0360043516610c88565b34801561048657600080fd5b5061028c610ca3565b34801561049b57600080fd5b5061028c600160a060020a0360043516602435610d11565b3480156104bf57600080fd5b5061028c600160a060020a0360043516602435610da3565b3480156104e357600080fd5b5061028c600160a060020a0360043516610e05565b34801561050457600080fd5b5061050d610e49565b60408051600160a060020a039092168252519081900360200190f35b34801561053557600080fd5b50610178610e58565b34801561054a57600080fd5b50610211600160a060020a0360043516610eb3565b34801561056b57600080fd5b50610211600160a060020a0360043516602435610ee8565b34801561058f57600080fd5b50610211600160a060020a0360043516602435610fc7565b3480156105b357600080fd5b506102a3600160a060020a0360043581169060243516611060565b3480156105da57600080fd5b506040805160206004803580820135838102808601850190965280855261028c9536959394602494938501929182918501908490808284375094975061108b9650505050505050565b34801561062f57600080fd5b5061028c600160a060020a03600435166110da565b34801561065057600080fd5b506102a3600160a060020a03600435166110fa565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156106eb5780601f106106c0576101008083540402835291602001916106eb565b820191906000526020600020905b8154815290600101906020018083116106ce57829003601f168201915b505050505081565b336000818152600260209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b6107c3826004836040518082805190602001908083835b6020831061078f5780518252601f199092019160209182019101610770565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922092915050611115565b5050565b60015490565b604080518082019091526009815260008051602061152e833981519152602082015281565b60086020526000908152604090205481565b6000610870836004846040518082805190602001908083835b6020831061083c5780518252601f19909201916020918201910161081d565b51815160209384036101000a600019018019909216911617905292019485525060405193849003019092209291505061112a565b9392505050565b600160a060020a03831660009081526020819052604081205482111561089c57600080fd5b600160a060020a03841660009081526002602090815260408083203384529091529020548211156108cc57600080fd5b600160a060020a03831615156108e157600080fd5b600160a060020a03841660009081526020819052604090205461090a908363ffffffff61114916565b600160a060020a03808616600090815260208190526040808220939093559085168152205461093f908363ffffffff61115b16565b600160a060020a03808516600090815260208181526040808320949094559187168152600282528281203382529091522054610981908363ffffffff61114916565b600160a060020a03808616600081815260026020908152604080832033845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060019392505050565b600354600090600160a060020a03163314610a0657600080fd5b5060005b81518110156107c357610a338282815181101515610a2457fe5b90602001906020020151610a3b565b600101610a0a565b600354600160a060020a03163314610a5257600080fd5b610a7f8160408051908101604052806009815260200160008051602061152e833981519152815250611168565b50565b60075460ff1681565b6000610a96336110fa565b905060008211610b0757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f4d697373696e6756616c75650000000000000000000000000000000000000000604482015290519081900360640190fd5b81811015610b7657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4e6f74456e6f756768416c6c6f77616e63650000000000000000000000000000604482015290519081900360640190fd5b610b8f33610b8a838563ffffffff61114916565b611279565b6107c33383611295565b336000908152600260209081526040808320600160a060020a0386168452909152812054808310610bed57336000908152600260209081526040808320600160a060020a0388168452909152812055610c22565b610bfd818463ffffffff61114916565b336000908152600260209081526040808320600160a060020a03891684529091529020555b336000818152600260209081526040808320600160a060020a0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b600160a060020a031660009081526020819052604090205490565b600354600160a060020a03163314610cba57600080fd5b600354604051600160a060020a03909116907ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482090600090a26003805473ffffffffffffffffffffffffffffffffffffffff19169055565b600160a060020a0382166000908152600260209081526040808320338452909152902054811115610d4157600080fd5b600160a060020a0382166000908152600260209081526040808320338452909152902054610d75908263ffffffff61114916565b600160a060020a03831660009081526002602090815260408083203384529091529020556107c38282611295565b33610dd18160408051908101604052806009815260200160008051602061152e833981519152815250610759565b600160a060020a038316600090815260208190526040902054821115610df657600080fd5b610e008383611279565b505050565b600354600160a060020a03163314610e1c57600080fd5b610a7f8160408051908101604052806009815260200160008051602061152e833981519152815250611396565b600354600160a060020a031681565b6006805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156106eb5780601f106106c0576101008083540402835291602001916106eb565b6000610ee28260408051908101604052806009815260200160008051602061152e833981519152815250610804565b92915050565b33600090815260208190526040812054821115610f0457600080fd5b600160a060020a0383161515610f1957600080fd5b33600090815260208190526040902054610f39908363ffffffff61114916565b3360009081526020819052604080822092909255600160a060020a03851681522054610f6b908363ffffffff61115b16565b600160a060020a038416600081815260208181526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b336000908152600260209081526040808320600160a060020a0386168452909152812054610ffb908363ffffffff61115b16565b336000818152600260209081526040808320600160a060020a0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b600354600090600160a060020a031633146110a557600080fd5b5060005b81518110156107c3576110d282828151811015156110c357fe5b90602001906020020151610e05565b6001016110a9565b600354600160a060020a031633146110f157600080fd5b610a7f81611468565b600160a060020a031660009081526008602052604090205490565b61111f828261112a565b15156107c357600080fd5b600160a060020a03166000908152602091909152604090205460ff1690565b60008282111561115557fe5b50900390565b81810182811015610ee257fe5b6111d2826004836040518082805190602001908083835b6020831061119e5780518252601f19909201916020918201910161117f565b51815160209384036101000a60001901801990921691161790529201948552506040519384900301909220929150506114e6565b81600160a060020a03167fd211483f91fc6eff862467f8de606587a30c8fc9981056f051b897a418df803a826040518080602001828103825283818151815260200191508051906020019080838360005b8381101561123b578181015183820152602001611223565b50505050905090810190601f1680156112685780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050565b600160a060020a03909116600090815260086020526040902055565b600160a060020a0382166000908152602081905260409020548111156112ba57600080fd5b600160a060020a0382166000908152602081905260409020546112e3908263ffffffff61114916565b600160a060020a03831660009081526020819052604090205560015461130f908263ffffffff61114916565b600155604080518281529051600160a060020a038416917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a2604080518281529051600091600160a060020a038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b611400826004836040518082805190602001908083835b602083106113cc5780518252601f1990920191602091820191016113ad565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922092915050611508565b81600160a060020a03167fbfec83d64eaa953f2708271a023ab9ee82057f8f3578d548c1a4ba0b5b700489826040518080602001828103825283818151815260200191508051906020019080838360008381101561123b578181015183820152602001611223565b600160a060020a038116151561147d57600080fd5b600354604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a0316600090815260209190915260409020805460ff19169055565b600160a060020a0316600090815260209190915260409020805460ff19166001179055560077686974656c6973740000000000000000000000000000000000000000000000a165627a7a723058200f0bca38511b2066ce8ab19eeeb26adf91f8f93436f8b48b026d87fcc9d0a93d0029000000000000000000000000c9c61fdc3c6efe656ecc2b0735be827e80b607ec000000000000000000000000000000000000000004d8c55aefb8c05b5c000000
Deployed Bytecode
0x60806040526004361061015e5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610163578063095ea7b3146101ed5780630988ca8c1461022557806318160ddd1461028e57806318b919e9146102b55780631fc693f2146102ca578063217fe6c6146102eb57806323b872dd1461035257806324953eaa1461037c578063286dd3f5146103d1578063313ce567146103f257806342966c681461041d578063661884631461043557806370a0823114610459578063715018a61461047a57806379cc67901461048f5780637b1f8c17146104b35780637b9417c8146104d75780638da5cb5b146104f857806395d89b41146105295780639b19251a1461053e578063a9059cbb1461055f578063d73dd62314610583578063dd62ed3e146105a7578063e2ec6ec3146105ce578063f2fde38b14610623578063f93102b814610644575b600080fd5b34801561016f57600080fd5b50610178610665565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101b257818101518382015260200161019a565b50505050905090810190601f1680156101df5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101f957600080fd5b50610211600160a060020a03600435166024356106f3565b604080519115158252519081900360200190f35b34801561023157600080fd5b5060408051602060046024803582810135601f810185900485028601850190965285855261028c958335600160a060020a03169536956044949193909101919081908401838280828437509497506107599650505050505050565b005b34801561029a57600080fd5b506102a36107c7565b60408051918252519081900360200190f35b3480156102c157600080fd5b506101786107cd565b3480156102d657600080fd5b506102a3600160a060020a03600435166107f2565b3480156102f757600080fd5b5060408051602060046024803582810135601f8101859004850286018501909652858552610211958335600160a060020a03169536956044949193909101919081908401838280828437509497506108049650505050505050565b34801561035e57600080fd5b50610211600160a060020a0360043581169060243516604435610877565b34801561038857600080fd5b506040805160206004803580820135838102808601850190965280855261028c953695939460249493850192918291850190849080828437509497506109ec9650505050505050565b3480156103dd57600080fd5b5061028c600160a060020a0360043516610a3b565b3480156103fe57600080fd5b50610407610a82565b6040805160ff9092168252519081900360200190f35b34801561042957600080fd5b5061028c600435610a8b565b34801561044157600080fd5b50610211600160a060020a0360043516602435610b99565b34801561046557600080fd5b506102a3600160a060020a0360043516610c88565b34801561048657600080fd5b5061028c610ca3565b34801561049b57600080fd5b5061028c600160a060020a0360043516602435610d11565b3480156104bf57600080fd5b5061028c600160a060020a0360043516602435610da3565b3480156104e357600080fd5b5061028c600160a060020a0360043516610e05565b34801561050457600080fd5b5061050d610e49565b60408051600160a060020a039092168252519081900360200190f35b34801561053557600080fd5b50610178610e58565b34801561054a57600080fd5b50610211600160a060020a0360043516610eb3565b34801561056b57600080fd5b50610211600160a060020a0360043516602435610ee8565b34801561058f57600080fd5b50610211600160a060020a0360043516602435610fc7565b3480156105b357600080fd5b506102a3600160a060020a0360043581169060243516611060565b3480156105da57600080fd5b506040805160206004803580820135838102808601850190965280855261028c9536959394602494938501929182918501908490808284375094975061108b9650505050505050565b34801561062f57600080fd5b5061028c600160a060020a03600435166110da565b34801561065057600080fd5b506102a3600160a060020a03600435166110fa565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156106eb5780601f106106c0576101008083540402835291602001916106eb565b820191906000526020600020905b8154815290600101906020018083116106ce57829003601f168201915b505050505081565b336000818152600260209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b6107c3826004836040518082805190602001908083835b6020831061078f5780518252601f199092019160209182019101610770565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922092915050611115565b5050565b60015490565b604080518082019091526009815260008051602061152e833981519152602082015281565b60086020526000908152604090205481565b6000610870836004846040518082805190602001908083835b6020831061083c5780518252601f19909201916020918201910161081d565b51815160209384036101000a600019018019909216911617905292019485525060405193849003019092209291505061112a565b9392505050565b600160a060020a03831660009081526020819052604081205482111561089c57600080fd5b600160a060020a03841660009081526002602090815260408083203384529091529020548211156108cc57600080fd5b600160a060020a03831615156108e157600080fd5b600160a060020a03841660009081526020819052604090205461090a908363ffffffff61114916565b600160a060020a03808616600090815260208190526040808220939093559085168152205461093f908363ffffffff61115b16565b600160a060020a03808516600090815260208181526040808320949094559187168152600282528281203382529091522054610981908363ffffffff61114916565b600160a060020a03808616600081815260026020908152604080832033845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060019392505050565b600354600090600160a060020a03163314610a0657600080fd5b5060005b81518110156107c357610a338282815181101515610a2457fe5b90602001906020020151610a3b565b600101610a0a565b600354600160a060020a03163314610a5257600080fd5b610a7f8160408051908101604052806009815260200160008051602061152e833981519152815250611168565b50565b60075460ff1681565b6000610a96336110fa565b905060008211610b0757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f4d697373696e6756616c75650000000000000000000000000000000000000000604482015290519081900360640190fd5b81811015610b7657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4e6f74456e6f756768416c6c6f77616e63650000000000000000000000000000604482015290519081900360640190fd5b610b8f33610b8a838563ffffffff61114916565b611279565b6107c33383611295565b336000908152600260209081526040808320600160a060020a0386168452909152812054808310610bed57336000908152600260209081526040808320600160a060020a0388168452909152812055610c22565b610bfd818463ffffffff61114916565b336000908152600260209081526040808320600160a060020a03891684529091529020555b336000818152600260209081526040808320600160a060020a0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b600160a060020a031660009081526020819052604090205490565b600354600160a060020a03163314610cba57600080fd5b600354604051600160a060020a03909116907ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482090600090a26003805473ffffffffffffffffffffffffffffffffffffffff19169055565b600160a060020a0382166000908152600260209081526040808320338452909152902054811115610d4157600080fd5b600160a060020a0382166000908152600260209081526040808320338452909152902054610d75908263ffffffff61114916565b600160a060020a03831660009081526002602090815260408083203384529091529020556107c38282611295565b33610dd18160408051908101604052806009815260200160008051602061152e833981519152815250610759565b600160a060020a038316600090815260208190526040902054821115610df657600080fd5b610e008383611279565b505050565b600354600160a060020a03163314610e1c57600080fd5b610a7f8160408051908101604052806009815260200160008051602061152e833981519152815250611396565b600354600160a060020a031681565b6006805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156106eb5780601f106106c0576101008083540402835291602001916106eb565b6000610ee28260408051908101604052806009815260200160008051602061152e833981519152815250610804565b92915050565b33600090815260208190526040812054821115610f0457600080fd5b600160a060020a0383161515610f1957600080fd5b33600090815260208190526040902054610f39908363ffffffff61114916565b3360009081526020819052604080822092909255600160a060020a03851681522054610f6b908363ffffffff61115b16565b600160a060020a038416600081815260208181526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b336000908152600260209081526040808320600160a060020a0386168452909152812054610ffb908363ffffffff61115b16565b336000818152600260209081526040808320600160a060020a0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b600354600090600160a060020a031633146110a557600080fd5b5060005b81518110156107c3576110d282828151811015156110c357fe5b90602001906020020151610e05565b6001016110a9565b600354600160a060020a031633146110f157600080fd5b610a7f81611468565b600160a060020a031660009081526008602052604090205490565b61111f828261112a565b15156107c357600080fd5b600160a060020a03166000908152602091909152604090205460ff1690565b60008282111561115557fe5b50900390565b81810182811015610ee257fe5b6111d2826004836040518082805190602001908083835b6020831061119e5780518252601f19909201916020918201910161117f565b51815160209384036101000a60001901801990921691161790529201948552506040519384900301909220929150506114e6565b81600160a060020a03167fd211483f91fc6eff862467f8de606587a30c8fc9981056f051b897a418df803a826040518080602001828103825283818151815260200191508051906020019080838360005b8381101561123b578181015183820152602001611223565b50505050905090810190601f1680156112685780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050565b600160a060020a03909116600090815260086020526040902055565b600160a060020a0382166000908152602081905260409020548111156112ba57600080fd5b600160a060020a0382166000908152602081905260409020546112e3908263ffffffff61114916565b600160a060020a03831660009081526020819052604090205560015461130f908263ffffffff61114916565b600155604080518281529051600160a060020a038416917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a2604080518281529051600091600160a060020a038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b611400826004836040518082805190602001908083835b602083106113cc5780518252601f1990920191602091820191016113ad565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922092915050611508565b81600160a060020a03167fbfec83d64eaa953f2708271a023ab9ee82057f8f3578d548c1a4ba0b5b700489826040518080602001828103825283818151815260200191508051906020019080838360008381101561123b578181015183820152602001611223565b600160a060020a038116151561147d57600080fd5b600354604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a0316600090815260209190915260409020805460ff19169055565b600160a060020a0316600090815260209190915260409020805460ff19166001179055560077686974656c6973740000000000000000000000000000000000000000000000a165627a7a723058200f0bca38511b2066ce8ab19eeeb26adf91f8f93436f8b48b026d87fcc9d0a93d0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000c9c61fdc3c6efe656ecc2b0735be827e80b607ec000000000000000000000000000000000000000004d8c55aefb8c05b5c000000
-----Decoded View---------------
Arg [0] : _beneficiary (address): 0xc9c61FDC3C6eFe656EcC2b0735BE827E80B607EC
Arg [1] : _cap (uint256): 1500000000000000000000000000
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000c9c61fdc3c6efe656ecc2b0735be827e80b607ec
Arg [1] : 000000000000000000000000000000000000000004d8c55aefb8c05b5c000000
Deployed Bytecode Sourcemap
115:2268:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;261:31;;8:9:-1;5:2;;;30:1;27;20:12;5:2;261:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;261:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1814:188:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1814:188:10;-1:-1:-1;;;;;1814:188:10;;;;;;;;;;;;;;;;;;;;;;;;;837:114:6;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;837:114:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;837:114:6;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;837:114:6;;-1:-1:-1;837:114:6;;-1:-1:-1;;;;;;;837:114:6;;;380:83:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;380:83:1;;;;;;;;;;;;;;;;;;;;316:53:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;316:53:11;;;;365:49:0;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;365:49:0;-1:-1:-1;;;;;365:49:0;;;;;1091:136:6;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1091:136:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1091:136:6;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1091:136:6;;-1:-1:-1;1091:136:6;;-1:-1:-1;;;;;;;1091:136:6;726:470:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;726:470:10;-1:-1:-1;;;;;726:470:10;;;;;;;;;;;;2105:201:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2105:201:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2105:201:11;;-1:-1:-1;2105:201:11;;-1:-1:-1;;;;;;;2105:201:11;1732:132;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1732:132:11;-1:-1:-1;;;;;1732:132:11;;;;;332:26:0;;8:9:-1;5:2;;;30:1;27;20:12;5:2;332:26:0;;;;;;;;;;;;;;;;;;;;;;;1016:304;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1016:304:0;;;;;3679:432:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3679:432:10;-1:-1:-1;;;;;3679:432:10;;;;;;;1140:99:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1140:99:1;-1:-1:-1;;;;;1140:99:1;;;;;1001:111:5;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1001:111:5;;;;490:370:9;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;490:370:9;-1:-1:-1;;;;;490:370:9;;;;;;;1794:229:0;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1794:229:0;-1:-1:-1;;;;;1794:229:0;;;;;;;766:124:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;766:124:11;-1:-1:-1;;;;;766:124:11;;;;;238:20:5;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:5;;;;;;;;-1:-1:-1;;;;;238:20:5;;;;;;;;;;;;;;298:28:0;;8:9:-1;5:2;;;30:1;27;20:12;5:2;298:28:0;;;;963:133:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;963:133:11;-1:-1:-1;;;;;963:133:11;;;;;617:321:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;617:321:1;-1:-1:-1;;;;;617:321:1;;;;;;;2926:296:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2926:296:10;-1:-1:-1;;;;;2926:296:10;;;;;;;2321:153;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2321:153:10;-1:-1:-1;;;;;2321:153:10;;;;;;;;;;1314:191:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1314:191:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1314:191:11;;-1:-1:-1;1314:191:11;;-1:-1:-1;;;;;;;1314:191:11;1274:103:5;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1274:103:5;-1:-1:-1;;;;;1274:103:5;;;;;1434:139:0;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1434:139:0;-1:-1:-1;;;;;1434:139:0;;;;;261:31;;;;;;;;;;;;;;;-1:-1:-1;;261:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1814:188:10:-;1901:10;1881:4;1893:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;1893:29:10;;;;;;;;;;;:38;;;1942;;;;;;;1881:4;;1893:29;;1901:10;;1942:38;;;;;;;;-1:-1:-1;1993:4:10;1814:188;;;;:::o;837:114:6:-;917:29;936:9;917:5;923;917:12;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;917:12:6;;;;;-1:-1:-1;917:12:6;;;;;;;;;;;;-1:-1:-1;;917:18:6;:29::i;:::-;837:114;;:::o;380:83:1:-;446:12;;380:83;:::o;316:53:11:-;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;316:53:11;;;;;:::o;365:49:0:-;;;;;;;;;;;;;:::o;1091:136:6:-;1174:4;1195:27;1212:9;1195:5;1201;1195:12;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;1195:12:6;;;;;-1:-1:-1;1195:12:6;;;;;;;;;;;;-1:-1:-1;;1195:16:6;:27::i;:::-;1188:34;1091:136;-1:-1:-1;;;1091:136:6:o;726:470:10:-;-1:-1:-1;;;;;864:15:10;;832:4;864:15;;;;;;;;;;;854:25;;;846:34;;;;;;-1:-1:-1;;;;;904:14:10;;;;;;:7;:14;;;;;;;;919:10;904:26;;;;;;;;894:36;;;886:45;;;;;;-1:-1:-1;;;;;945:17:10;;;;937:26;;;;;;-1:-1:-1;;;;;988:15:10;;:8;:15;;;;;;;;;;;:27;;1008:6;988:27;:19;:27;:::i;:::-;-1:-1:-1;;;;;970:15:10;;;:8;:15;;;;;;;;;;;:45;;;;1037:13;;;;;;;:25;;1055:6;1037:25;:17;:25;:::i;:::-;-1:-1:-1;;;;;1021:13:10;;;:8;:13;;;;;;;;;;;:41;;;;1097:14;;;;;:7;:14;;;;;1112:10;1097:26;;;;;;;:38;;1128:6;1097:38;:30;:38;:::i;:::-;-1:-1:-1;;;;;1068:14:10;;;;;;;:7;:14;;;;;;;;1083:10;1068:26;;;;;;;;:67;;;;1146:28;;;;;;;;;;;1068:14;;1146:28;;;;;;;;;;;-1:-1:-1;1187:4:10;726:470;;;;;:::o;2105:201:11:-;719:5:5;;2203:9:11;;-1:-1:-1;;;;;719:5:5;705:10;:19;697:28;;;;;;-1:-1:-1;2215:1:11;2198:104;2222:10;:17;2218:1;:21;2198:104;;;2254:41;2281:10;2292:1;2281:13;;;;;;;;;;;;;;;;;;2254:26;:41::i;:::-;2241:3;;2198:104;;1732:132;719:5:5;;-1:-1:-1;;;;;719:5:5;705:10;:19;697:28;;;;;;1820:39:11;1831:9;1842:16;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1842:16:11;;;1820:10;:39::i;:::-;1732:132;:::o;332:26:0:-;;;;;;:::o;1016:304::-;1063:17;1083:25;1097:10;1083:13;:25::i;:::-;1063:45;-1:-1:-1;1136:1:0;1127:10;;1119:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1172:19;;;;1164:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1225:52;1243:10;1255:21;:9;1269:6;1255:21;:13;:21;:::i;:::-;1225:17;:52::i;:::-;1288:25;1294:10;1306:6;1288:5;:25::i;3679:432:10:-;3826:10;3785:4;3818:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;3818:29:10;;;;;;;;;;3857:28;;;3853:165;;3903:10;3927:1;3895:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;3895:29:10;;;;;;;;;:33;3853:165;;;3981:30;:8;3994:16;3981:30;:12;:30;:::i;:::-;3957:10;3949:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;3949:29:10;;;;;;;;;:62;3853:165;4037:10;4059:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;4028:61:10;;4059:29;;;;;;;;;;;4028:61;;;;;;;;;4037:10;4028:61;;;;;;;;;;;-1:-1:-1;4102:4:10;;3679:432;-1:-1:-1;;;3679:432:10:o;1140:99:1:-;-1:-1:-1;;;;;1218:16:1;1196:7;1218:16;;;;;;;;;;;;1140:99::o;1001:111:5:-;719:5;;-1:-1:-1;;;;;719:5:5;705:10;:19;697:28;;;;;;1077:5;;1058:25;;-1:-1:-1;;;;;1077:5:5;;;;1058:25;;1077:5;;1058:25;1089:5;:18;;-1:-1:-1;;1089:18:5;;;1001:111::o;490:370:9:-;-1:-1:-1;;;;;570:14:9;;;;;;:7;:14;;;;;;;;585:10;570:26;;;;;;;;560:36;;;552:45;;;;;;-1:-1:-1;;;;;791:14:9;;;;;;:7;:14;;;;;;;;806:10;791:26;;;;;;;;:38;;822:6;791:38;:30;:38;:::i;:::-;-1:-1:-1;;;;;762:14:9;;;;;;:7;:14;;;;;;;;777:10;762:26;;;;;;;:67;835:20;770:5;848:6;835:5;:20::i;1794:229:0:-;1914:10;517:38:11;527:9;538:16;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;538:16:11;;;517:9;:38::i;:::-;-1:-1:-1;;;;;1959:14:0;;:8;:14;;;;;;;;;;;1948:25;;;1940:34;;;;;;1984:32;2002:4;2008:7;1984:17;:32::i;:::-;1794:229;;;:::o;766:124:11:-;719:5:5;;-1:-1:-1;;;;;719:5:5;705:10;:19;697:28;;;;;;849:36:11;857:9;868:16;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;868:16:11;;;849:7;:36::i;238:20:5:-;;;-1:-1:-1;;;;;238:20:5;;:::o;298:28:0:-;;;;;;;;;;;;;;;-1:-1:-1;;298:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;963:133:11;1034:4;1055:36;1063:9;1074:16;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1074:16:11;;;1055:7;:36::i;:::-;1048:43;963:133;-1:-1:-1;;963:133:11:o;617:321:1:-;719:10;680:4;710:20;;;;;;;;;;;700:30;;;692:39;;;;;;-1:-1:-1;;;;;745:17:1;;;;737:26;;;;;;802:10;793:8;:20;;;;;;;;;;;:32;;818:6;793:32;:24;:32;:::i;:::-;779:10;770:8;:20;;;;;;;;;;;:55;;;;-1:-1:-1;;;;;847:13:1;;;;;;:25;;865:6;847:25;:17;:25;:::i;:::-;-1:-1:-1;;;;;831:13:1;;:8;:13;;;;;;;;;;;;:41;;;;883:33;;;;;;;831:13;;892:10;;883:33;;;;;;;;;;-1:-1:-1;929:4:1;617:321;;;;:::o;2926:296:10:-;3089:10;3027:4;3081:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;3081:29:10;;;;;;;;;;:46;;3115:11;3081:46;:33;:46;:::i;:::-;3049:10;3041:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;3041:29:10;;;;;;;;;;;;:87;;;3139:61;;;;;;3041:29;;3139:61;;;;;;;;;;;-1:-1:-1;3213:4:10;2926:296;;;;:::o;2321:153::-;-1:-1:-1;;;;;2444:15:10;;;2420:7;2444:15;;;:7;:15;;;;;;;;:25;;;;;;;;;;;;;2321:153::o;1314:191:11:-;719:5:5;;1407:9:11;;-1:-1:-1;;;;;719:5:5;705:10;:19;697:28;;;;;;-1:-1:-1;1419:1:11;1402:99;1426:10;:17;1422:1;:21;1402:99;;;1458:36;1480:10;1491:1;1480:13;;;;;;;;;;;;;;;;;;1458:21;:36::i;:::-;1445:3;;1402:99;;1274:103:5;719:5;;-1:-1:-1;;;;;719:5:5;705:10;:19;697:28;;;;;;1343:29;1362:9;1343:18;:29::i;1434:139:0:-;-1:-1:-1;;;;;1546:20:0;1516:7;1546:20;;;:14;:20;;;;;;;1434:139::o;666:111:7:-;754:17;758:5;765;754:3;:17::i;:::-;746:26;;;;;;;855:128;-1:-1:-1;;;;;959:19:7;938:4;959:19;;;;;;;;;;;;;;;855:128::o;1060:116:8:-;1120:7;1142:8;;;;1135:16;;;;-1:-1:-1;1164:7:8;;;1060:116::o;1238:128::-;1319:7;;;1339;;;;1332:15;;;1613:149:6;1687:30;1707:9;1687:5;1693;1687:12;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;1687:12:6;;;;;-1:-1:-1;1687:12:6;;;;;;;;;;;;-1:-1:-1;;1687:19:6;:30::i;:::-;1740:9;-1:-1:-1;;;;;1728:29:6;;1751:5;1728:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;1728:29:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1613:149;;:::o;2245:136:0:-;-1:-1:-1;;;;;2344:20:0;;;;;;;:14;:20;;;;;:30;2245:136::o;430:438:2:-;-1:-1:-1;;;;;508:14:2;;:8;:14;;;;;;;;;;;498:24;;;490:33;;;;;;-1:-1:-1;;;;;718:14:2;;:8;:14;;;;;;;;;;;:26;;737:6;718:26;:18;:26;:::i;:::-;-1:-1:-1;;;;;701:14:2;;:8;:14;;;;;;;;;;:43;765:12;;:24;;782:6;765:24;:16;:24;:::i;:::-;750:12;:39;800:18;;;;;;;;-1:-1:-1;;;;;800:18:2;;;;;;;;;;;;;829:34;;;;;;;;852:1;;-1:-1:-1;;;;;829:34:2;;;;;;;;;;;;430:438;;:::o;1347:141:6:-;1418:27;1435:9;1418:5;1424;1418:12;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;1418:12:6;;;;;-1:-1:-1;1418:12:6;;;;;;;;;;;;-1:-1:-1;;1418:16:6;:27::i;:::-;1466:9;-1:-1:-1;;;;;1456:27:6;;1477:5;1456:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;1512:171:5;-1:-1:-1;;;;;1582:23:5;;;;1574:32;;;;;;1638:5;;1617:38;;-1:-1:-1;;;;;1617:38:5;;;;1638:5;;1617:38;;1638:5;;1617:38;1661:5;:17;;-1:-1:-1;;1661:17:5;-1:-1:-1;;;;;1661:17:5;;;;;;;;;;1512:171::o;486:104:7:-;-1:-1:-1;;;;;558:19:7;580:5;558:19;;;;;;;;;;;:27;;-1:-1:-1;;558:27:7;;;486:104::o;321:100::-;-1:-1:-1;;;;;390:19:7;:12;:19;;;;;;;;;;;:26;;-1:-1:-1;;390:26:7;412:4;390:26;;;321:100::o
Swarm Source
bzzr://0f0bca38511b2066ce8ab19eeeb26adf91f8f93436f8b48b026d87fcc9d0a93d
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.