Overview
Max Total Supply
45,744.626104654853334409 jEUR
Holders
117 (0.00%)
Total Transfers
-
Market
Price
$1.06 @ 0.000450 ETH (-0.30%)
Onchain Market Cap
$48,417.66
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:
MintableBurnableSyntheticToken
Compiler Version
v0.6.12+commit.27d51765
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: AGPL-3.0-only pragma solidity ^0.6.0; import '../../common/implementation/MintableBurnableERC20.sol'; import '../../common/implementation/Lockable.sol'; contract MintableBurnableSyntheticToken is MintableBurnableERC20, Lockable { constructor( string memory tokenName, string memory tokenSymbol, uint8 tokenDecimals ) public MintableBurnableERC20(tokenName, tokenSymbol, tokenDecimals) nonReentrant() {} function addMinter(address account) public override nonReentrant() { super.addMinter(account); } function addBurner(address account) public override nonReentrant() { super.addBurner(account); } function addAdmin(address account) public override nonReentrant() { super.addAdmin(account); } function addAdminAndMinterAndBurner(address account) public override nonReentrant() { super.addAdminAndMinterAndBurner(account); } function renounceMinter() public override nonReentrant() { super.renounceMinter(); } function renounceBurner() public override nonReentrant() { super.renounceBurner(); } function renounceAdmin() public override nonReentrant() { super.renounceAdmin(); } function renounceAdminAndMinterAndBurner() public override nonReentrant() { super.renounceAdminAndMinterAndBurner(); } function isMinter(address account) public view nonReentrantView() returns (bool) { return hasRole(MINTER_ROLE, account); } function isBurner(address account) public view nonReentrantView() returns (bool) { return hasRole(BURNER_ROLE, account); } function isAdmin(address account) public view nonReentrantView() returns (bool) { return hasRole(DEFAULT_ADMIN_ROLE, account); } function getAdminMembers() external view returns (address[] memory) { uint256 numberOfMembers = getRoleMemberCount(DEFAULT_ADMIN_ROLE); address[] memory members = new address[](numberOfMembers); for (uint256 j = 0; j < numberOfMembers; j++) { address newMember = getRoleMember(DEFAULT_ADMIN_ROLE, j); members[j] = newMember; } return members; } function getMinterMembers() external view returns (address[] memory) { uint256 numberOfMembers = getRoleMemberCount(MINTER_ROLE); address[] memory members = new address[](numberOfMembers); for (uint256 j = 0; j < numberOfMembers; j++) { address newMember = getRoleMember(MINTER_ROLE, j); members[j] = newMember; } return members; } function getBurnerMembers() external view returns (address[] memory) { uint256 numberOfMembers = getRoleMemberCount(BURNER_ROLE); address[] memory members = new address[](numberOfMembers); for (uint256 j = 0; j < numberOfMembers; j++) { address newMember = getRoleMember(BURNER_ROLE, j); members[j] = newMember; } return members; } }
// SPDX-License-Identifier: AGPL-3.0-only pragma solidity ^0.6.0; import '../../../../../@openzeppelin/contracts/token/ERC20/ERC20.sol'; import '../../../../../@openzeppelin/contracts/access/AccessControl.sol'; import '../interfaces/MintableBurnableIERC20.sol'; contract MintableBurnableERC20 is ERC20, MintableBurnableIERC20, AccessControl { bytes32 public constant MINTER_ROLE = keccak256('Minter'); bytes32 public constant BURNER_ROLE = keccak256('Burner'); modifier onlyMinter() { require(hasRole(MINTER_ROLE, msg.sender), 'Sender must be the minter'); _; } modifier onlyBurner() { require(hasRole(BURNER_ROLE, msg.sender), 'Sender must be the burner'); _; } constructor( string memory _tokenName, string memory _tokenSymbol, uint8 _tokenDecimals ) public ERC20(_tokenName, _tokenSymbol) { _setupDecimals(_tokenDecimals); _setRoleAdmin(DEFAULT_ADMIN_ROLE, DEFAULT_ADMIN_ROLE); _setRoleAdmin(MINTER_ROLE, DEFAULT_ADMIN_ROLE); _setRoleAdmin(BURNER_ROLE, DEFAULT_ADMIN_ROLE); _setupRole(DEFAULT_ADMIN_ROLE, msg.sender); } function mint(address recipient, uint256 value) external override onlyMinter() returns (bool) { _mint(recipient, value); return true; } function burn(uint256 value) external override onlyBurner() { _burn(msg.sender, value); } function addMinter(address account) public virtual override { grantRole(MINTER_ROLE, account); } function addBurner(address account) public virtual override { grantRole(BURNER_ROLE, account); } function addAdmin(address account) public virtual override { grantRole(DEFAULT_ADMIN_ROLE, account); } function addAdminAndMinterAndBurner(address account) public virtual override { grantRole(DEFAULT_ADMIN_ROLE, account); grantRole(MINTER_ROLE, account); grantRole(BURNER_ROLE, account); } function renounceMinter() public virtual override { renounceRole(MINTER_ROLE, msg.sender); } function renounceBurner() public virtual override { renounceRole(BURNER_ROLE, msg.sender); } function renounceAdmin() public virtual override { renounceRole(DEFAULT_ADMIN_ROLE, msg.sender); } function renounceAdminAndMinterAndBurner() public virtual override { renounceRole(DEFAULT_ADMIN_ROLE, msg.sender); renounceRole(MINTER_ROLE, msg.sender); renounceRole(BURNER_ROLE, msg.sender); } }
// SPDX-License-Identifier: AGPL-3.0-only pragma solidity ^0.6.0; contract Lockable { bool private _notEntered; constructor() internal { _notEntered = true; } modifier nonReentrant() { _preEntranceCheck(); _preEntranceSet(); _; _postEntranceReset(); } modifier nonReentrantView() { _preEntranceCheck(); _; } function _preEntranceCheck() internal view { require(_notEntered, 'ReentrancyGuard: reentrant call'); } function _preEntranceSet() internal { _notEntered = false; } function _postEntranceReset() internal { _notEntered = true; } }
// SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <0.8.0; import '../../GSN/Context.sol'; import './IERC20.sol'; import '../../math/SafeMath.sol'; contract ERC20 is Context, IERC20 { using SafeMath for uint256; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; uint8 private _decimals; constructor(string memory name_, string memory symbol_) public { _name = name_; _symbol = symbol_; _decimals = 18; } function name() public view returns (string memory) { return _name; } function symbol() public view returns (string memory) { return _symbol; } function decimals() public view returns (uint8) { return _decimals; } 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 _setupDecimals(uint8 decimals_) internal { _decimals = decimals_; } function _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual {} }
// SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <0.8.0; import '../utils/EnumerableSet.sol'; import '../utils/Address.sol'; import '../GSN/Context.sol'; abstract contract AccessControl is Context { using EnumerableSet for EnumerableSet.AddressSet; using Address for address; struct RoleData { EnumerableSet.AddressSet members; bytes32 adminRole; } mapping(bytes32 => RoleData) private _roles; bytes32 public constant DEFAULT_ADMIN_ROLE = 0x00; event RoleAdminChanged( bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole ); event RoleGranted( bytes32 indexed role, address indexed account, address indexed sender ); event RoleRevoked( bytes32 indexed role, address indexed account, address indexed sender ); function hasRole(bytes32 role, address account) public view returns (bool) { return _roles[role].members.contains(account); } function getRoleMemberCount(bytes32 role) public view returns (uint256) { return _roles[role].members.length(); } function getRoleMember(bytes32 role, uint256 index) public view returns (address) { return _roles[role].members.at(index); } function getRoleAdmin(bytes32 role) public view returns (bytes32) { return _roles[role].adminRole; } function grantRole(bytes32 role, address account) public virtual { require( hasRole(_roles[role].adminRole, _msgSender()), 'AccessControl: sender must be an admin to grant' ); _grantRole(role, account); } function revokeRole(bytes32 role, address account) public virtual { require( hasRole(_roles[role].adminRole, _msgSender()), 'AccessControl: sender must be an admin to revoke' ); _revokeRole(role, account); } function renounceRole(bytes32 role, address account) public virtual { require( account == _msgSender(), 'AccessControl: can only renounce roles for self' ); _revokeRole(role, account); } function _setupRole(bytes32 role, address account) internal virtual { _grantRole(role, account); } function _setRoleAdmin(bytes32 role, bytes32 adminRole) internal virtual { emit RoleAdminChanged(role, _roles[role].adminRole, adminRole); _roles[role].adminRole = adminRole; } function _grantRole(bytes32 role, address account) private { if (_roles[role].members.add(account)) { emit RoleGranted(role, account, _msgSender()); } } function _revokeRole(bytes32 role, address account) private { if (_roles[role].members.remove(account)) { emit RoleRevoked(role, account, _msgSender()); } } }
// SPDX-License-Identifier: AGPL-3.0-only pragma solidity ^0.6.0; import '../../../../../@openzeppelin/contracts/token/ERC20/ERC20.sol'; abstract contract MintableBurnableIERC20 is ERC20 { function burn(uint256 value) external virtual; function mint(address to, uint256 value) external virtual returns (bool); function addMinter(address account) external virtual; function addBurner(address account) external virtual; function addAdmin(address account) external virtual; function addAdminAndMinterAndBurner(address account) external virtual; function renounceMinter() external virtual; function renounceBurner() external virtual; function renounceAdmin() external virtual; function renounceAdminAndMinterAndBurner() external virtual; }
// SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <0.8.0; abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return msg.sender; } function _msgData() internal view virtual returns (bytes memory) { this; return msg.data; } }
// SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <0.8.0; 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); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); }
// SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <0.8.0; library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, 'SafeMath: addition overflow'); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, 'SafeMath: subtraction overflow'); } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, 'SafeMath: multiplication overflow'); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, 'SafeMath: division by zero'); } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, 'SafeMath: modulo by zero'); } function mod( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } }
// SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <0.8.0; library EnumerableSet { struct Set { bytes32[] _values; mapping(bytes32 => uint256) _indexes; } function _add(Set storage set, bytes32 value) private returns (bool) { if (!_contains(set, value)) { set._values.push(value); set._indexes[value] = set._values.length; return true; } else { return false; } } function _remove(Set storage set, bytes32 value) private returns (bool) { uint256 valueIndex = set._indexes[value]; if (valueIndex != 0) { uint256 toDeleteIndex = valueIndex - 1; uint256 lastIndex = set._values.length - 1; bytes32 lastvalue = set._values[lastIndex]; set._values[toDeleteIndex] = lastvalue; set._indexes[lastvalue] = toDeleteIndex + 1; set._values.pop(); delete set._indexes[value]; return true; } else { return false; } } function _contains(Set storage set, bytes32 value) private view returns (bool) { return set._indexes[value] != 0; } function _length(Set storage set) private view returns (uint256) { return set._values.length; } function _at(Set storage set, uint256 index) private view returns (bytes32) { require(set._values.length > index, 'EnumerableSet: index out of bounds'); return set._values[index]; } struct Bytes32Set { Set _inner; } function add(Bytes32Set storage set, bytes32 value) internal returns (bool) { return _add(set._inner, value); } function remove(Bytes32Set storage set, bytes32 value) internal returns (bool) { return _remove(set._inner, value); } function contains(Bytes32Set storage set, bytes32 value) internal view returns (bool) { return _contains(set._inner, value); } function length(Bytes32Set storage set) internal view returns (uint256) { return _length(set._inner); } function at(Bytes32Set storage set, uint256 index) internal view returns (bytes32) { return _at(set._inner, index); } struct AddressSet { Set _inner; } function add(AddressSet storage set, address value) internal returns (bool) { return _add(set._inner, bytes32(uint256(value))); } function remove(AddressSet storage set, address value) internal returns (bool) { return _remove(set._inner, bytes32(uint256(value))); } function contains(AddressSet storage set, address value) internal view returns (bool) { return _contains(set._inner, bytes32(uint256(value))); } function length(AddressSet storage set) internal view returns (uint256) { return _length(set._inner); } function at(AddressSet storage set, uint256 index) internal view returns (address) { return address(uint256(_at(set._inner, index))); } struct UintSet { Set _inner; } function add(UintSet storage set, uint256 value) internal returns (bool) { return _add(set._inner, bytes32(value)); } function remove(UintSet storage set, uint256 value) internal returns (bool) { return _remove(set._inner, bytes32(value)); } function contains(UintSet storage set, uint256 value) internal view returns (bool) { return _contains(set._inner, bytes32(value)); } function length(UintSet storage set) internal view returns (uint256) { return _length(set._inner); } function at(UintSet storage set, uint256 index) internal view returns (uint256) { return uint256(_at(set._inner, index)); } }
// SPDX-License-Identifier: MIT pragma solidity >=0.6.2 <0.8.0; library Address { function isContract(address account) internal view returns (bool) { uint256 size; assembly { size := extcodesize(account) } return size > 0; } function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, 'Address: insufficient balance'); (bool success, ) = recipient.call{value: amount}(''); require( success, 'Address: unable to send value, recipient may have reverted' ); } function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, 'Address: low-level call failed'); } function functionCall( address target, bytes memory data, string memory errorMessage ) internal returns (bytes memory) { return functionCallWithValue(target, data, 0, errorMessage); } function functionCallWithValue( address target, bytes memory data, uint256 value ) internal returns (bytes memory) { return functionCallWithValue( target, data, value, 'Address: low-level call with value failed' ); } function functionCallWithValue( address target, bytes memory data, uint256 value, string memory errorMessage ) internal returns (bytes memory) { require( address(this).balance >= value, 'Address: insufficient balance for call' ); require(isContract(target), 'Address: call to non-contract'); (bool success, bytes memory returndata) = target.call{value: value}(data); return _verifyCallResult(success, returndata, errorMessage); } function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) { return functionStaticCall(target, data, 'Address: low-level static call failed'); } function functionStaticCall( address target, bytes memory data, string memory errorMessage ) internal view returns (bytes memory) { require(isContract(target), 'Address: static call to non-contract'); (bool success, bytes memory returndata) = target.staticcall(data); return _verifyCallResult(success, returndata, errorMessage); } function _verifyCallResult( bool success, bytes memory returndata, string memory errorMessage ) private pure returns (bytes memory) { if (success) { return returndata; } else { if (returndata.length > 0) { assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"string","name":"tokenName","type":"string"},{"internalType":"string","name":"tokenSymbol","type":"string"},{"internalType":"uint8","name":"tokenDecimals","type":"uint8"}],"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":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","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":[],"name":"BURNER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MINTER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addAdminAndMinterAndBurner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addBurner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addMinter","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":"value","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"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":[],"name":"getAdminMembers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBurnerMembers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getMinterMembers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getRoleMember","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleMemberCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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"}],"name":"isAdmin","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isBurner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isMinter","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceAdminAndMinterAndBurner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceBurner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","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"}]
Contract Creation Code
60806040523480156200001157600080fd5b50604051620020ed380380620020ed833981810160405260608110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82516401000000008111828201881017156200008957600080fd5b82525081516020918201929091019080838360005b83811015620000b85781810151838201526020016200009e565b50505050905090810190601f168015620000e65780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200010a57600080fd5b9083019060208201858111156200012057600080fd5b82516401000000008111828201881017156200013b57600080fd5b82525081516020918201929091019080838360005b838110156200016a57818101518382015260200162000150565b50505050905090810190601f168015620001985780820380516001836020036101000a031916815260200191505b5060405260209081015185519093508592508491849184918491620001c4916003919085019062000493565b508051620001da90600490602084019062000493565b50506005805460ff1916601217905550620001f581620002a0565b62000202600080620002b6565b6200022f7f6e58ad548d72b425ea94c15f453bf26caddb061d82b2551db7fdd3cefe0e99406000620002b6565b6200025c7fe4b2a1ba12b0ae46fe120e095faea153cf269e4b012b647a52a09f4e0e45f1796000620002b6565b6200026960003362000308565b50506007805460ff19166001179055506200028362000318565b6200028d62000372565b620002976200037e565b5050506200052f565b6005805460ff191660ff92909216919091179055565b600082815260066020526040808220600201549051839285917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a460009182526006602052604090912060020155565b6200031482826200038d565b5050565b60075460ff1662000370576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b565b6007805460ff19169055565b6007805460ff19166001179055565b6000828152600660209081526040909120620003b491839062000fef62000408821b17901c565b156200031457620003c462000428565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60006200041f836001600160a01b0384166200042c565b90505b92915050565b3390565b60006200043a83836200047b565b620004725750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915562000422565b50600062000422565b60009081526001919091016020526040902054151590565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620004d657805160ff191683800117855562000506565b8280016001018555821562000506579182015b8281111562000506578251825591602001919060010190620004e9565b506200051492915062000518565b5090565b5b8082111562000514576000815560010162000519565b611bae806200053f6000396000f3fe608060405234801561001057600080fd5b50600436106102275760003560e01c806370a0823111610130578063a457c2d7116100b8578063d547741f1161007c578063d547741f146106c5578063dd62ed3e146106f1578063e9ec9e8b1461071f578063ea889a8914610727578063f44637ba1461072f57610227565b8063a457c2d714610622578063a9059cbb1461064e578063aa271e1a1461067a578063ca15c873146106a0578063d5391393146106bd57610227565b806391d14854116100ff57806391d14854146105b857806395d89b41146105e4578063983b2d56146105ec5780639865027514610612578063a217fddf1461061a57610227565b806370a08231146105435780638169d68e146105695780638bad0c0a146105715780639010d07c1461057957610227565b8063313ce567116101b357806342966c681161018257806342966c68146104ac5780634334614a146104c957806355783c8f146104ef57806355aa812714610515578063704802751461051d57610227565b8063313ce5671461040a57806336568abe14610428578063395093511461045457806340c10f191461048057610227565b8063248a9ca3116101fa578063248a9ca31461033957806324d7806c14610356578063282c51f31461037c5780632bb77846146103845780632f2ff15d146103dc57610227565b806306fdde031461022c578063095ea7b3146102a957806318160ddd146102e957806323b872dd14610303575b600080fd5b610234610755565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561026e578181015183820152602001610256565b50505050905090810190601f16801561029b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102d5600480360360408110156102bf57600080fd5b506001600160a01b0381351690602001356107eb565b604080519115158252519081900360200190f35b6102f1610809565b60408051918252519081900360200190f35b6102d56004803603606081101561031957600080fd5b506001600160a01b0381358116916020810135909116906040013561080f565b6102f16004803603602081101561034f57600080fd5b5035610896565b6102d56004803603602081101561036c57600080fd5b50356001600160a01b03166108ab565b6102f16108c0565b61038c6108d2565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156103c85781810151838201526020016103b0565b505050509050019250505060405180910390f35b610408600480360360408110156103f257600080fd5b50803590602001356001600160a01b0316610975565b005b6104126109e1565b6040805160ff9092168252519081900360200190f35b6104086004803603604081101561043e57600080fd5b50803590602001356001600160a01b03166109ea565b6102d56004803603604081101561046a57600080fd5b506001600160a01b038135169060200135610a4b565b6102d56004803603604081101561049657600080fd5b506001600160a01b038135169060200135610a99565b610408600480360360208110156104c257600080fd5b5035610b0e565b6102d5600480360360208110156104df57600080fd5b50356001600160a01b0316610b84565b6104086004803603602081101561050557600080fd5b50356001600160a01b0316610ba6565b610408610bc7565b6104086004803603602081101561053357600080fd5b50356001600160a01b0316610be9565b6102f16004803603602081101561055957600080fd5b50356001600160a01b0316610c02565b61038c610c1d565b610408610cd5565b61059c6004803603604081101561058f57600080fd5b5080359060200135610ced565b604080516001600160a01b039092168252519081900360200190f35b6102d5600480360360408110156105ce57600080fd5b50803590602001356001600160a01b0316610d0c565b610234610d24565b6104086004803603602081101561060257600080fd5b50356001600160a01b0316610d85565b610408610d9e565b6102f1610db6565b6102d56004803603604081101561063857600080fd5b506001600160a01b038135169060200135610dbb565b6102d56004803603604081101561066457600080fd5b506001600160a01b038135169060200135610e23565b6102d56004803603602081101561069057600080fd5b50356001600160a01b0316610e37565b6102f1600480360360208110156106b657600080fd5b5035610e59565b6102f1610e70565b610408600480360360408110156106db57600080fd5b50803590602001356001600160a01b0316610e82565b6102f16004803603604081101561070757600080fd5b506001600160a01b0381358116916020013516610edb565b610408610f06565b61038c610f1e565b6104086004803603602081101561074557600080fd5b50356001600160a01b0316610fd6565b60038054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107e15780601f106107b6576101008083540402835291602001916107e1565b820191906000526020600020905b8154815290600101906020018083116107c457829003601f168201915b5050505050905090565b60006107ff6107f8611004565b8484611008565b5060015b92915050565b60025490565b600061081c8484846110f4565b61088c84610828611004565b61088785604051806060016040528060288152602001611a73602891396001600160a01b038a16600090815260016020526040812090610866611004565b6001600160a01b03168152602081019190915260400160002054919061124f565b611008565b5060019392505050565b60009081526006602052604090206002015490565b60006108b56112e6565b610803600083610d0c565b600080516020611a5383398151915281565b606060006108df81610e59565b905060608167ffffffffffffffff811180156108fa57600080fd5b50604051908082528060200260200182016040528015610924578160200160208202803683370190505b50905060005b8281101561096e57600061093e8183610ced565b90508083838151811061094d57fe5b6001600160a01b03909216602092830291909101909101525060010161092a565b5091505090565b60008281526006602052604090206002015461099890610993611004565b610d0c565b6109d35760405162461bcd60e51b815260040180806020018281038252602f81526020018061198a602f913960400191505060405180910390fd5b6109dd828261133d565b5050565b60055460ff1690565b6109f2611004565b6001600160a01b0316816001600160a01b031614610a415760405162461bcd60e51b815260040180806020018281038252602f815260200180611b4a602f913960400191505060405180910390fd5b6109dd82826113a6565b60006107ff610a58611004565b846108878560016000610a69611004565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549061140f565b6000610ab3600080516020611b0583398151915233610d0c565b610b04576040805162461bcd60e51b815260206004820152601960248201527f53656e646572206d75737420626520746865206d696e74657200000000000000604482015290519081900360640190fd5b6107ff8383611469565b610b26600080516020611a5383398151915233610d0c565b610b77576040805162461bcd60e51b815260206004820152601960248201527f53656e646572206d75737420626520746865206275726e657200000000000000604482015290519081900360640190fd5b610b813382611559565b50565b6000610b8e6112e6565b610803600080516020611a5383398151915283610d0c565b610bae6112e6565b610bb6611655565b610bbf81611661565b610b8161169c565b610bcf6112e6565b610bd7611655565b610bdf6116ab565b610be761169c565b565b610bf16112e6565b610bf9611655565b610bbf816116e6565b6001600160a01b031660009081526020819052604090205490565b60606000610c38600080516020611a53833981519152610e59565b905060608167ffffffffffffffff81118015610c5357600080fd5b50604051908082528060200260200182016040528015610c7d578160200160208202803683370190505b50905060005b8281101561096e576000610ca5600080516020611a5383398151915283610ced565b905080838381518110610cb457fe5b6001600160a01b039092166020928302919091019091015250600101610c83565b610cdd6112e6565b610ce5611655565b610bdf6116f1565b6000828152600660205260408120610d0590836116fc565b9392505050565b6000828152600660205260408120610d059083611708565b60048054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107e15780601f106107b6576101008083540402835291602001916107e1565b610d8d6112e6565b610d95611655565b610bbf8161171d565b610da66112e6565b610dae611655565b610bdf611735565b600081565b60006107ff610dc8611004565b8461088785604051806060016040528060258152602001611b256025913960016000610df2611004565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919061124f565b60006107ff610e30611004565b84846110f4565b6000610e416112e6565b610803600080516020611b0583398151915283610d0c565b60008181526006602052604081206108039061174d565b600080516020611b0583398151915281565b600082815260066020526040902060020154610ea090610993611004565b610a415760405162461bcd60e51b8152600401808060200182810382526030815260200180611a236030913960400191505060405180910390fd5b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b610f0e6112e6565b610f16611655565b610bdf6116ce565b60606000610f39600080516020611b05833981519152610e59565b905060608167ffffffffffffffff81118015610f5457600080fd5b50604051908082528060200260200182016040528015610f7e578160200160208202803683370190505b50905060005b8281101561096e576000610fa6600080516020611b0583398151915283610ced565b905080838381518110610fb557fe5b6001600160a01b039092166020928302919091019091015250600101610f84565b610fde6112e6565b610fe6611655565b610bbf81611684565b6000610d05836001600160a01b038416611758565b3390565b6001600160a01b03831661104d5760405162461bcd60e51b8152600401808060200182810382526024815260200180611ae16024913960400191505060405180910390fd5b6001600160a01b0382166110925760405162461bcd60e51b81526004018080602001828103825260228152602001806119db6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166111395760405162461bcd60e51b8152600401808060200182810382526025815260200180611abc6025913960400191505060405180910390fd5b6001600160a01b03821661117e5760405162461bcd60e51b81526004018080602001828103825260238152602001806119676023913960400191505060405180910390fd5b6111898383836117a2565b6111c6816040518060600160405280602681526020016119fd602691396001600160a01b038616600090815260208190526040902054919061124f565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546111f5908261140f565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600081848411156112de5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156112a357818101518382015260200161128b565b50505050905090810190601f1680156112d05780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60075460ff16610be7576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60008281526006602052604090206113559082610fef565b156109dd57611362611004565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526006602052604090206113be90826117a7565b156109dd576113cb611004565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b600082820183811015610d05576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b0382166114c4576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b6114d0600083836117a2565b6002546114dd908261140f565b6002556001600160a01b038216600090815260208190526040902054611503908261140f565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b03821661159e5760405162461bcd60e51b8152600401808060200182810382526021815260200180611a9b6021913960400191505060405180910390fd5b6115aa826000836117a2565b6115e7816040518060600160405280602281526020016119b9602291396001600160a01b038516600090815260208190526040902054919061124f565b6001600160a01b03831660009081526020819052604090205560025461160d90826117bc565b6002556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6007805460ff19169055565b61166c600082610975565b611684600080516020611b0583398151915282610975565b610b81600080516020611a5383398151915282610975565b6007805460ff19166001179055565b6116b66000336109ea565b6116ce600080516020611b05833981519152336109ea565b610be7600080516020611a53833981519152336109ea565b610b81600082610975565b610be76000336109ea565b6000610d0583836117fe565b6000610d05836001600160a01b038416611862565b610b81600080516020611b0583398151915282610975565b610be7600080516020611b05833981519152336109ea565b60006108038261187a565b60006117648383611862565b61179a57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610803565b506000610803565b505050565b6000610d05836001600160a01b03841661187e565b6000610d0583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061124f565b815460009082106118405760405162461bcd60e51b81526004018080602001828103825260228152602001806119456022913960400191505060405180910390fd5b82600001828154811061184f57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000818152600183016020526040812054801561193a57835460001980830191908101906000908790839081106118b157fe5b90600052602060002001549050808760000184815481106118ce57fe5b6000918252602080832090910192909255828152600189810190925260409020908401905586548790806118fe57fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610803565b600091505061080356fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e647345524332303a207472616e7366657220746f20746865207a65726f2061646472657373416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e7445524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65e4b2a1ba12b0ae46fe120e095faea153cf269e4b012b647a52a09f4e0e45f17945524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573736e58ad548d72b425ea94c15f453bf26caddb061d82b2551db7fdd3cefe0e994045524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66a2646970667358221220327ea595a1fb4ad9331d810bb647716fbe31cc8d1f08cb90f67efdac3504964864736f6c634300060c0033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000154a61727669732053796e746865746963204575726f000000000000000000000000000000000000000000000000000000000000000000000000000000000000046a45555200000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106102275760003560e01c806370a0823111610130578063a457c2d7116100b8578063d547741f1161007c578063d547741f146106c5578063dd62ed3e146106f1578063e9ec9e8b1461071f578063ea889a8914610727578063f44637ba1461072f57610227565b8063a457c2d714610622578063a9059cbb1461064e578063aa271e1a1461067a578063ca15c873146106a0578063d5391393146106bd57610227565b806391d14854116100ff57806391d14854146105b857806395d89b41146105e4578063983b2d56146105ec5780639865027514610612578063a217fddf1461061a57610227565b806370a08231146105435780638169d68e146105695780638bad0c0a146105715780639010d07c1461057957610227565b8063313ce567116101b357806342966c681161018257806342966c68146104ac5780634334614a146104c957806355783c8f146104ef57806355aa812714610515578063704802751461051d57610227565b8063313ce5671461040a57806336568abe14610428578063395093511461045457806340c10f191461048057610227565b8063248a9ca3116101fa578063248a9ca31461033957806324d7806c14610356578063282c51f31461037c5780632bb77846146103845780632f2ff15d146103dc57610227565b806306fdde031461022c578063095ea7b3146102a957806318160ddd146102e957806323b872dd14610303575b600080fd5b610234610755565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561026e578181015183820152602001610256565b50505050905090810190601f16801561029b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102d5600480360360408110156102bf57600080fd5b506001600160a01b0381351690602001356107eb565b604080519115158252519081900360200190f35b6102f1610809565b60408051918252519081900360200190f35b6102d56004803603606081101561031957600080fd5b506001600160a01b0381358116916020810135909116906040013561080f565b6102f16004803603602081101561034f57600080fd5b5035610896565b6102d56004803603602081101561036c57600080fd5b50356001600160a01b03166108ab565b6102f16108c0565b61038c6108d2565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156103c85781810151838201526020016103b0565b505050509050019250505060405180910390f35b610408600480360360408110156103f257600080fd5b50803590602001356001600160a01b0316610975565b005b6104126109e1565b6040805160ff9092168252519081900360200190f35b6104086004803603604081101561043e57600080fd5b50803590602001356001600160a01b03166109ea565b6102d56004803603604081101561046a57600080fd5b506001600160a01b038135169060200135610a4b565b6102d56004803603604081101561049657600080fd5b506001600160a01b038135169060200135610a99565b610408600480360360208110156104c257600080fd5b5035610b0e565b6102d5600480360360208110156104df57600080fd5b50356001600160a01b0316610b84565b6104086004803603602081101561050557600080fd5b50356001600160a01b0316610ba6565b610408610bc7565b6104086004803603602081101561053357600080fd5b50356001600160a01b0316610be9565b6102f16004803603602081101561055957600080fd5b50356001600160a01b0316610c02565b61038c610c1d565b610408610cd5565b61059c6004803603604081101561058f57600080fd5b5080359060200135610ced565b604080516001600160a01b039092168252519081900360200190f35b6102d5600480360360408110156105ce57600080fd5b50803590602001356001600160a01b0316610d0c565b610234610d24565b6104086004803603602081101561060257600080fd5b50356001600160a01b0316610d85565b610408610d9e565b6102f1610db6565b6102d56004803603604081101561063857600080fd5b506001600160a01b038135169060200135610dbb565b6102d56004803603604081101561066457600080fd5b506001600160a01b038135169060200135610e23565b6102d56004803603602081101561069057600080fd5b50356001600160a01b0316610e37565b6102f1600480360360208110156106b657600080fd5b5035610e59565b6102f1610e70565b610408600480360360408110156106db57600080fd5b50803590602001356001600160a01b0316610e82565b6102f16004803603604081101561070757600080fd5b506001600160a01b0381358116916020013516610edb565b610408610f06565b61038c610f1e565b6104086004803603602081101561074557600080fd5b50356001600160a01b0316610fd6565b60038054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107e15780601f106107b6576101008083540402835291602001916107e1565b820191906000526020600020905b8154815290600101906020018083116107c457829003601f168201915b5050505050905090565b60006107ff6107f8611004565b8484611008565b5060015b92915050565b60025490565b600061081c8484846110f4565b61088c84610828611004565b61088785604051806060016040528060288152602001611a73602891396001600160a01b038a16600090815260016020526040812090610866611004565b6001600160a01b03168152602081019190915260400160002054919061124f565b611008565b5060019392505050565b60009081526006602052604090206002015490565b60006108b56112e6565b610803600083610d0c565b600080516020611a5383398151915281565b606060006108df81610e59565b905060608167ffffffffffffffff811180156108fa57600080fd5b50604051908082528060200260200182016040528015610924578160200160208202803683370190505b50905060005b8281101561096e57600061093e8183610ced565b90508083838151811061094d57fe5b6001600160a01b03909216602092830291909101909101525060010161092a565b5091505090565b60008281526006602052604090206002015461099890610993611004565b610d0c565b6109d35760405162461bcd60e51b815260040180806020018281038252602f81526020018061198a602f913960400191505060405180910390fd5b6109dd828261133d565b5050565b60055460ff1690565b6109f2611004565b6001600160a01b0316816001600160a01b031614610a415760405162461bcd60e51b815260040180806020018281038252602f815260200180611b4a602f913960400191505060405180910390fd5b6109dd82826113a6565b60006107ff610a58611004565b846108878560016000610a69611004565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549061140f565b6000610ab3600080516020611b0583398151915233610d0c565b610b04576040805162461bcd60e51b815260206004820152601960248201527f53656e646572206d75737420626520746865206d696e74657200000000000000604482015290519081900360640190fd5b6107ff8383611469565b610b26600080516020611a5383398151915233610d0c565b610b77576040805162461bcd60e51b815260206004820152601960248201527f53656e646572206d75737420626520746865206275726e657200000000000000604482015290519081900360640190fd5b610b813382611559565b50565b6000610b8e6112e6565b610803600080516020611a5383398151915283610d0c565b610bae6112e6565b610bb6611655565b610bbf81611661565b610b8161169c565b610bcf6112e6565b610bd7611655565b610bdf6116ab565b610be761169c565b565b610bf16112e6565b610bf9611655565b610bbf816116e6565b6001600160a01b031660009081526020819052604090205490565b60606000610c38600080516020611a53833981519152610e59565b905060608167ffffffffffffffff81118015610c5357600080fd5b50604051908082528060200260200182016040528015610c7d578160200160208202803683370190505b50905060005b8281101561096e576000610ca5600080516020611a5383398151915283610ced565b905080838381518110610cb457fe5b6001600160a01b039092166020928302919091019091015250600101610c83565b610cdd6112e6565b610ce5611655565b610bdf6116f1565b6000828152600660205260408120610d0590836116fc565b9392505050565b6000828152600660205260408120610d059083611708565b60048054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107e15780601f106107b6576101008083540402835291602001916107e1565b610d8d6112e6565b610d95611655565b610bbf8161171d565b610da66112e6565b610dae611655565b610bdf611735565b600081565b60006107ff610dc8611004565b8461088785604051806060016040528060258152602001611b256025913960016000610df2611004565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919061124f565b60006107ff610e30611004565b84846110f4565b6000610e416112e6565b610803600080516020611b0583398151915283610d0c565b60008181526006602052604081206108039061174d565b600080516020611b0583398151915281565b600082815260066020526040902060020154610ea090610993611004565b610a415760405162461bcd60e51b8152600401808060200182810382526030815260200180611a236030913960400191505060405180910390fd5b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b610f0e6112e6565b610f16611655565b610bdf6116ce565b60606000610f39600080516020611b05833981519152610e59565b905060608167ffffffffffffffff81118015610f5457600080fd5b50604051908082528060200260200182016040528015610f7e578160200160208202803683370190505b50905060005b8281101561096e576000610fa6600080516020611b0583398151915283610ced565b905080838381518110610fb557fe5b6001600160a01b039092166020928302919091019091015250600101610f84565b610fde6112e6565b610fe6611655565b610bbf81611684565b6000610d05836001600160a01b038416611758565b3390565b6001600160a01b03831661104d5760405162461bcd60e51b8152600401808060200182810382526024815260200180611ae16024913960400191505060405180910390fd5b6001600160a01b0382166110925760405162461bcd60e51b81526004018080602001828103825260228152602001806119db6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166111395760405162461bcd60e51b8152600401808060200182810382526025815260200180611abc6025913960400191505060405180910390fd5b6001600160a01b03821661117e5760405162461bcd60e51b81526004018080602001828103825260238152602001806119676023913960400191505060405180910390fd5b6111898383836117a2565b6111c6816040518060600160405280602681526020016119fd602691396001600160a01b038616600090815260208190526040902054919061124f565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546111f5908261140f565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600081848411156112de5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156112a357818101518382015260200161128b565b50505050905090810190601f1680156112d05780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60075460ff16610be7576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60008281526006602052604090206113559082610fef565b156109dd57611362611004565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526006602052604090206113be90826117a7565b156109dd576113cb611004565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b600082820183811015610d05576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b0382166114c4576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b6114d0600083836117a2565b6002546114dd908261140f565b6002556001600160a01b038216600090815260208190526040902054611503908261140f565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b03821661159e5760405162461bcd60e51b8152600401808060200182810382526021815260200180611a9b6021913960400191505060405180910390fd5b6115aa826000836117a2565b6115e7816040518060600160405280602281526020016119b9602291396001600160a01b038516600090815260208190526040902054919061124f565b6001600160a01b03831660009081526020819052604090205560025461160d90826117bc565b6002556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6007805460ff19169055565b61166c600082610975565b611684600080516020611b0583398151915282610975565b610b81600080516020611a5383398151915282610975565b6007805460ff19166001179055565b6116b66000336109ea565b6116ce600080516020611b05833981519152336109ea565b610be7600080516020611a53833981519152336109ea565b610b81600082610975565b610be76000336109ea565b6000610d0583836117fe565b6000610d05836001600160a01b038416611862565b610b81600080516020611b0583398151915282610975565b610be7600080516020611b05833981519152336109ea565b60006108038261187a565b60006117648383611862565b61179a57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610803565b506000610803565b505050565b6000610d05836001600160a01b03841661187e565b6000610d0583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061124f565b815460009082106118405760405162461bcd60e51b81526004018080602001828103825260228152602001806119456022913960400191505060405180910390fd5b82600001828154811061184f57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000818152600183016020526040812054801561193a57835460001980830191908101906000908790839081106118b157fe5b90600052602060002001549050808760000184815481106118ce57fe5b6000918252602080832090910192909255828152600189810190925260409020908401905586548790806118fe57fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610803565b600091505061080356fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e647345524332303a207472616e7366657220746f20746865207a65726f2061646472657373416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e7445524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65e4b2a1ba12b0ae46fe120e095faea153cf269e4b012b647a52a09f4e0e45f17945524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573736e58ad548d72b425ea94c15f453bf26caddb061d82b2551db7fdd3cefe0e994045524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66a2646970667358221220327ea595a1fb4ad9331d810bb647716fbe31cc8d1f08cb90f67efdac3504964864736f6c634300060c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000154a61727669732053796e746865746963204575726f000000000000000000000000000000000000000000000000000000000000000000000000000000000000046a45555200000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : tokenName (string): Jarvis Synthetic Euro
Arg [1] : tokenSymbol (string): jEUR
Arg [2] : tokenDecimals (uint8): 18
-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000015
Arg [4] : 4a61727669732053796e746865746963204575726f0000000000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [6] : 6a45555200000000000000000000000000000000000000000000000000000000
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.