Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
3,912.327623046427236594 BULL
Holders
62
Total Transfers
-
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
bull
Compiler Version
v0.6.6+commit.6c089d02
Contract Source Code (Solidity Multiple files format)
////////////////////////////////////////////////// //SYNLEV BULL CONTRACT V 1.0.0 ////////////////////////// //THIS IS STANDARD OPENZEPLIN ERC-20 CONTRACT WITH BURN/MINT RESTRICTED TO VAULT //CONTRACT pragma solidity >= 0.6.4; import './ownable.sol'; import './SafeMath.sol'; import './IERC20.sol'; contract bull is IERC20, Owned { using SafeMath for uint256; event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); constructor() public { symbol = "BULL"; name = "3xBULLETH/USD"; decimals = 18; vault = 0xFf40827Ee1c4Eb6052044101E1C6E28DBe1440e3; } modifier onlyVault { require(msg.sender == vault); _; } address public vault; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; uint256 private _totalSupply; string public name; string public symbol; uint256 public decimals; //allows admin to withdraw other ERC-20 tokens from the contract. function adminwithdrawal(IERC20 token, uint256 amount) public onlyOwner() { IERC20 thisToken = IERC20(address(this)); require(token != thisToken); token.transfer(msg.sender, amount); } function mint(address account, uint256 amount) public override onlyVault() { _mint(account, amount); } function burn(uint256 amount) public override onlyVault() { _burn(msg.sender, amount); } function totalSupply() public view override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue)); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero")); return true; } function _transfer(address sender, address recipient, uint256 amount) internal virtual { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(sender, recipient, amount); _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); } function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply = _totalSupply.add(amount); _balances[account] = _balances[account].add(amount); emit Transfer(address(0), account, amount); } function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); _balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance"); _totalSupply = _totalSupply.sub(amount); emit Transfer(account, address(0), amount); } function _approve(address owner, address spender, uint256 amount) internal virtual { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual { } }
pragma solidity >= 0.6.4; interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); function mint(address account, uint256 amount) external; function burn(uint256 amount) external; event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); }
pragma solidity ^0.6.0; abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return msg.sender; } function _msgData() internal view virtual returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } contract Owned is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () internal { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.6.0; /** * @dev Wrappers over Solidity's arithmetic operations with added overflow * checks. * * Arithmetic operations in Solidity wrap on overflow. This can easily result * in bugs, because programmers usually assume that an overflow raises an * error, which is the standard behavior in high level programming languages. * `SafeMath` restores this intuition by reverting the transaction when an * operation overflows. * * Using this library instead of the unchecked operations eliminates an entire * class of bugs, so it's recommended to use it always. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. Reverts with custom message on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"adminwithdrawal","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"vault","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b506000620000276001600160e01b036200010716565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350604080518082019091526004808252631095531360e21b60209092019182526200009e916006916200010c565b5060408051808201909152600d8082526c0cde109553131155120bd554d1609a1b6020909201918252620000d5916005916200010c565b506012600755600180546001600160a01b03191673ff40827ee1c4eb6052044101e1c6e28dbe1440e3179055620001ae565b335b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200014f57805160ff19168380011785556200017f565b828001600101855582156200017f579182015b828111156200017f57825182559160200191906001019062000162565b506200018d92915062000191565b5090565b6200010991905b808211156200018d576000815560010162000198565b61110080620001be6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c8063715018a6116100a2578063a6e3ce2b11610071578063a6e3ce2b1461032d578063a9059cbb14610359578063dd62ed3e14610385578063f2fde38b146103b3578063fbfa77cf146103d957610116565b8063715018a6146102cd5780638da5cb5b146102d557806395d89b41146102f9578063a457c2d71461030157610116565b8063313ce567116100e9578063313ce56714610228578063395093511461023057806340c10f191461025c57806342966c681461028a57806370a08231146102a757610116565b806306fdde031461011b578063095ea7b31461019857806318160ddd146101d857806323b872dd146101f2575b600080fd5b6101236103e1565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015d578181015183820152602001610145565b50505050905090810190601f16801561018a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101c4600480360360408110156101ae57600080fd5b506001600160a01b03813516906020013561046f565b604080519115158252519081900360200190f35b6101e061048c565b60408051918252519081900360200190f35b6101c46004803603606081101561020857600080fd5b506001600160a01b03813581169160208101359091169060400135610492565b6101e061051f565b6101c46004803603604081101561024657600080fd5b506001600160a01b038135169060200135610525565b6102886004803603604081101561027257600080fd5b506001600160a01b038135169060200135610579565b005b610288600480360360208110156102a057600080fd5b503561059e565b6101e0600480360360208110156102bd57600080fd5b50356001600160a01b03166105c2565b6102886105dd565b6102dd610691565b604080516001600160a01b039092168252519081900360200190f35b6101236106a0565b6101c46004803603604081101561031757600080fd5b506001600160a01b0381351690602001356106fb565b6102886004803603604081101561034357600080fd5b506001600160a01b038135169060200135610769565b6101c46004803603604081101561036f57600080fd5b506001600160a01b03813516906020013561086a565b6101e06004803603604081101561039b57600080fd5b506001600160a01b038135811691602001351661087e565b610288600480360360208110156103c957600080fd5b50356001600160a01b03166108a9565b6102dd6109b3565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104675780601f1061043c57610100808354040283529160200191610467565b820191906000526020600020905b81548152906001019060200180831161044a57829003601f168201915b505050505081565b600061048361047c6109c2565b84846109c6565b50600192915050565b60045490565b600061049f848484610ab2565b610515846104ab6109c2565b61051085604051806060016040528060288152602001611014602891396001600160a01b038a166000908152600360205260408120906104e96109c2565b6001600160a01b03168152602081019190915260400160002054919063ffffffff610c1b16565b6109c6565b5060019392505050565b60075481565b60006104836105326109c2565b8461051085600360006105436109c2565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff610cb216565b6001546001600160a01b0316331461059057600080fd5b61059a8282610d13565b5050565b6001546001600160a01b031633146105b557600080fd5b6105bf3382610e11565b50565b6001600160a01b031660009081526002602052604090205490565b6105e56109c2565b6000546001600160a01b03908116911614610647576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b6006805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104675780601f1061043c57610100808354040283529160200191610467565b60006104836107086109c2565b84610510856040518060600160405280602581526020016110a660259139600360006107326109c2565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff610c1b16565b6107716109c2565b6000546001600160a01b039081169116146107d3576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b306001600160a01b0383168114156107ea57600080fd5b6040805163a9059cbb60e01b81523360048201526024810184905290516001600160a01b0385169163a9059cbb9160448083019260209291908290030181600087803b15801561083957600080fd5b505af115801561084d573d6000803e3d6000fd5b505050506040513d602081101561086357600080fd5b5050505050565b60006104836108776109c2565b8484610ab2565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b6108b16109c2565b6000546001600160a01b03908116911614610913576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0381166109585760405162461bcd60e51b8152600401808060200182810382526026815260200180610fa66026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b031681565b3390565b6001600160a01b038316610a0b5760405162461bcd60e51b81526004018080602001828103825260248152602001806110826024913960400191505060405180910390fd5b6001600160a01b038216610a505760405162461bcd60e51b8152600401808060200182810382526022815260200180610fcc6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610af75760405162461bcd60e51b815260040180806020018281038252602581526020018061105d6025913960400191505060405180910390fd5b6001600160a01b038216610b3c5760405162461bcd60e51b8152600401808060200182810382526023815260200180610f616023913960400191505060405180910390fd5b610b47838383610f19565b610b8a81604051806060016040528060268152602001610fee602691396001600160a01b038616600090815260026020526040902054919063ffffffff610c1b16565b6001600160a01b038085166000908152600260205260408082209390935590841681522054610bbf908263ffffffff610cb216565b6001600160a01b0380841660008181526002602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610caa5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c6f578181015183820152602001610c57565b50505050905090810190601f168015610c9c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610d0c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610d6e576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b610d7a60008383610f19565b600454610d8d908263ffffffff610cb216565b6004556001600160a01b038216600090815260026020526040902054610db9908263ffffffff610cb216565b6001600160a01b03831660008181526002602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216610e565760405162461bcd60e51b815260040180806020018281038252602181526020018061103c6021913960400191505060405180910390fd5b610e6282600083610f19565b610ea581604051806060016040528060228152602001610f84602291396001600160a01b038516600090815260026020526040902054919063ffffffff610c1b16565b6001600160a01b038316600090815260026020526040902055600454610ed1908263ffffffff610f1e16565b6004556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b505050565b6000610d0c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610c1b56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212205dd852f4020e54165c995468b3d6907d96cc5b0996bce02ff148edcba692c52364736f6c63430006060033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101165760003560e01c8063715018a6116100a2578063a6e3ce2b11610071578063a6e3ce2b1461032d578063a9059cbb14610359578063dd62ed3e14610385578063f2fde38b146103b3578063fbfa77cf146103d957610116565b8063715018a6146102cd5780638da5cb5b146102d557806395d89b41146102f9578063a457c2d71461030157610116565b8063313ce567116100e9578063313ce56714610228578063395093511461023057806340c10f191461025c57806342966c681461028a57806370a08231146102a757610116565b806306fdde031461011b578063095ea7b31461019857806318160ddd146101d857806323b872dd146101f2575b600080fd5b6101236103e1565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015d578181015183820152602001610145565b50505050905090810190601f16801561018a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101c4600480360360408110156101ae57600080fd5b506001600160a01b03813516906020013561046f565b604080519115158252519081900360200190f35b6101e061048c565b60408051918252519081900360200190f35b6101c46004803603606081101561020857600080fd5b506001600160a01b03813581169160208101359091169060400135610492565b6101e061051f565b6101c46004803603604081101561024657600080fd5b506001600160a01b038135169060200135610525565b6102886004803603604081101561027257600080fd5b506001600160a01b038135169060200135610579565b005b610288600480360360208110156102a057600080fd5b503561059e565b6101e0600480360360208110156102bd57600080fd5b50356001600160a01b03166105c2565b6102886105dd565b6102dd610691565b604080516001600160a01b039092168252519081900360200190f35b6101236106a0565b6101c46004803603604081101561031757600080fd5b506001600160a01b0381351690602001356106fb565b6102886004803603604081101561034357600080fd5b506001600160a01b038135169060200135610769565b6101c46004803603604081101561036f57600080fd5b506001600160a01b03813516906020013561086a565b6101e06004803603604081101561039b57600080fd5b506001600160a01b038135811691602001351661087e565b610288600480360360208110156103c957600080fd5b50356001600160a01b03166108a9565b6102dd6109b3565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104675780601f1061043c57610100808354040283529160200191610467565b820191906000526020600020905b81548152906001019060200180831161044a57829003601f168201915b505050505081565b600061048361047c6109c2565b84846109c6565b50600192915050565b60045490565b600061049f848484610ab2565b610515846104ab6109c2565b61051085604051806060016040528060288152602001611014602891396001600160a01b038a166000908152600360205260408120906104e96109c2565b6001600160a01b03168152602081019190915260400160002054919063ffffffff610c1b16565b6109c6565b5060019392505050565b60075481565b60006104836105326109c2565b8461051085600360006105436109c2565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff610cb216565b6001546001600160a01b0316331461059057600080fd5b61059a8282610d13565b5050565b6001546001600160a01b031633146105b557600080fd5b6105bf3382610e11565b50565b6001600160a01b031660009081526002602052604090205490565b6105e56109c2565b6000546001600160a01b03908116911614610647576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b6006805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104675780601f1061043c57610100808354040283529160200191610467565b60006104836107086109c2565b84610510856040518060600160405280602581526020016110a660259139600360006107326109c2565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff610c1b16565b6107716109c2565b6000546001600160a01b039081169116146107d3576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b306001600160a01b0383168114156107ea57600080fd5b6040805163a9059cbb60e01b81523360048201526024810184905290516001600160a01b0385169163a9059cbb9160448083019260209291908290030181600087803b15801561083957600080fd5b505af115801561084d573d6000803e3d6000fd5b505050506040513d602081101561086357600080fd5b5050505050565b60006104836108776109c2565b8484610ab2565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b6108b16109c2565b6000546001600160a01b03908116911614610913576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0381166109585760405162461bcd60e51b8152600401808060200182810382526026815260200180610fa66026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b031681565b3390565b6001600160a01b038316610a0b5760405162461bcd60e51b81526004018080602001828103825260248152602001806110826024913960400191505060405180910390fd5b6001600160a01b038216610a505760405162461bcd60e51b8152600401808060200182810382526022815260200180610fcc6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610af75760405162461bcd60e51b815260040180806020018281038252602581526020018061105d6025913960400191505060405180910390fd5b6001600160a01b038216610b3c5760405162461bcd60e51b8152600401808060200182810382526023815260200180610f616023913960400191505060405180910390fd5b610b47838383610f19565b610b8a81604051806060016040528060268152602001610fee602691396001600160a01b038616600090815260026020526040902054919063ffffffff610c1b16565b6001600160a01b038085166000908152600260205260408082209390935590841681522054610bbf908263ffffffff610cb216565b6001600160a01b0380841660008181526002602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610caa5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c6f578181015183820152602001610c57565b50505050905090810190601f168015610c9c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610d0c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610d6e576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b610d7a60008383610f19565b600454610d8d908263ffffffff610cb216565b6004556001600160a01b038216600090815260026020526040902054610db9908263ffffffff610cb216565b6001600160a01b03831660008181526002602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216610e565760405162461bcd60e51b815260040180806020018281038252602181526020018061103c6021913960400191505060405180910390fd5b610e6282600083610f19565b610ea581604051806060016040528060228152602001610f84602291396001600160a01b038516600090815260026020526040902054919063ffffffff610c1b16565b6001600160a01b038316600090815260026020526040902055600454610ed1908263ffffffff610f1e16565b6004556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b505050565b6000610d0c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610c1b56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212205dd852f4020e54165c995468b3d6907d96cc5b0996bce02ff148edcba692c52364736f6c63430006060033
Deployed Bytecode Sourcemap
303:4371:2:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;303:4371:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12:1:-1;9;2:12;933:18:2;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;933:18:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2016:160;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;;;;;;2016:160:2;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;1486:94;;;:::i;:::-;;;;;;;;;;;;;;;;2179:309;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;;;;;;2179:309:2;;;;;;;;;;;;;;;;;:::i;979:23::-;;;:::i;2491:209::-;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;;;;;;2491:209:2;;;;;;;;:::i;1277:108::-;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;;;;;;1277:108:2;;;;;;;;:::i;:::-;;1388:94;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;1388:94:2;;:::i;1583:113::-;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;1583:113:2;-1:-1:-1;;;;;1583:113:2;;:::i;922:145:3:-;;;:::i;717:77::-;;;:::i;:::-;;;;-1:-1:-1;;;;;717:77:3;;;;;;;;;;;;;;955:20:2;;;:::i;2703:260::-;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;;;;;;2703:260:2;;;;;;;;:::i;1075:198::-;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;;;;;;1075:198:2;;;;;;;;:::i;1699:166::-;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;;;;;;1699:166:2;;;;;;;;:::i;1868:145::-;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;;;;;;1868:145:2;;;;;;;;;;:::i;1073:240:3:-;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;1073:240:3;-1:-1:-1;;;;;1073:240:3;;:::i;749:20:2:-;;;:::i;933:18::-;;;;;;;;;;;;;;;-1:-1:-1;;933:18:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2016:160::-;2099:4;2113:39;2122:12;:10;:12::i;:::-;2136:7;2145:6;2113:8;:39::i;:::-;-1:-1:-1;2167:4:2;2016:160;;;;:::o;1486:94::-;1563:12;;1486:94;:::o;2179:309::-;2285:4;2299:36;2309:6;2317:9;2328:6;2299:9;:36::i;:::-;2343:121;2352:6;2360:12;:10;:12::i;:::-;2374:89;2412:6;2374:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2374:19:2;;;;;;:11;:19;;;;;;2394:12;:10;:12::i;:::-;-1:-1:-1;;;;;2374:33:2;;;;;;;;;;;;-1:-1:-1;2374:33:2;;;:89;;:37;:89;:::i;:::-;2343:8;:121::i;:::-;-1:-1:-1;2479:4:2;2179:309;;;;;:::o;979:23::-;;;;:::o;2491:209::-;2579:4;2593:83;2602:12;:10;:12::i;:::-;2616:7;2625:50;2664:10;2625:11;:25;2637:12;:10;:12::i;:::-;-1:-1:-1;;;;;2625:25:2;;;;;;;;;;;;;;;;;-1:-1:-1;2625:25:2;;;:34;;;;;;;;;;;:50;:38;:50;:::i;1277:108::-;727:5;;-1:-1:-1;;;;;727:5:2;713:10;:19;705:28;;12:1:-1;9;2:12;705:28:2;1358:22:::1;1364:7;1373:6;1358:5;:22::i;:::-;1277:108:::0;;:::o;1388:94::-;727:5;;-1:-1:-1;;;;;727:5:2;713:10;:19;705:28;;12:1:-1;9;2:12;705:28:2;1452:25:::1;1458:10;1470:6;1452:5;:25::i;:::-;1388:94:::0;:::o;1583:113::-;-1:-1:-1;;;;;1673:18:2;1649:7;1673:18;;;:9;:18;;;;;;;1583:113::o;922:145:3:-;849:12;:10;:12::i;:::-;839:6;;-1:-1:-1;;;;;839:6:3;;;:22;;;831:67;;;;;-1:-1:-1;;;831:67:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1028:1:::1;1012:6:::0;;991:40:::1;::::0;-1:-1:-1;;;;;1012:6:3;;::::1;::::0;991:40:::1;::::0;1028:1;;991:40:::1;1058:1;1041:19:::0;;-1:-1:-1;;;;;;1041:19:3::1;::::0;;922:145::o;717:77::-;755:7;781:6;-1:-1:-1;;;;;781:6:3;717:77;:::o;955:20:2:-;;;;;;;;;;;;;;;-1:-1:-1;;955:20:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2703:260;2796:4;2810:129;2819:12;:10;:12::i;:::-;2833:7;2842:96;2881:15;2842:96;;;;;;;;;;;;;;;;;:11;:25;2854:12;:10;:12::i;:::-;-1:-1:-1;;;;;2842:25:2;;;;;;;;;;;;;;;;;-1:-1:-1;2842:25:2;;;:34;;;;;;;;;;;:96;;:38;:96;:::i;1075:198::-;849:12:3;:10;:12::i;:::-;839:6;;-1:-1:-1;;;;;839:6:3;;;:22;;;831:67;;;;;-1:-1:-1;;;831:67:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1189:4:2::1;-1:-1:-1::0;;;;;1209:18:2;::::1;::::0;::::1;;1201:27;;12:1:-1;9::::0;2:12:::1;1201:27:2;1234:34;::::0;;-1:-1:-1;;;1234:34:2;;1249:10:::1;1234:34;::::0;::::1;::::0;;;;;;;;;-1:-1:-1;;;;;1234:14:2;::::1;::::0;::::1;::::0;:34;;;;;::::1;::::0;;;;;;;;-1:-1:-1;1234:14:2;:34;::::1;;2:2:-1::0;::::1;;;27:1;24::::0;17:12:::1;2:2;1234:34:2;;;;8:9:-1;5:2;;;45:16;42:1;39::::0;24:38:::1;77:16;74:1;67:27;5:2;1234:34:2;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28::::0;21:12:::1;4:2;-1:-1:::0;;;;;1075:198:2:o;1699:166::-;1785:4;1799:42;1809:12;:10;:12::i;:::-;1823:9;1834:6;1799:9;:42::i;1868:145::-;-1:-1:-1;;;;;1981:18:2;;;1957:7;1981:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;1868:145::o;1073:240:3:-;849:12;:10;:12::i;:::-;839:6;;-1:-1:-1;;;;;839:6:3;;;:22;;;831:67;;;;;-1:-1:-1;;;831:67:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1161:22:3;::::1;1153:73;;;;-1:-1:-1::0;;;1153:73:3::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1262:6;::::0;;1241:38:::1;::::0;-1:-1:-1;;;;;1241:38:3;;::::1;::::0;1262:6;::::1;::::0;1241:38:::1;::::0;::::1;1289:6;:17:::0;;-1:-1:-1;;;;;;1289:17:3::1;-1:-1:-1::0;;;;;1289:17:3;;;::::1;::::0;;;::::1;::::0;;1073:240::o;749:20:2:-;;;-1:-1:-1;;;;;749:20:2;;:::o;57:104:3:-;144:10;57:104;:::o;4247:330:2:-;-1:-1:-1;;;;;4346:19:2;;4338:68;;;;-1:-1:-1;;;4338:68:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4422:21:2;;4414:68;;;;-1:-1:-1;;;4414:68:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4491:18:2;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;4540:32;;;;;;;;;;;;;;;;;4247:330;;;:::o;2966:516::-;-1:-1:-1;;;;;3069:20:2;;3061:70;;;;-1:-1:-1;;;3061:70:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3147:23:2;;3139:71;;;;-1:-1:-1;;;3139:71:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3219:47;3240:6;3248:9;3259:6;3219:20;:47::i;:::-;3295:71;3317:6;3295:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3295:17:2;;;;;;:9;:17;;;;;;;:71;;:21;:71;:::i;:::-;-1:-1:-1;;;;;3275:17:2;;;;;;;:9;:17;;;;;;:91;;;;3397:20;;;;;;;:32;;3422:6;3397:32;:24;:32;:::i;:::-;-1:-1:-1;;;;;3374:20:2;;;;;;;:9;:20;;;;;;;;;:55;;;;3442:35;;;;;;;3374:20;;3442:35;;;;;;;;;;;;;2966:516;;;:::o;1746:187:1:-;1832:7;1867:12;1859:6;;;;1851:29;;;;-1:-1:-1;;;1851:29:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;1851:29:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1902:5:1;;;1746:187::o;874:176::-;932:7;963:5;;;986:6;;;;978:46;;;;;-1:-1:-1;;;978:46:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;1042:1;874:176;-1:-1:-1;;;874:176:1:o;3485:358:2:-;-1:-1:-1;;;;;3566:21:2;;3558:65;;;;;-1:-1:-1;;;3558:65:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;3632:49;3661:1;3665:7;3674:6;3632:20;:49::i;:::-;3705:12;;:24;;3722:6;3705:24;:16;:24;:::i;:::-;3690:12;:39;-1:-1:-1;;;;;3758:18:2;;;;;;:9;:18;;;;;;:30;;3781:6;3758:30;:22;:30;:::i;:::-;-1:-1:-1;;;;;3737:18:2;;;;;;:9;:18;;;;;;;;:51;;;;3801:37;;;;;;;3737:18;;;;3801:37;;;;;;;;;;3485:358;;:::o;3846:398::-;-1:-1:-1;;;;;3927:21:2;;3919:67;;;;-1:-1:-1;;;3919:67:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3995:49;4016:7;4033:1;4037:6;3995:20;:49::i;:::-;4074:68;4097:6;4074:68;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4074:18:2;;;;;;:9;:18;;;;;;;:68;;:22;:68;:::i;:::-;-1:-1:-1;;;;;4053:18:2;;;;;;:9;:18;;;;;:89;4165:12;;:24;;4182:6;4165:24;:16;:24;:::i;:::-;4150:12;:39;4202:37;;;;;;;;4228:1;;-1:-1:-1;;;;;4202:37:2;;;;;;;;;;;;3846:398;;:::o;4580:92::-;;;;:::o;1321:134:1:-;1379:7;1405:43;1409:1;1412;1405:43;;;;;;;;;;;;;;;;;:3;:43::i
Swarm Source
ipfs://5dd852f4020e54165c995468b3d6907d96cc5b0996bce02ff148edcba692c523
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.