ERC-20
Overview
Max Total Supply
5,000,000,000 DKA
Holders
4,440 (0.00%)
Market
Price
$0.02 @ 0.000008 ETH (+4.38%)
Onchain Market Cap
$124,242,400.00
Circulating Supply Market Cap
$108,162,605.00
Other Info
Token Contract (WITH 18 Decimals)
Balance
25 DKAValue
$0.62 ( ~0.000198238401339144 Eth) [0.0000%]Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
DkargoToken
Compiler Version
v0.5.6+commit.b259423e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-05-11 */ // File: contracts/DkargoPrefix.sol pragma solidity >=0.5.0 <0.6.0; /// @title DkargoPrefix /// @notice 디카르고 컨트랙트 여부 식별용 prefix 컨트랙트 정의 /// @author jhhong contract DkargoPrefix { string internal _dkargoPrefix; // 디카르고-프리픽스 /// @author jhhong /// @notice 디카르고 프리픽스를 반환한다. /// @return 디카르고 프리픽스 (string) function getDkargoPrefix() public view returns(string memory) { return _dkargoPrefix; } /// @author jhhong /// @notice 디카르고 프리픽스를 설정한다. /// @param prefix 설정할 프리픽스 function _setDkargoPrefix(string memory prefix) internal { _dkargoPrefix = prefix; } } // File: contracts/authority/Ownership.sol pragma solidity >=0.5.0 <0.6.0; /// @title Onwership /// @dev 오너 확인 및 소유권 이전 처리 /// @author jhhong contract Ownership { address private _owner; event OwnershipTransferred(address indexed old, address indexed expected); /// @author jhhong /// @notice 소유자만 접근할 수 있음을 명시한다. modifier onlyOwner() { require(isOwner() == true, "Ownership: only the owner can call"); _; } /// @author jhhong /// @notice 컨트랙트 생성자이다. constructor() internal { emit OwnershipTransferred(_owner, msg.sender); _owner = msg.sender; } /// @author jhhong /// @notice 소유권을 넘겨준다. /// @param expected 새로운 오너 계정 function transferOwnership(address expected) public onlyOwner { require(expected != address(0), "Ownership: new owner is the zero address"); emit OwnershipTransferred(_owner, expected); _owner = expected; } /// @author jhhong /// @notice 오너 주소를 반환한다. /// @return 오너 주소 function owner() public view returns (address) { return _owner; } /// @author jhhong /// @notice 소유자인지 확인한다. /// @return 확인 결과 (boolean) function isOwner() public view returns (bool) { return msg.sender == _owner; } } // File: contracts/libs/refs/SafeMath.sol pragma solidity >=0.5.0 <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. * * NOTE: This is a feature of the next version of OpenZeppelin Contracts. * @dev Get it via `npm install @openzeppelin/contracts@next`. */ 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-solidity/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) { // Solidity only automatically asserts when dividing by 0 require(b > 0, "SafeMath: division by zero"); 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) { require(b != 0, "SafeMath: modulo by zero"); return a % b; } } // File: contracts/chain/AddressChain.sol pragma solidity >=0.5.0 <0.6.0; /// @title AddressChain /// @notice 주소 체인 정의 및 관리 /// @dev 토큰홀더, 회원정보 등과 같은 유저 리스트 관리에 쓰인다. /// @author jhhong contract AddressChain { using SafeMath for uint256; // 구조체 : 노드 정보 struct NodeInfo { address prev; // 이전 노드 address next; // 다음 노드 } // 구조체 : 노드 체인 struct NodeList { uint256 count; // 노드의 총 개수 address head; // 체인의 머리 address tail; // 체인의 꼬리 mapping(address => NodeInfo) map; // 계정에 대한 노드 정보 매핑 } // 변수 선언 NodeList private _slist; // 노드 체인 (싱글리스트) // 이벤트 선언 event AddressChainLinked(address indexed node); // 이벤트: 체인에 추가됨 event AddressChainUnlinked(address indexed node); // 이벤트: 체인에서 빠짐 /// @author jhhong /// @notice 체인에 연결된 원소의 개수를 반환한다. /// @return 체인에 연결된 원소의 개수 function count() public view returns(uint256) { return _slist.count; } /// @author jhhong /// @notice 체인 헤드 정보를 반환한다. /// @return 체인 헤드 정보 function head() public view returns(address) { return _slist.head; } /// @author jhhong /// @notice 체인 꼬리 정보를 반환한다. /// @return 체인 꼬리 정보 function tail() public view returns(address) { return _slist.tail; } /// @author jhhong /// @notice node의 다음 노드 정보를 반환한다. /// @param node 노드 정보 (체인에 연결되어 있을 수도 있고 아닐 수도 있음) /// @return node의 다음 노드 정보 function nextOf(address node) public view returns(address) { return _slist.map[node].next; } /// @author jhhong /// @notice node의 이전 노드 정보를 반환한다. /// @param node 노드 정보 (체인에 연결되어 있을 수도 있고 아닐 수도 있음) /// @return node의 이전 노드 정보 function prevOf(address node) public view returns(address) { return _slist.map[node].prev; } /// @author jhhong /// @notice node가 체인에 연결된 상태인지를 확인한다. /// @param node 체인 연결 여부를 확인할 노드 주소 /// @return 연결 여부 (boolean), true: 연결됨(linked), false: 연결되지 않음(unlinked) function isLinked(address node) public view returns (bool) { if(_slist.count == 1 && _slist.head == node && _slist.tail == node) { return true; } else { return (_slist.map[node].prev == address(0) && _slist.map[node].next == address(0))? (false) :(true); } } /// @author jhhong /// @notice 새로운 노드 정보를 노드 체인에 연결한다. /// @param node 노드 체인에 연결할 노드 주소 function _linkChain(address node) internal { require(node != address(0), "AddressChain: try to link to the zero address"); require(!isLinked(node), "AddressChain: the node is aleady linked"); if(_slist.count == 0) { _slist.head = _slist.tail = node; } else { _slist.map[node].prev = _slist.tail; _slist.map[_slist.tail].next = node; _slist.tail = node; } _slist.count = _slist.count.add(1); emit AddressChainLinked(node); } /// @author jhhong /// @notice node 노드를 체인에서 연결 해제한다. /// @param node 노드 체인에서 연결 해제할 노드 주소 function _unlinkChain(address node) internal { require(node != address(0), "AddressChain: try to unlink to the zero address"); require(isLinked(node), "AddressChain: the node is aleady unlinked"); address tempPrev = _slist.map[node].prev; address tempNext = _slist.map[node].next; if (_slist.head == node) { _slist.head = tempNext; } if (_slist.tail == node) { _slist.tail = tempPrev; } if (tempPrev != address(0)) { _slist.map[tempPrev].next = tempNext; _slist.map[node].prev = address(0); } if (tempNext != address(0)) { _slist.map[tempNext].prev = tempPrev; _slist.map[node].next = address(0); } _slist.count = _slist.count.sub(1); emit AddressChainUnlinked(node); } } // File: contracts/introspection/ERC165/IERC165.sol pragma solidity >=0.5.0 <0.6.0; /// @title IERC165 /// @dev EIP165 interface 선언 /// https://github.com/ethereum/EIPs/blob/master/EIPS/eip-165.md /// @author jhhong interface IERC165 { function supportsInterface(bytes4 interfaceId) external view returns (bool); } // File: contracts/introspection/ERC165/ERC165.sol pragma solidity >=0.5.0 <0.6.0; /// @title ERC165 /// @dev EIP165 interface 구현 /// @author jhhong contract ERC165 is IERC165 { mapping(bytes4 => bool) private _infcs; // INTERFACE ID별 지원여부를 저장하기 위한 매핑 변수 /// @author jhhong /// @notice 컨트랙트 생성자이다. /// @dev bytes4(keccak256('supportsInterface(bytes4)')) == 0x01ffc9a7 constructor() internal { _registerInterface(0x01ffc9a7); // supportsInterface()의 INTERFACE ID 등록 } /// @author jhhong /// @notice 컨트랙트가 INTERFACE ID를 지원하는지의 여부를 반환한다. /// @param infcid 지원여부를 확인할 INTERFACE ID (Function Selector) /// @return 지원여부 (boolean) function supportsInterface(bytes4 infcid) external view returns (bool) { return _infcs[infcid]; } /// @author jhhong /// @notice INTERFACE ID를 등록한다. /// @param infcid 등록할 INTERFACE ID (Function Selector) function _registerInterface(bytes4 infcid) internal { require(infcid != 0xffffffff, "ERC165: invalid interface id"); _infcs[infcid] = true; } } // File: contracts/token/ERC20/IERC20.sol pragma solidity >=0.5.0 <0.6.0; /// @title IERC20 /// @notice EIP20 interface 선언 /// https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md /// @author jhhong interface IERC20 { function transfer(address recipient, uint256 amount) external returns (bool); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function allowance(address owner, address spender) external view returns (uint256); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } // File: contracts/token/ERC20/ERC20.sol pragma solidity >=0.5.0 <0.6.0; /// @title ERC20 /// @notice EIP20 interface 정의 및 mint/burn (internal) 함수 구현 /// @author jhhong contract ERC20 is IERC20 { using SafeMath for uint256; uint256 private _supply; // 총 통화량 mapping(address => uint256) private _balances; // 계정별 통화량 저장소 mapping(address => mapping(address => uint256)) private _allowances; // 각 계정에 대해 "계정별 위임량"을 저장 /// @author jhhong /// @notice 컨트랙트 생성자이다. /// @param supply 초기 발행량 constructor(uint256 supply) internal { uint256 pebs = supply; _mint(msg.sender, pebs); } /// @author jhhong /// @notice 계정(spender)에게 통화량(value)을 위임한다. /// @param spender 위임받을 계정 /// @param amount 위임할 통화량 /// @return 정상처리 시 true function approve(address spender, uint256 amount) public returns (bool) { _approve(msg.sender, spender, amount); return true; } /// @author jhhong /// @notice 계정(recipient)에게 통화량(amount)을 전송한다. /// @param recipient 전송받을 계정 /// @param amount 금액 /// @return 정상처리 시 true function transfer(address recipient, uint256 amount) public returns (bool) { _transfer(msg.sender, recipient, amount); return true; } /// @author jhhong /// @notice 계정(sender)이 계정(recipient)에게 통화량(amount)을 전송한다. /// @param sender 전송할 계정 /// @param recipient 전송받을 계정 /// @param amount 금액 /// @return 정상처리 시 true function transferFrom(address sender, address recipient, uint256 amount) public returns (bool) { _transfer(sender, recipient, amount); _approve(sender, msg.sender, _allowances[sender][msg.sender].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } /// @author jhhong /// @notice 발행된 총 통화량을 반환한다. /// @return 총 통화량 function totalSupply() public view returns (uint256) { return _supply; } /// @author jhhong /// @notice 계정(account)이 보유한 통화량을 반환한다. /// @param account 계정 /// @return 계정(account)이 보유한 통화량 function balanceOf(address account) public view returns (uint256) { return _balances[account]; } /// @author jhhong /// @notice 계정(approver)이 계정(spender)에게 위임한 통화량을 반환한다. /// @param approver 위임할 계정 /// @param spender 위임받을 계정 /// @return 계정(approver)이 계정(spender)에게 위임한 통화량 function allowance(address approver, address spender) public view returns (uint256) { return _allowances[approver][spender]; } /// @author jhhong /// @notice 계정(approver)이 계정(spender)에게 통화량(value)을 위임한다. /// @param approver 위임할 계정 /// @param spender 위임받을 계정 /// @param value 위임할 통화량 function _approve(address approver, address spender, uint256 value) internal { require(approver != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[approver][spender] = value; emit Approval(approver, spender, value); } /// @author jhhong /// @notice 계정(sender)이 계정(recipient)에게 통화량(amount)을 전송한다. /// @param sender 위임할 계정 /// @param recipient 위임받을 계정 /// @param amount 금액 function _transfer(address sender, address recipient, uint256 amount) internal { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); } /// @author jhhong /// @notice 통화량(amount)만큼 주조하여 계정(account)의 통화량에 더해준다. /// @dev ERC20Mint에 정의하면 private 속성인 supply와 balances에 access할 수 없어서 ERC20에 internal로 정의함. /// @param account 주조된 통화량을 받을 계정 /// @param amount 주조할 통화량 function _mint(address account, uint256 amount) internal { require(account != address(0), "ERC20: mint to the zero address"); _supply = _supply.add(amount); _balances[account] = _balances[account].add(amount); emit Transfer(address(0), account, amount); } /// @author jhhong /// @notice 통화량(value)만큼 소각하여 계정(account)의 통화량에서 뺀다. /// @dev ERC20Mint에 정의하면 private 속성인 supply와 balances에 access할 수 없어서 ERC20에 internal로 정의함. /// @param account 통화량을 소각시킬 계정 /// @param value 소각시킬 통화량 function _burn(address account, uint256 value) internal { require(account != address(0), "ERC20: burn from the zero address"); _balances[account] = _balances[account].sub(value, "ERC20: burn amount exceeds balance"); _supply = _supply.sub(value); emit Transfer(account, address(0), value); } } // File: contracts/token/ERC20/ERC20Safe.sol pragma solidity >=0.5.0 <0.6.0; /// @title ERC20Safe /// @notice Approve Bug Fix 버전 (중복 위임 방지) /// @author jhhong contract ERC20Safe is ERC20 { using SafeMath for uint256; /// @author jhhong /// @notice 계정(spender)에게 통화량(amount)을 위임한다. /// @dev 값이 덮어써짐을 방지하기 위해 기존에 위임받은 통화량이 0인 경우에만 호출을 허용한다. /// @param spender 위임받을 계정 /// @param amount 위임할 통화량 /// @return 정상처리 시 true function approve(address spender, uint256 amount) public returns (bool) { require((amount == 0) || (allowance(msg.sender, spender) == 0), "ERC20Safe: approve from non-zero to non-zero allowance"); return super.approve(spender, amount); } /// @author jhhong /// @notice 계정(spender)에 위임된 통화량에 통화량(addedValue)를 더한값을 위임한다. /// @dev 위임된 통화량이 있을 경우, 통화량 증가는 상기 함수로 수행할 것 /// @param spender 위임받을 계정 /// @param addedValue 더해질 통화량 /// @return 정상처리 시 true function increaseAllowance(address spender, uint256 addedValue) public returns (bool) { uint256 amount = allowance(msg.sender, spender).add(addedValue); return super.approve(spender, amount); } /// @author jhhong /// @notice 계정(spender)에 위임된 통화량에 통화량(subtractedValue)를 뺀값을 위임한다. /// @dev 위임된 통화량이 있을 경우, 통화량 감소는 상기 함수로 수행할 것 /// @param spender 위임받을 계정 /// @param subtractedValue 빼질 통화량 /// @return 정상처리 시 true function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) { uint256 amount = allowance(msg.sender, spender).sub(subtractedValue, "ERC20: decreased allowance below zero"); return super.approve(spender, amount); } } // File: contracts/DkargoToken.sol pragma solidity >=0.5.0 <0.6.0; /// @title DkargoToken /// @notice 디카르고 토큰 컨트랙트 정의 (메인넷 deploy용) /// @dev burn 기능 추가 (public) /// @author jhhong contract DkargoToken is Ownership, ERC20Safe, AddressChain, ERC165, DkargoPrefix { string private _name; // 토큰 이름 string private _symbol; // 토큰 심볼 /// @author jhhong /// @notice 컨트랙트 생성자이다. /// @dev 초기 발행량이 있을 경우, msg.sender를 홀더 리스트에 추가한다. /// @param name 토큰 이름 /// @param symbol 토큰 심볼 /// @param supply 초기 발행량 constructor(string memory name, string memory symbol, uint256 supply) ERC20(supply) public { _setDkargoPrefix("token"); // 프리픽스 설정 (token) _registerInterface(0x946edbed); // INTERFACE ID 등록 (getDkargoPrefix) _name = name; _symbol = symbol; _linkChain(msg.sender); } /// @author jhhong /// @notice 본인의 보유금액 중 지정된 금액만큼 소각한다. /// @param amount 소각시킬 통화량 function burn(uint256 amount) external { _burn(msg.sender, amount); } /// @author jhhong /// @notice 토큰을 전송한다. (전송주체: msg.sender) /// @dev 전송 후 변경된 토큰 홀더 상태를 체인에 기록한다. /// @param to 토큰을 받을 주소 /// @param value 전송 금액 (토큰량) function transfer(address to, uint256 value) public returns (bool) { bool ret = super.transfer(to, value); if(isLinked(msg.sender) && balanceOf(msg.sender) == 0) { _unlinkChain(msg.sender); } if(!isLinked(to) && balanceOf(to) > 0) { _linkChain(to); } return ret; } /// @author jhhong /// @notice 토큰을 전송한다. (전송주체: from) /// @dev 전송 후 변경된 토큰 홀더 상태를 체인에 기록한다. /// @param from 토큰을 보낼 계정 /// @param to 토큰을 받을 계정 /// @param value 전송 금액 (토큰량) function transferFrom(address from, address to, uint256 value) public returns (bool) { bool ret = super.transferFrom(from, to, value); if(isLinked(from) && balanceOf(from) == 0) { _unlinkChain(from); } if(!isLinked(to) && balanceOf(to) > 0) { _linkChain(to); } return ret; } /// @author jhhong /// @notice 토큰의 이름을 반환한다. /// @return 토큰 이름 function name() public view returns(string memory) { return _name; } /// @author jhhong /// @notice 토큰의 심볼을 반환한다. /// @return 토큰 심볼 function symbol() public view returns(string memory) { return _symbol; } /// @author jhhong /// @notice 토큰 데시멀을 반환한다. /// @dev 데시멀 값은 18 (peb) 로 고정이다. /// @return 토큰 데시멀 function decimals() public pure returns(uint256) { return 18; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[{"name":"infcid","type":"bytes4"}],"name":"supportsInterface","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"count","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"amount","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tail","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"account","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"head","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getDkargoPrefix","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"address"}],"name":"nextOf","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"approver","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"expected","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"address"}],"name":"prevOf","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"address"}],"name":"isLinked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"name","type":"string"},{"name":"symbol","type":"string"},{"name":"supply","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"address"}],"name":"AddressChainLinked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"address"}],"name":"AddressChainUnlinked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"old","type":"address"},{"indexed":true,"name":"expected","type":"address"}],"name":"OwnershipTransferred","type":"event"}]
Contract Creation Code
60806040523480156200001157600080fd5b5060405162001cef38038062001cef833981018060405260608110156200003757600080fd5b8101908080516401000000008111156200005057600080fd5b820160208101848111156200006457600080fd5b81516401000000008111828201871017156200007f57600080fd5b505092919060200180516401000000008111156200009c57600080fd5b82016020810184811115620000b057600080fd5b8151640100000000811182820187101715620000cb57600080fd5b505060209091015160008054604051939550919350839233926001600160a01b0316917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319163390811790915581906200013b9082620001f9602090811b901c565b5050620001556301ffc9a760e01b6200031860201b60201c565b6200019b6040518060400160405280600581526020017f746f6b656e000000000000000000000000000000000000000000000000000000815250620003e760201b60201c565b620001b363946edbed60e01b6200031860201b60201c565b8251620001c890600a906020860190620006d2565b508151620001de90600b906020850190620006d2565b50620001f0336200040060201b60201c565b50505062000777565b6001600160a01b0382166200026f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b6200028b81600154620005ae60201b62000ddd1790919060201c565b6001556001600160a01b038216600090815260026020908152604090912054620002c091839062000ddd620005ae821b17901c565b6001600160a01b03831660008181526002602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b7fffffffff000000000000000000000000000000000000000000000000000000008082161415620003aa57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152600860205260409020805460ff19166001179055565b8051620003fc906009906020840190620006d2565b5050565b6001600160a01b03811662000461576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d81526020018062001cc2602d913960400191505060405180910390fd5b62000472816200062a60201b60201c565b15620004ca576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602781526020018062001c9b6027913960400191505060405180910390fd5b6004546200050357600680546001600160a01b0383166001600160a01b0319918216811790925560058054909116909117905562000554565b600680546001600160a01b0383811660008181526007602052604080822080549585166001600160a01b03199687161790558554909316815291909120600101805483168217905582549091161790555b620005746001600460000154620005ae60201b62000ddd1790919060201c565b6004556040516001600160a01b038216907ffb98a8b56eed2c666f89f2f34b3436cff006ee4c5222c1c0b13fb0ea9ee4265590600090a250565b6000828201838110156200062357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b60045460009060011480156200064d57506005546001600160a01b038381169116145b80156200066757506006546001600160a01b038381169116145b156200067657506001620006cd565b6001600160a01b0382811660009081526007602052604090205416158015620006ba57506001600160a01b0382811660009081526007602052604090206001015416155b620006c7576001620006ca565b60005b90505b919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200071557805160ff191683800117855562000745565b8280016001018555821562000745579182015b828111156200074557825182559160200191906001019062000728565b506200075392915062000757565b5090565b6200077491905b808211156200075357600081556001016200075e565b90565b61151480620007876000396000f3fe608060405234801561001057600080fd5b506004361061014d5760003560e01c80638da5cb5b116100c3578063a9059cbb1161007c578063a9059cbb1461037f578063c68c8feb146103ab578063dd62ed3e146103d1578063f2fde38b146103ff578063f32ca66014610425578063fb1afbd71461044b5761014d565b80638da5cb5b1461032b5780638f32d59b146103335780638f7dcfa31461033b578063946edbed1461034357806395d89b411461034b578063a457c2d7146103535761014d565b806318160ddd1161011557806318160ddd1461027457806323b872dd1461027c578063313ce567146102b257806339509351146102ba57806342966c68146102e657806370a08231146103055761014d565b806301ffc9a71461015257806306661abd1461018d57806306fdde03146101a7578063095ea7b31461022457806313d8c84014610250575b600080fd5b6101796004803603602081101561016857600080fd5b50356001600160e01b031916610471565b604080519115158252519081900360200190f35b610195610494565b60408051918252519081900360200190f35b6101af61049a565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101e95781810151838201526020016101d1565b50505050905090810190601f1680156102165780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101796004803603604081101561023a57600080fd5b506001600160a01b038135169060200135610530565b610258610595565b604080516001600160a01b039092168252519081900360200190f35b6101956105a4565b6101796004803603606081101561029257600080fd5b506001600160a01b038135811691602081013590911690604001356105aa565b610195610617565b610179600480360360408110156102d057600080fd5b506001600160a01b03813516906020013561061c565b610303600480360360208110156102fc57600080fd5b5035610645565b005b6101956004803603602081101561031b57600080fd5b50356001600160a01b0316610652565b61025861066d565b61017961067c565b61025861068d565b6101af61069c565b6101af6106fd565b6101796004803603604081101561036957600080fd5b506001600160a01b03813516906020013561075e565b6101796004803603604081101561039557600080fd5b506001600160a01b038135169060200135610795565b610258600480360360208110156103c157600080fd5b50356001600160a01b03166107f9565b610195600480360360408110156103e757600080fd5b506001600160a01b038135811691602001351661081a565b6103036004803603602081101561041557600080fd5b50356001600160a01b0316610845565b6102586004803603602081101561043b57600080fd5b50356001600160a01b0316610933565b6101796004803603602081101561046157600080fd5b50356001600160a01b0316610951565b6001600160e01b0319811660009081526008602052604090205460ff165b919050565b60045490565b600a8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105265780601f106104fb57610100808354040283529160200191610526565b820191906000526020600020905b81548152906001019060200180831161050957829003601f168201915b5050505050905090565b60008115806105465750610544338461081a565b155b61058457604051600160e51b62461bcd02815260040180806020018281038252603681526020018061148e6036913960400191505060405180910390fd5b61058e83836109f1565b9392505050565b6006546001600160a01b031690565b60015490565b6000806105b8858585610a07565b90506105c385610951565b80156105d557506105d385610652565b155b156105e3576105e385610a76565b6105ec84610951565b158015610601575060006105ff85610652565b115b1561060f5761060f84610c77565b949350505050565b601290565b6000806106398361062d338761081a565b9063ffffffff610ddd16565b905061060f84826109f1565b61064f3382610e3a565b50565b6001600160a01b031660009081526002602052604090205490565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b6005546001600160a01b031690565b60098054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105265780601f106104fb57610100808354040283529160200191610526565b600b8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105265780601f106104fb57610100808354040283529160200191610526565b600080610639836040518060600160405280602581526020016114c460259139610788338861081a565b919063ffffffff610f3916565b6000806107a28484610fd3565b90506107ad33610951565b80156107bf57506107bd33610652565b155b156107cd576107cd33610a76565b6107d684610951565b1580156107eb575060006107e985610652565b115b1561058e5761058e84610c77565b6001600160a01b039081166000908152600760205260409020600101541690565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b61084d61067c565b151560011461089057604051600160e51b62461bcd0281526004018080602001828103825260228152602001806113566022913960400191505060405180910390fd5b6001600160a01b0381166108d857604051600160e51b62461bcd0281526004018080602001828103825260288152602001806113cd6028913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b039081166000908152600760205260409020541690565b600454600090600114801561097357506005546001600160a01b038381169116145b801561098c57506006546001600160a01b038381169116145b156109995750600161048f565b6001600160a01b03828116600090815260076020526040902054161580156109dc57506001600160a01b0382811660009081526007602052604090206001015416155b6109e75760016109ea565b60005b905061048f565b60006109fe338484610fe0565b50600192915050565b6000610a148484846110d2565b610a6c8433610a67856040518060600160405280602881526020016113a5602891396001600160a01b038a166000908152600360209081526040808320338452909152902054919063ffffffff610f3916565b610fe0565b5060019392505050565b6001600160a01b038116610abe57604051600160e51b62461bcd02815260040180806020018281038252602f815260200180611416602f913960400191505060405180910390fd5b610ac781610951565b610b0557604051600160e51b62461bcd0281526004018080602001828103825260298152602001806112e06029913960400191505060405180910390fd5b6001600160a01b0380821660008181526007602052604090208054600190910154600554918416939081169291161415610b5557600580546001600160a01b0319166001600160a01b0383161790555b6006546001600160a01b0384811691161415610b8757600680546001600160a01b0319166001600160a01b0384161790555b6001600160a01b03821615610bd7576001600160a01b0380831660009081526007602052604080822060010180548486166001600160a01b03199182161790915592861682529020805490911690555b6001600160a01b03811615610c27576001600160a01b0380821660009081526007602052604080822080548487166001600160a01b03199182161790915592861682529020600101805490911690555b600454610c3b90600163ffffffff61123616565b6004556040516001600160a01b038416907fafa37ecd3c0a33e32c703b30b29966f99a9b771578068da492e6297a4acb84ee90600090a2505050565b6001600160a01b038116610cbf57604051600160e51b62461bcd02815260040180806020018281038252602d815260200180611378602d913960400191505060405180910390fd5b610cc881610951565b15610d0757604051600160e51b62461bcd0281526004018080602001828103825260278152602001806113096027913960400191505060405180910390fd5b600454610d3e57600680546001600160a01b0383166001600160a01b03199182168117909255600580549091169091179055610d8f565b600680546001600160a01b0383811660008181526007602052604080822080549585166001600160a01b03199687161790558554909316815291909120600101805483168217905582549091161790555b600454610da390600163ffffffff610ddd16565b6004556040516001600160a01b038216907ffb98a8b56eed2c666f89f2f34b3436cff006ee4c5222c1c0b13fb0ea9ee4265590600090a250565b60008282018381101561058e5760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b038216610e8257604051600160e51b62461bcd0281526004018080602001828103825260218152602001806113f56021913960400191505060405180910390fd5b610ec58160405180606001604052806022815260200161129c602291396001600160a01b038516600090815260026020526040902054919063ffffffff610f3916565b6001600160a01b038316600090815260026020526040902055600154610ef1908263ffffffff61123616565b6001556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b60008184841115610fcb57604051600160e51b62461bcd0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f90578181015183820152602001610f78565b50505050905090810190601f168015610fbd5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60006109fe3384846110d2565b6001600160a01b03831661102857604051600160e51b62461bcd02815260040180806020018281038252602481526020018061146a6024913960400191505060405180910390fd5b6001600160a01b03821661107057604051600160e51b62461bcd0281526004018080602001828103825260228152602001806112be6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b03831661111a57604051600160e51b62461bcd0281526004018080602001828103825260258152602001806114456025913960400191505060405180910390fd5b6001600160a01b03821661116257604051600160e51b62461bcd0281526004018080602001828103825260238152602001806112796023913960400191505060405180910390fd5b6111a581604051806060016040528060268152602001611330602691396001600160a01b038616600090815260026020526040902054919063ffffffff610f3916565b6001600160a01b0380851660009081526002602052604080822093909355908416815220546111da908263ffffffff610ddd16565b6001600160a01b0380841660008181526002602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600061058e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f3956fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737341646472657373436861696e3a20746865206e6f646520697320616c6561647920756e6c696e6b656441646472657373436861696e3a20746865206e6f646520697320616c65616479206c696e6b656445524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e63654f776e6572736869703a206f6e6c7920746865206f776e65722063616e2063616c6c41646472657373436861696e3a2074727920746f206c696e6b20746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654f776e6572736869703a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a206275726e2066726f6d20746865207a65726f206164647265737341646472657373436861696e3a2074727920746f20756e6c696e6b20746f20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573734552433230536166653a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa165627a7a72305820e89b01004bc315350f003204c48aec71d2bfef0998c836fd1c9f78a343296ab0002941646472657373436861696e3a20746865206e6f646520697320616c65616479206c696e6b656441646472657373436861696e3a2074727920746f206c696e6b20746f20746865207a65726f2061646472657373000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000001027e72f1f128130880000000000000000000000000000000000000000000000000000000000000000000006644b6172676f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003444b410000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061014d5760003560e01c80638da5cb5b116100c3578063a9059cbb1161007c578063a9059cbb1461037f578063c68c8feb146103ab578063dd62ed3e146103d1578063f2fde38b146103ff578063f32ca66014610425578063fb1afbd71461044b5761014d565b80638da5cb5b1461032b5780638f32d59b146103335780638f7dcfa31461033b578063946edbed1461034357806395d89b411461034b578063a457c2d7146103535761014d565b806318160ddd1161011557806318160ddd1461027457806323b872dd1461027c578063313ce567146102b257806339509351146102ba57806342966c68146102e657806370a08231146103055761014d565b806301ffc9a71461015257806306661abd1461018d57806306fdde03146101a7578063095ea7b31461022457806313d8c84014610250575b600080fd5b6101796004803603602081101561016857600080fd5b50356001600160e01b031916610471565b604080519115158252519081900360200190f35b610195610494565b60408051918252519081900360200190f35b6101af61049a565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101e95781810151838201526020016101d1565b50505050905090810190601f1680156102165780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101796004803603604081101561023a57600080fd5b506001600160a01b038135169060200135610530565b610258610595565b604080516001600160a01b039092168252519081900360200190f35b6101956105a4565b6101796004803603606081101561029257600080fd5b506001600160a01b038135811691602081013590911690604001356105aa565b610195610617565b610179600480360360408110156102d057600080fd5b506001600160a01b03813516906020013561061c565b610303600480360360208110156102fc57600080fd5b5035610645565b005b6101956004803603602081101561031b57600080fd5b50356001600160a01b0316610652565b61025861066d565b61017961067c565b61025861068d565b6101af61069c565b6101af6106fd565b6101796004803603604081101561036957600080fd5b506001600160a01b03813516906020013561075e565b6101796004803603604081101561039557600080fd5b506001600160a01b038135169060200135610795565b610258600480360360208110156103c157600080fd5b50356001600160a01b03166107f9565b610195600480360360408110156103e757600080fd5b506001600160a01b038135811691602001351661081a565b6103036004803603602081101561041557600080fd5b50356001600160a01b0316610845565b6102586004803603602081101561043b57600080fd5b50356001600160a01b0316610933565b6101796004803603602081101561046157600080fd5b50356001600160a01b0316610951565b6001600160e01b0319811660009081526008602052604090205460ff165b919050565b60045490565b600a8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105265780601f106104fb57610100808354040283529160200191610526565b820191906000526020600020905b81548152906001019060200180831161050957829003601f168201915b5050505050905090565b60008115806105465750610544338461081a565b155b61058457604051600160e51b62461bcd02815260040180806020018281038252603681526020018061148e6036913960400191505060405180910390fd5b61058e83836109f1565b9392505050565b6006546001600160a01b031690565b60015490565b6000806105b8858585610a07565b90506105c385610951565b80156105d557506105d385610652565b155b156105e3576105e385610a76565b6105ec84610951565b158015610601575060006105ff85610652565b115b1561060f5761060f84610c77565b949350505050565b601290565b6000806106398361062d338761081a565b9063ffffffff610ddd16565b905061060f84826109f1565b61064f3382610e3a565b50565b6001600160a01b031660009081526002602052604090205490565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b6005546001600160a01b031690565b60098054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105265780601f106104fb57610100808354040283529160200191610526565b600b8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105265780601f106104fb57610100808354040283529160200191610526565b600080610639836040518060600160405280602581526020016114c460259139610788338861081a565b919063ffffffff610f3916565b6000806107a28484610fd3565b90506107ad33610951565b80156107bf57506107bd33610652565b155b156107cd576107cd33610a76565b6107d684610951565b1580156107eb575060006107e985610652565b115b1561058e5761058e84610c77565b6001600160a01b039081166000908152600760205260409020600101541690565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b61084d61067c565b151560011461089057604051600160e51b62461bcd0281526004018080602001828103825260228152602001806113566022913960400191505060405180910390fd5b6001600160a01b0381166108d857604051600160e51b62461bcd0281526004018080602001828103825260288152602001806113cd6028913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b039081166000908152600760205260409020541690565b600454600090600114801561097357506005546001600160a01b038381169116145b801561098c57506006546001600160a01b038381169116145b156109995750600161048f565b6001600160a01b03828116600090815260076020526040902054161580156109dc57506001600160a01b0382811660009081526007602052604090206001015416155b6109e75760016109ea565b60005b905061048f565b60006109fe338484610fe0565b50600192915050565b6000610a148484846110d2565b610a6c8433610a67856040518060600160405280602881526020016113a5602891396001600160a01b038a166000908152600360209081526040808320338452909152902054919063ffffffff610f3916565b610fe0565b5060019392505050565b6001600160a01b038116610abe57604051600160e51b62461bcd02815260040180806020018281038252602f815260200180611416602f913960400191505060405180910390fd5b610ac781610951565b610b0557604051600160e51b62461bcd0281526004018080602001828103825260298152602001806112e06029913960400191505060405180910390fd5b6001600160a01b0380821660008181526007602052604090208054600190910154600554918416939081169291161415610b5557600580546001600160a01b0319166001600160a01b0383161790555b6006546001600160a01b0384811691161415610b8757600680546001600160a01b0319166001600160a01b0384161790555b6001600160a01b03821615610bd7576001600160a01b0380831660009081526007602052604080822060010180548486166001600160a01b03199182161790915592861682529020805490911690555b6001600160a01b03811615610c27576001600160a01b0380821660009081526007602052604080822080548487166001600160a01b03199182161790915592861682529020600101805490911690555b600454610c3b90600163ffffffff61123616565b6004556040516001600160a01b038416907fafa37ecd3c0a33e32c703b30b29966f99a9b771578068da492e6297a4acb84ee90600090a2505050565b6001600160a01b038116610cbf57604051600160e51b62461bcd02815260040180806020018281038252602d815260200180611378602d913960400191505060405180910390fd5b610cc881610951565b15610d0757604051600160e51b62461bcd0281526004018080602001828103825260278152602001806113096027913960400191505060405180910390fd5b600454610d3e57600680546001600160a01b0383166001600160a01b03199182168117909255600580549091169091179055610d8f565b600680546001600160a01b0383811660008181526007602052604080822080549585166001600160a01b03199687161790558554909316815291909120600101805483168217905582549091161790555b600454610da390600163ffffffff610ddd16565b6004556040516001600160a01b038216907ffb98a8b56eed2c666f89f2f34b3436cff006ee4c5222c1c0b13fb0ea9ee4265590600090a250565b60008282018381101561058e5760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b038216610e8257604051600160e51b62461bcd0281526004018080602001828103825260218152602001806113f56021913960400191505060405180910390fd5b610ec58160405180606001604052806022815260200161129c602291396001600160a01b038516600090815260026020526040902054919063ffffffff610f3916565b6001600160a01b038316600090815260026020526040902055600154610ef1908263ffffffff61123616565b6001556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b60008184841115610fcb57604051600160e51b62461bcd0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f90578181015183820152602001610f78565b50505050905090810190601f168015610fbd5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60006109fe3384846110d2565b6001600160a01b03831661102857604051600160e51b62461bcd02815260040180806020018281038252602481526020018061146a6024913960400191505060405180910390fd5b6001600160a01b03821661107057604051600160e51b62461bcd0281526004018080602001828103825260228152602001806112be6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b03831661111a57604051600160e51b62461bcd0281526004018080602001828103825260258152602001806114456025913960400191505060405180910390fd5b6001600160a01b03821661116257604051600160e51b62461bcd0281526004018080602001828103825260238152602001806112796023913960400191505060405180910390fd5b6111a581604051806060016040528060268152602001611330602691396001600160a01b038616600090815260026020526040902054919063ffffffff610f3916565b6001600160a01b0380851660009081526002602052604080822093909355908416815220546111da908263ffffffff610ddd16565b6001600160a01b0380841660008181526002602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600061058e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f3956fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737341646472657373436861696e3a20746865206e6f646520697320616c6561647920756e6c696e6b656441646472657373436861696e3a20746865206e6f646520697320616c65616479206c696e6b656445524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e63654f776e6572736869703a206f6e6c7920746865206f776e65722063616e2063616c6c41646472657373436861696e3a2074727920746f206c696e6b20746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654f776e6572736869703a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a206275726e2066726f6d20746865207a65726f206164647265737341646472657373436861696e3a2074727920746f20756e6c696e6b20746f20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573734552433230536166653a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa165627a7a72305820e89b01004bc315350f003204c48aec71d2bfef0998c836fd1c9f78a343296ab00029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000001027e72f1f128130880000000000000000000000000000000000000000000000000000000000000000000006644b6172676f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003444b410000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : name (string): dKargo
Arg [1] : symbol (string): DKA
Arg [2] : supply (uint256): 5000000000000000000000000000
-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 00000000000000000000000000000000000000001027e72f1f12813088000000
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [4] : 644b6172676f0000000000000000000000000000000000000000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [6] : 444b410000000000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
21930:2993:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;21930:2993:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12483:111;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12483:111:0;-1:-1:-1;;;;;;12483:111:0;;:::i;:::-;;;;;;;;;;;;;;;;;;7756:84;;;:::i;:::-;;;;;;;;;;;;;;;;24382:82;;;:::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;24382:82:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20180:260;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;20180:260:0;;;;;;;;:::i;8172:82::-;;;:::i;:::-;;;;-1:-1:-1;;;;;8172:82:0;;;;;;;;;;;;;;16044:86;;;:::i;23909:359::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;23909:359:0;;;;;;;;;;;;;;;;;:::i;24843:77::-;;;:::i;20816:216::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;20816:216:0;;;;;;;;:::i;22890:83::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;22890:83:0;;:::i;:::-;;16326:110;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16326:110:0;-1:-1:-1;;;;;16326:110:0;;:::i;1980:79::-;;;:::i;2179:92::-;;;:::i;7965:82::-;;;:::i;444:101::-;;;:::i;24582:86::-;;;:::i;21416:267::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;21416:267:0;;;;;;;;:::i;23247:349::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;23247:349:0;;;;;;;;:::i;8497:106::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8497:106:0;-1:-1:-1;;;;;8497:106:0;;:::i;16733:140::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;16733:140:0;;;;;;;;;;:::i;1631:238::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1631:238:0;-1:-1:-1;;;;;1631:238:0;;:::i;8846:106::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8846:106:0;-1:-1:-1;;;;;8846:106:0;;:::i;9232:316::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9232:316:0;-1:-1:-1;;;;;9232:316:0;;:::i;12483:111::-;-1:-1:-1;;;;;;12572:14:0;;12548:4;12572:14;;;:6;:14;;;;;;;;12483:111;;;;:::o;7756:84::-;7820:6;:12;7756:84;:::o;24382:82::-;24451:5;24444:12;;;;;;;;-1:-1:-1;;24444:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24418:13;;24444:12;;24451:5;;24444:12;;24451:5;24444:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24382:82;:::o;20180:260::-;20246:4;20272:11;;;20271:54;;;20289:30;20299:10;20311:7;20289:9;:30::i;:::-;:35;20271:54;20263:121;;;;-1:-1:-1;;;;;20263:121:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20402:30;20416:7;20425:6;20402:13;:30::i;:::-;20395:37;20180:260;-1:-1:-1;;;20180:260:0:o;8172:82::-;8235:11;;-1:-1:-1;;;;;8235:11:0;8172:82;:::o;16044:86::-;16115:7;;16044:86;:::o;23909:359::-;23988:4;24005:8;24016:35;24035:4;24041:2;24045:5;24016:18;:35::i;:::-;24005:46;;24065:14;24074:4;24065:8;:14::i;:::-;:38;;;;;24083:15;24093:4;24083:9;:15::i;:::-;:20;24065:38;24062:88;;;24120:18;24133:4;24120:12;:18::i;:::-;24164:12;24173:2;24164:8;:12::i;:::-;24163:13;:34;;;;;24196:1;24180:13;24190:2;24180:9;:13::i;:::-;:17;24163:34;24160:80;;;24214:14;24225:2;24214:10;:14::i;:::-;24257:3;23909:359;-1:-1:-1;;;;23909:359:0:o;24843:77::-;24910:2;24843:77;:::o;20816:216::-;20896:4;20913:14;20930:46;20965:10;20930:30;20940:10;20952:7;20930:9;:30::i;:::-;:34;:46;:34;:46;:::i;:::-;20913:63;;20994:30;21008:7;21017:6;20994:13;:30::i;22890:83::-;22940:25;22946:10;22958:6;22940:5;:25::i;:::-;22890:83;:::o;16326:110::-;-1:-1:-1;;;;;16410:18:0;16383:7;16410:18;;;:9;:18;;;;;;;16326:110::o;1980:79::-;2018:7;2045:6;-1:-1:-1;;;;;2045:6:0;1980:79;:::o;2179:92::-;2219:4;2257:6;-1:-1:-1;;;;;2257:6:0;2243:10;:20;;2179:92::o;7965:82::-;8028:11;;-1:-1:-1;;;;;8028:11:0;7965:82;:::o;444:101::-;524:13;517:20;;;;;;;;-1:-1:-1;;517:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;491:13;;517:20;;524:13;;517:20;;524:13;517:20;;;;;;;;;;;;;;;;;;;;;;;;24582:86;24653:7;24646:14;;;;;;;;-1:-1:-1;;24646:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24620:13;;24646:14;;24653:7;;24646:14;;24653:7;24646:14;;;;;;;;;;;;;;;;;;;;;;;;21416:267;21501:4;21518:14;21535:92;21570:15;21535:92;;;;;;;;;;;;;;;;;:30;21545:10;21557:7;21535:9;:30::i;:::-;:34;:92;;:34;:92;:::i;23247:349::-;23308:4;23325:8;23336:25;23351:2;23355:5;23336:14;:25::i;:::-;23325:36;;23375:20;23384:10;23375:8;:20::i;:::-;:50;;;;;23399:21;23409:10;23399:9;:21::i;:::-;:26;23375:50;23372:106;;;23442:24;23455:10;23442:12;:24::i;:::-;23492:12;23501:2;23492:8;:12::i;:::-;23491:13;:34;;;;;23524:1;23508:13;23518:2;23508:9;:13::i;:::-;:17;23491:34;23488:80;;;23542:14;23553:2;23542:10;:14::i;8497:106::-;-1:-1:-1;;;;;8574:16:0;;;8547:7;8574:16;;;:10;:16;;;;;:21;;;;;8497:106::o;16733:140::-;-1:-1:-1;;;;;16835:21:0;;;16808:7;16835:21;;;:11;:21;;;;;;;;:30;;;;;;;;;;;;;16733:140::o;1631:238::-;1234:9;:7;:9::i;:::-;:17;;1247:4;1234:17;1226:64;;;;-1:-1:-1;;;;;1226:64:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1712:22:0;;1704:75;;;;-1:-1:-1;;;;;1704:75:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1816:6;;;1795:38;;-1:-1:-1;;;;;1795:38:0;;;;1816:6;;;1795:38;;;1844:6;:17;;-1:-1:-1;;;;;;1844:17:0;-1:-1:-1;;;;;1844:17:0;;;;;;;;;;1631:238::o;8846:106::-;-1:-1:-1;;;;;8923:16:0;;;8896:7;8923:16;;;:10;:16;;;;;:21;;;8846:106::o;9232:316::-;9305:6;:12;9285:4;;9321:1;9305:17;:40;;;;-1:-1:-1;9326:11:0;;-1:-1:-1;;;;;9326:19:0;;;:11;;:19;9305:40;:63;;;;-1:-1:-1;9349:11:0;;-1:-1:-1;;;;;9349:19:0;;;:11;;:19;9305:63;9302:239;;;-1:-1:-1;9392:4:0;9385:11;;9302:239;-1:-1:-1;;;;;9437:16:0;;;9470:1;9437:16;;;:10;:16;;;;;:21;;:35;:74;;;;-1:-1:-1;;;;;;9476:16:0;;;9509:1;9476:16;;;:10;:16;;;;;:21;;;;:35;9437:74;9436:93;;9524:4;9436:93;;;9515:5;9436:93;9429:100;;;;14805:150;14871:4;14888:37;14897:10;14909:7;14918:6;14888:8;:37::i;:::-;-1:-1:-1;14943:4:0;14805:150;;;;:::o;15623:300::-;15712:4;15729:36;15739:6;15747:9;15758:6;15729:9;:36::i;:::-;15776:117;15785:6;15793:10;15805:87;15841:6;15805:87;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15805:19:0;;;;;;:11;:19;;;;;;;;15825:10;15805:31;;;;;;;;;:87;;:35;:87;:::i;:::-;15776:8;:117::i;:::-;-1:-1:-1;15911:4:0;15623:300;;;;;:::o;10430:878::-;-1:-1:-1;;;;;10494:18:0;;10486:78;;;;-1:-1:-1;;;;;10486:78:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10583:14;10592:4;10583:8;:14::i;:::-;10575:68;;;;-1:-1:-1;;;;;10575:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10673:16:0;;;10654;10673;;;:10;:16;;;;;:21;;;10724;;;;10760:11;;10673:21;;;;10724;;;;10760:11;;:19;10756:74;;;10796:11;:22;;-1:-1:-1;;;;;;10796:22:0;-1:-1:-1;;;;;10796:22:0;;;;;10756:74;10844:11;;-1:-1:-1;;;;;10844:19:0;;;:11;;:19;10840:74;;;10880:11;:22;;-1:-1:-1;;;;;;10880:22:0;-1:-1:-1;;;;;10880:22:0;;;;;10840:74;-1:-1:-1;;;;;10928:22:0;;;10924:140;;-1:-1:-1;;;;;10967:20:0;;;;;;;:10;:20;;;;;;:25;;:36;;;;;-1:-1:-1;;;;;;10967:36:0;;;;;;;11018:16;;;;;;;:34;;;;;;;10924:140;-1:-1:-1;;;;;11078:22:0;;;11074:140;;-1:-1:-1;;;;;11117:20:0;;;;;;;:10;:20;;;;;;:36;;;;;-1:-1:-1;;;;;;11117:36:0;;;;;;;11168:16;;;;;;;11117:36;11168:21;:34;;;;;;;11074:140;11239:6;:12;:19;;11256:1;11239:19;:16;:19;:::i;:::-;11224:6;:34;11274:26;;-1:-1:-1;;;;;11274:26:0;;;;;11224:12;;11274:26;10430:878;;;:::o;9717:543::-;-1:-1:-1;;;;;9779:18:0;;9771:76;;;;-1:-1:-1;;;;;9771:76:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9867:14;9876:4;9867:8;:14::i;:::-;9866:15;9858:67;;;;-1:-1:-1;;;;;9858:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9939:6;:12;9936:232;;9987:11;:18;;-1:-1:-1;;;;;9987:18:0;;-1:-1:-1;;;;;;9987:18:0;;;;;;;;9973:11;:32;;;;;;;;;;9936:232;;;10062:11;;;-1:-1:-1;;;;;10038:16:0;;;10062:11;10038:16;;;:10;:16;;;;;;:35;;10062:11;;;-1:-1:-1;;;;;;10038:35:0;;;;;;10099:11;;;;;10088:23;;;;;;-1:-1:-1;10088:28:0;:35;;;;;;;;10138:18;;;;;;;;9936:232;10193:6;:12;:19;;10210:1;10193:19;:16;:19;:::i;:::-;10178:6;:34;10228:24;;-1:-1:-1;;;;;10228:24:0;;;;;10178:12;;10228:24;9717:543;:::o;3190:181::-;3248:7;3280:5;;;3304:6;;;;3296:46;;;;;-1:-1:-1;;;;;3296:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;19224:332;-1:-1:-1;;;;;19299:21:0;;19291:67;;;;-1:-1:-1;;;;;19291:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19390;19413:5;19390:67;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;19390:18:0;;;;;;:9;:18;;;;;;;:67;;:22;:67;:::i;:::-;-1:-1:-1;;;;;19369:18:0;;;;;;:9;:18;;;;;:88;19478:7;;:18;;19490:5;19478:18;:11;:18;:::i;:::-;19468:7;:28;19512:36;;;;;;;;19538:1;;-1:-1:-1;;;;;19512:36:0;;;;;;;;;;;;19224:332;;:::o;4232:192::-;4318:7;4354:12;4346:6;;;;4338:29;;;;-1:-1:-1;;;;;4338:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;4338:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;4390:5:0;;;4232:192::o;15182:156::-;15251:4;15268:40;15278:10;15290:9;15301:6;15268:9;:40::i;17130:345::-;-1:-1:-1;;;;;17226:22:0;;17218:71;;;;-1:-1:-1;;;;;17218:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17308:21:0;;17300:68;;;;-1:-1:-1;;;;;17300:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17379:21:0;;;;;;;:11;:21;;;;;;;;:30;;;;;;;;;;;;;:38;;;17433:34;;;;;;;;;;;;;;;;;17130:345;;;:::o;17721:469::-;-1:-1:-1;;;;;17819:20:0;;17811:70;;;;-1:-1:-1;;;;;17811:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17900:23:0;;17892:71;;;;-1:-1:-1;;;;;17892:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17994;18016:6;17994:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17994:17:0;;;;;;:9;:17;;;;;;;:71;;:21;:71;:::i;:::-;-1:-1:-1;;;;;17974:17:0;;;;;;;:9;:17;;;;;;:91;;;;18099:20;;;;;;;:32;;18124:6;18099:32;:24;:32;:::i;:::-;-1:-1:-1;;;;;18076:20:0;;;;;;;:9;:20;;;;;;;;;:55;;;;18147:35;;;;;;;18076:20;;18147:35;;;;;;;;;;;;;17721:469;;;:::o;3646:136::-;3704:7;3731:43;3735:1;3738;3731:43;;;;;;;;;;;;;;;;;:3;:43::i
Swarm Source
bzzr://e89b01004bc315350f003204c48aec71d2bfef0998c836fd1c9f78a343296ab0
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.