ETH Price: $2,435.49 (-2.14%)
Gas: 9.15 Gwei

Token

Devcon 5 On-Chain Ticket (DCV)
 

Overview

Max Total Supply

91 DCV

Holders

76

Market

Volume (24H)

N/A

Min Price (24H)

N/A

Max Price (24H)

N/A

Other Info

Filtered by Token Holder
trueinsider.eth
Balance
1 DCV
0x4b915f324160ea3440d3c4d11015711c172e91e2
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Ticket

Compiler Version
v0.5.11+commit.c082d0b4

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-09-11
*/

pragma solidity ^0.5.0;

contract IERC721 {
  event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);
  event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);
  event ApprovalForAll(address indexed owner, address indexed operator, bool approved);

  function balanceOf(address owner) public view returns (uint256 balance);
  function ownerOf(uint256 tokenId) public view returns (address owner);

  function transferFrom(address from, address to, uint256 tokenId) public returns (bool);
  function safeTransferFrom(address from, address to, uint256 tokenId) public returns (bool);
  function safeTransferFrom(address from, address to, uint256 tokenId, bytes memory data) public returns (bool);

  function approve(address to, uint256 tokenId) public;
  function getApproved(uint256 tokenId) public view returns (address operator);
  function setApprovalForAll(address operator, bool _approved) public;
  function isApprovedForAll(address owner, address operator) public view returns (bool);
}

contract IERC721Receiver {
  function onERC721Received(address operator, address from, uint256 tokenId, bytes memory data) public returns (bytes4);
}

/**
 * @dev Interface of the ERC165 standard, as defined in the
 * https://eips.ethereum.org/EIPS/eip-165[EIP].
 * Source: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/introspection/IERC165.sol
 */
interface IERC165 {
  /**
   * @dev Returns true if this contract implements the interface defined by
   * `interfaceId`. See the corresponding
   * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]
   * to learn more about how these ids are created.
   *
   * This function call must use less than 30 000 gas.
   */
  function supportsInterface(bytes4 interfaceId) external view returns (bool);
}

/**
 * @dev Implementation of the {IERC165} interface.
 *
 * Contracts may inherit from this and call {_registerInterface} to declare
 * their support of an interface.
 * Source: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/introspection/ERC165.sol
 */
contract ERC165 is IERC165 {
  /*
   * bytes4(keccak256('supportsInterface(bytes4)')) == 0x01ffc9a7
   */
  bytes4 private constant _INTERFACE_ID_ERC165 = 0x01ffc9a7;

  /**
   * @dev Mapping of interface ids to whether or not it's supported.
   */
  mapping(bytes4 => bool) private _supportedInterfaces;

  constructor () internal {
    // Derived contracts need only register support for their own interfaces,
    // we register support for ERC165 itself here
    registerInterface(_INTERFACE_ID_ERC165);
  }

  /**
   * @dev See {IERC165-supportsInterface}.
   *
   * Time complexity O(1), guaranteed to always use less than 30 000 gas.
   */
  function supportsInterface(bytes4 interfaceId) external view returns (bool) {
    return _supportedInterfaces[interfaceId];
  }

  /**
   * @dev Registers the contract as an implementer of the interface defined by
   * `interfaceId`. Support of the actual ERC165 interface is automatic and
   * registering its interface id is not required.
   *
   * See {IERC165-supportsInterface}.
   *
   * Requirements:
   *
   * - `interfaceId` cannot be the ERC165 invalid interface (`0xffffffff`).
   */
  function registerInterface(bytes4 interfaceId) internal {
    require(interfaceId != 0xffffffff, "ERC165: invalid interface id");
    _supportedInterfaces[interfaceId] = true;
  }
}

library SafeMath {
  function mul(uint256 _a, uint256 _b) internal pure returns (uint256) {
    if (_a == 0) {
      return 0;
    }

    uint256 c = _a * _b;
    require(c / _a == _b, "Invalid argument.");

    return c;
  }

  function div(uint256 _a, uint256 _b) internal pure returns (uint256) {
    require(_b > 0, "Invalid argument.");
    uint256 c = _a / _b;

    return c;
  }

  function sub(uint256 _a, uint256 _b) internal pure returns (uint256) {
    require(_b <= _a, "Invalid argument.");
    uint256 c = _a - _b;

    return c;
  }

  function add(uint256 _a, uint256 _b) internal pure returns (uint256) {
    uint256 c = _a + _b;
    require(c >= _a, "Invalid argument.");

    return c;
  }

  function mod(uint256 a, uint256 b) internal pure returns (uint256) {
    require(b != 0, "Invalid argument.");
    return a % b;
  }
}

contract Ownable {
  address payable private _owner;

  event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

  modifier onlyOwner() {
    require(msg.sender == _owner, "Forbidden");
    _;
  }

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

  function owner() public view returns (address payable) {
    return _owner;
  }

  function transferOwnership(address payable newOwner) public onlyOwner {
    require(newOwner != address(0), "Non-zero address required.");
    emit OwnershipTransferred(_owner, newOwner);
    _owner = newOwner;
  }
}

contract Ticket is ERC165, IERC721, Ownable {
  using SafeMath for uint256;

  mapping(uint256 => bool) private _redemptions;
  mapping(address => bool) private _operators;
  mapping(uint256 => address) private _tokenOwner;
  mapping(uint256 => address) private _tokenApprovals;
  mapping(address => uint256) private _ownedTokensCount;
  mapping(address => uint256[]) private _ownedTokens;
  mapping(uint256 => uint256) private _ownedTokensIndex;
  mapping(address => mapping(address => bool)) private _operatorApprovals;
  uint256[] private _allTokens;
  mapping(uint256 => uint256) private _allTokensIndex;
  bool private _paused;
  string private _name;
  string private _symbol;
  mapping(uint256 => string) private _tokenURIs;

  event TokenRedeemed(uint256 tokenID);

  modifier whenNotPaused() {
    require(!_paused, "contract is paused");
    _;
  }

  modifier onlyOperator() {
    require(_operators[msg.sender] == true, "Forbidden");
    _;
  }

  constructor(string memory name, string memory symbol) public {
    _name = name;
    _symbol = symbol;

    registerInterface(0x80ac58cd);
    registerInterface(0x5b5e139f);
    registerInterface(0x780e9d63);

    _operators[msg.sender] = true;
    _paused = true;
  }

  function name() public view returns (string memory) {
    return _name;
  }

  function symbol() public view returns (string memory) {
    return _symbol;
  }

  function tokenURI(uint256 tokenId) public view returns (string memory) {
    require(exists(tokenId), "URI query for nonexistent token");
    return _tokenURIs[tokenId];
  }

  function balanceOf(address owner) public view returns (uint256) {
    return _ownedTokensCount[owner];
  }

  function ownerOf(uint256 tokenId) public view returns (address) {
    address owner = _tokenOwner[tokenId];
    return owner;
  }

  function paused() public view returns (bool) {
    return _paused;
  }

  function totalSupply() public view returns (uint256) {
    return _allTokens.length;
  }

  function tokenOfOwnerByIndex(address owner, uint256 index) public view returns (uint256 tokenId) {
    require(index < balanceOf(owner), "owner index out of bounds");
    return _ownedTokens[owner][index];
  }

  function tokenByIndex(uint256 index) public view returns (uint256) {
    require(index < totalSupply(), "global index out of bounds");
    return _allTokens[index];
  }

  function transferFrom(address from, address to, uint256 tokenId) public whenNotPaused returns (bool) {
    require(ownerOf(tokenId) == from, "transfer of token that is not own");
    require(to != address(0), "transfer to the zero address");
    require(isApprovedOrOwner(msg.sender, tokenId), "transfer caller is not owner nor approved");

    clearApproval(tokenId);

    _ownedTokensCount[from] = _ownedTokensCount[from].sub(1);
    _ownedTokensCount[to] = _ownedTokensCount[to].add(1);

    _tokenOwner[tokenId] = to;

    removeTokenFromOwnerEnumeration(from, tokenId);
    addTokenToOwnerEnumeration(to, tokenId);

    emit Transfer(from, to, tokenId);
    return true;
  }

  function safeTransferFrom(address from, address to, uint256 tokenId) public returns (bool) {
    return safeTransferFrom(from, to, tokenId, "");
  }

  function safeTransferFrom(address from, address to, uint256 tokenId, bytes memory data) public returns (bool) {
    require(checkOnERC721Received(from, to, tokenId, data), "transfer to non ERC721Receiver implementer");
    return transferFrom(from, to, tokenId);
  }

  function approve(address to, uint256 tokenId) public whenNotPaused {
    address owner = ownerOf(tokenId);
    require(to != owner, "approval to current owner");
    require(msg.sender == owner || isApprovedForAll(owner, msg.sender), "approve caller is not owner nor approved for all");
    _tokenApprovals[tokenId] = to;
    emit Approval(owner, to, tokenId);
  }

  function getApproved(uint256 tokenId) public view returns (address) {
    require(exists(tokenId), "approved query for nonexistent token");
    return _tokenApprovals[tokenId];
  }

  function setApprovalForAll(address to, bool approved) public whenNotPaused {
    require(to != msg.sender, "approve to caller");
    _operatorApprovals[msg.sender][to] = approved;
    emit ApprovalForAll(msg.sender, to, approved);
  }

  function isApprovedForAll(address owner, address operator) public view returns (bool) {
    return _operatorApprovals[owner][operator];
  }

  function exists(uint256 tokenId) public view returns (bool) {
    address owner = _tokenOwner[tokenId];
    return owner != address(0);
  }

  function mint(address to, uint256 tokenId) public onlyOwner returns (bool) {
    require(to != address(0), "mint to the zero address");
    require(!exists(tokenId), "token already minted");

    _tokenOwner[tokenId] = to;
    _ownedTokensCount[to] = _ownedTokensCount[to].add(1);

    addTokenToOwnerEnumeration(to, tokenId);
    addTokenToAllTokensEnumeration(tokenId);

    emit Transfer(address(0), to, tokenId);
    return true;
  }

  function mintWithTokenURI(address to, uint256 tokenId, string memory uri) public onlyOwner returns (bool) {
    mint(to, tokenId);
    _tokenURIs[tokenId] = uri;
    return true;
  }

  function burn(uint256 tokenId) public whenNotPaused returns (bool) {
    require(isApprovedOrOwner(msg.sender, tokenId), "caller is not owner nor approved");

    clearApproval(tokenId);

    _ownedTokensCount[msg.sender] = _ownedTokensCount[msg.sender].sub(1);
    _tokenOwner[tokenId] = address(0);

    if (bytes(_tokenURIs[tokenId]).length != 0) {
      delete _tokenURIs[tokenId];
    }

    removeTokenFromOwnerEnumeration(msg.sender, tokenId);
    _ownedTokensIndex[tokenId] = 0;
    removeTokenFromAllTokensEnumeration(tokenId);

    emit Transfer(msg.sender, address(0), tokenId);

    return true;
  }

  function pause() public onlyOwner {
    _paused = true;
  }

  function unpause() public onlyOwner {
    _paused = false;
  }

  function addOperator(address operator) public onlyOwner {
    _operators[operator] = true;
  }

  function isOperator(address user) public view returns (bool) {
    return _operators[user];
  }

  function removeOperator(address operator) public onlyOwner {
    delete _operators[operator];
  }

  function isRedeemed(uint256 tokenID) public view returns (bool) {
    return _redemptions[tokenID];
  }

  function getSignerAndOwner(uint256 tokenID, bytes memory signature) public view returns (address, address) {
    bytes32 hash = keccak256(abi.encodePacked(_tokenURIs[tokenID]));

    bytes memory prefix = "\x19Ethereum Signed Message:\n32";
    hash = keccak256(abi.encodePacked(prefix, hash));

    address signer = recover(hash,signature);
    address tokenOwner = ownerOf(tokenID);

    return (signer, tokenOwner);
  }

  function markTokenAsRedeemed(uint256 tokenID, bytes memory signature) public onlyOperator {
    require(!_redemptions[tokenID], "Token already redeemed");

    (address signer, address tokenOwner) = getSignerAndOwner(tokenID, signature);

    require(signer == tokenOwner, "Not signed by token owner");

    _redemptions[tokenID] = true;
    emit TokenRedeemed(tokenID);
  }

  function isApprovedOrOwner(address spender, uint256 tokenId) private view returns (bool) {
    require(exists(tokenId), "operator query for nonexistent token");
    address owner = ownerOf(tokenId);
    return (spender == owner || getApproved(tokenId) == spender || isApprovedForAll(owner, spender));
  }

  function checkOnERC721Received(address from, address to, uint256 tokenId, bytes memory _data) private returns (bool) {
    if (!isContract(to)) {
      return true;
    }

    bytes4 retval = IERC721Receiver(to).onERC721Received(msg.sender, from, tokenId, _data);
    return (retval == 0x150b7a02);
  }

  function clearApproval(uint256 tokenId) private {
    if (_tokenApprovals[tokenId] != address(0)) {
      _tokenApprovals[tokenId] = address(0);
    }
  }

  function isContract(address account) private view returns (bool) {
    uint256 size = 0;
    // solium-disable-next-line security/no-inline-assembly
    assembly { size := extcodesize(account) }
    return size > 0;
  }

  function addTokenToOwnerEnumeration(address to, uint256 tokenId) private {
    _ownedTokensIndex[tokenId] = _ownedTokens[to].length;
    _ownedTokens[to].push(tokenId);
  }

  function addTokenToAllTokensEnumeration(uint256 tokenId) private {
    _allTokensIndex[tokenId] = _allTokens.length;
    _allTokens.push(tokenId);
  }

  function removeTokenFromOwnerEnumeration(address from, uint256 tokenId) private {
    uint256 lastTokenIndex = _ownedTokens[from].length.sub(1);
    uint256 tokenIndex = _ownedTokensIndex[tokenId];

    if (tokenIndex != lastTokenIndex) {
        uint256 lastTokenId = _ownedTokens[from][lastTokenIndex];

        _ownedTokens[from][tokenIndex] = lastTokenId;
        _ownedTokensIndex[lastTokenId] = tokenIndex;
    }

    _ownedTokens[from].pop();
  }

  function removeTokenFromAllTokensEnumeration(uint256 tokenId) private {
    uint256 lastTokenIndex = _allTokens.length.sub(1);
    uint256 tokenIndex = _allTokensIndex[tokenId];

    uint256 lastTokenId = _allTokens[lastTokenIndex];

    _allTokens[tokenIndex] = lastTokenId;
    _allTokensIndex[lastTokenId] = tokenIndex;

    _allTokens.pop();
    _allTokensIndex[tokenId] = 0;
  }

  function recover(bytes32 hash, bytes memory signature) public pure returns (address) {
    bytes32 r;
    bytes32 s;
    uint8 v;

    //Check the signature length
    if (signature.length != 65) {
      return (address(0));
    }

    // Divide the signature in r, s and v variables
    assembly {
      r := mload(add(signature, 32))
      s := mload(add(signature, 64))
      v := byte(0, mload(add(signature, 96)))
    }

    // Version of signature should be 27 or 28, but 0 and 1 are also possible versions
    if (v < 27) {
      v += 27;
    }

    // If the version is correct return the signer address
    if (v != 27 && v != 28) {
      return (address(0));
    } else {
      return ecrecover(hash, v, r, s);
    }
  }

  function destroy() public onlyOwner {
    selfdestruct(owner());
  }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"approve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"hash","type":"bytes32"},{"internalType":"bytes","name":"signature","type":"bytes"}],"name":"recover","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"tokenOfOwnerByIndex","outputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"tokenID","type":"uint256"}],"name":"isRedeemed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"safeTransferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"tokenID","type":"uint256"},{"internalType":"bytes","name":"signature","type":"bytes"}],"name":"getSignerAndOwner","outputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"exists","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"tokenByIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"string","name":"uri","type":"string"}],"name":"mintWithTokenURI","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"isOperator","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"tokenID","type":"uint256"},{"internalType":"bytes","name":"signature","type":"bytes"}],"name":"markTokenAsRedeemed","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"destroy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address payable","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"addOperator","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"removeOperator","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"safeTransferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address payable","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokenID","type":"uint256"}],"name":"TokenRedeemed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"approved","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"}]

60806040523480156200001157600080fd5b50604051620028da380380620028da833981810160405260408110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82516401000000008111828201881017156200008957600080fd5b82525081516020918201929091019080838360005b83811015620000b85781810151838201526020016200009e565b50505050905090810190601f168015620000e65780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200010a57600080fd5b9083019060208201858111156200012057600080fd5b82516401000000008111828201881017156200013b57600080fd5b82525081516020918201929091019080838360005b838110156200016a57818101518382015260200162000150565b50505050905090810190601f168015620001985780820380516001836020036101000a031916815260200191505b5060405250620001d591507f01ffc9a70000000000000000000000000000000000000000000000000000000090506001600160e01b03620002e116565b600180546001600160a01b031916331790558151620001fc90600d906020850190620003b0565b5080516200021290600e906020840190620003b0565b50620002477f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b03620002e116565b6200027b7f5b5e139f000000000000000000000000000000000000000000000000000000006001600160e01b03620002e116565b620002af7f780e9d63000000000000000000000000000000000000000000000000000000006001600160e01b03620002e116565b50503360009081526003602052604090208054600160ff199182168117909255600c8054909116909117905562000455565b7fffffffff0000000000000000000000000000000000000000000000000000000080821614156200037357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620003f357805160ff191683800117855562000423565b8280016001018555821562000423579182015b828111156200042357825182559160200191906001019062000406565b506200043192915062000435565b5090565b6200045291905b808211156200043157600081556001016200043c565b90565b61247580620004656000396000f3fe608060405234801561001057600080fd5b50600436106101fb5760003560e01c806350bb4e7f1161011a5780638da5cb5b116100ad578063ac8a584a1161007c578063ac8a584a1461083e578063b88d4fde14610864578063c87b56dd14610928578063e985e9c514610945578063f2fde38b14610973576101fb565b80638da5cb5b146107da57806395d89b41146107e25780639870d7fe146107ea578063a22cb46514610810576101fb565b806370a08231116100e957806370a08231146106f95780637bc4c2401461071f57806383197ef0146107ca5780638456cb59146107d2576101fb565b806350bb4e7f146105f55780635c975abb146106ae5780636352211e146106b65780636d70f7ae146106d3576101fb565b806332d33cd01161019257806342966c681161016157806342966c68146104cd5780634ad00a18146104ea5780634f558e79146105bb5780634f6ccce7146105d8576101fb565b806332d33cd0146104465780633f4ba83a1461046357806340c10f191461046b57806342842e0e14610497576101fb565b806318160ddd116101ce57806318160ddd1461031f57806319045a251461033957806323b872dd146103e45780632f745c591461041a576101fb565b806301ffc9a71461020057806306fdde031461023b578063081812fc146102b8578063095ea7b3146102f1575b600080fd5b6102276004803603602081101561021657600080fd5b50356001600160e01b031916610999565b604080519115158252519081900360200190f35b6102436109b8565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561027d578181015183820152602001610265565b50505050905090810190601f1680156102aa5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102d5600480360360208110156102ce57600080fd5b5035610a4f565b604080516001600160a01b039092168252519081900360200190f35b61031d6004803603604081101561030757600080fd5b506001600160a01b038135169060200135610ab1565b005b610327610c25565b60408051918252519081900360200190f35b6102d56004803603604081101561034f57600080fd5b81359190810190604081016020820135600160201b81111561037057600080fd5b82018360208201111561038257600080fd5b803590602001918460018302840111600160201b831117156103a357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610c2b945050505050565b610227600480360360608110156103fa57600080fd5b506001600160a01b03813581169160208101359091169060400135610cfe565b6103276004803603604081101561043057600080fd5b506001600160a01b038135169060200135610f49565b6102276004803603602081101561045c57600080fd5b5035610fde565b61031d610ff3565b6102276004803603604081101561048157600080fd5b506001600160a01b03813516906020013561104a565b610227600480360360608110156104ad57600080fd5b506001600160a01b038135811691602081013590911690604001356111f4565b610227600480360360208110156104e357600080fd5b5035611219565b6105956004803603604081101561050057600080fd5b81359190810190604081016020820135600160201b81111561052157600080fd5b82018360208201111561053357600080fd5b803590602001918460018302840111600160201b8311171561055457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506113aa945050505050565b604080516001600160a01b03938416815291909216602082015281519081900390910190f35b610227600480360360208110156105d157600080fd5b5035611504565b610327600480360360208110156105ee57600080fd5b5035611521565b6102276004803603606081101561060b57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561063a57600080fd5b82018360208201111561064c57600080fd5b803590602001918460018302840111600160201b8311171561066d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061159d945050505050565b610227611620565b6102d5600480360360208110156106cc57600080fd5b5035611629565b610227600480360360208110156106e957600080fd5b50356001600160a01b0316611644565b6103276004803603602081101561070f57600080fd5b50356001600160a01b0316611662565b61031d6004803603604081101561073557600080fd5b81359190810190604081016020820135600160201b81111561075657600080fd5b82018360208201111561076857600080fd5b803590602001918460018302840111600160201b8311171561078957600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061167d945050505050565b61031d6117fa565b61031d611858565b6102d56118b2565b6102436118c1565b61031d6004803603602081101561080057600080fd5b50356001600160a01b0316611922565b61031d6004803603604081101561082657600080fd5b506001600160a01b0381351690602001351515611991565b61031d6004803603602081101561085457600080fd5b50356001600160a01b0316611a9e565b6102276004803603608081101561087a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611b0a945050505050565b6102436004803603602081101561093e57600080fd5b5035611b67565b6102276004803603604081101561095b57600080fd5b506001600160a01b0381358116916020013516611c62565b61031d6004803603602081101561098957600080fd5b50356001600160a01b0316611c90565b6001600160e01b03191660009081526020819052604090205460ff1690565b600d8054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610a445780601f10610a1957610100808354040283529160200191610a44565b820191906000526020600020905b815481529060010190602001808311610a2757829003601f168201915b505050505090505b90565b6000610a5a82611504565b610a955760405162461bcd60e51b81526004018080602001828103825260248152602001806123856024913960400191505060405180910390fd5b506000908152600560205260409020546001600160a01b031690565b600c5460ff1615610afe576040805162461bcd60e51b815260206004820152601260248201527118dbdb9d1c9858dd081a5cc81c185d5cd95960721b604482015290519081900360640190fd5b6000610b0982611629565b9050806001600160a01b0316836001600160a01b03161415610b72576040805162461bcd60e51b815260206004820152601960248201527f617070726f76616c20746f2063757272656e74206f776e657200000000000000604482015290519081900360640190fd5b336001600160a01b0382161480610b8e5750610b8e8133611c62565b610bc95760405162461bcd60e51b81526004018080602001828103825260308152602001806123556030913960400191505060405180910390fd5b60008281526005602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b600a5490565b6000806000808451604114610c465760009350505050610cf8565b50505060208201516040830151606084015160001a601b811015610c6857601b015b8060ff16601b14158015610c8057508060ff16601c14155b15610c915760009350505050610cf8565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015610ce8573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b600c5460009060ff1615610d4e576040805162461bcd60e51b815260206004820152601260248201527118dbdb9d1c9858dd081a5cc81c185d5cd95960721b604482015290519081900360640190fd5b836001600160a01b0316610d6183611629565b6001600160a01b031614610da65760405162461bcd60e51b81526004018080602001828103825260218152602001806123a96021913960400191505060405180910390fd5b6001600160a01b038316610e01576040805162461bcd60e51b815260206004820152601c60248201527f7472616e7366657220746f20746865207a65726f206164647265737300000000604482015290519081900360640190fd5b610e0b3383611d92565b610e465760405162461bcd60e51b81526004018080602001828103825260298152602001806123f46029913960400191505060405180910390fd5b610e4f82611e2e565b6001600160a01b038416600090815260066020526040902054610e7990600163ffffffff611e6b16565b6001600160a01b038086166000908152600660205260408082209390935590851681522054610eaf90600163ffffffff611ebc16565b6001600160a01b038416600081815260066020908152604080832094909455858252600490529190912080546001600160a01b0319169091179055610ef48483611f11565b610efe8383612013565b81836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45060019392505050565b6000610f5483611662565b8210610fa7576040805162461bcd60e51b815260206004820152601960248201527f6f776e657220696e646578206f7574206f6620626f756e647300000000000000604482015290519081900360640190fd5b6001600160a01b0383166000908152600760205260409020805483908110610fcb57fe5b9060005260206000200154905092915050565b60009081526002602052604090205460ff1690565b6001546001600160a01b0316331461103e576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b600c805460ff19169055565b6001546000906001600160a01b03163314611098576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b6001600160a01b0383166110f3576040805162461bcd60e51b815260206004820152601860248201527f6d696e7420746f20746865207a65726f20616464726573730000000000000000604482015290519081900360640190fd5b6110fc82611504565b15611145576040805162461bcd60e51b81526020600482015260146024820152731d1bdad95b88185b1c9958591e481b5a5b9d195960621b604482015290519081900360640190fd5b600082815260046020908152604080832080546001600160a01b0319166001600160a01b03881690811790915583526006909152902054611187906001611ebc565b6001600160a01b0384166000908152600660205260409020556111aa8383612013565b6111b382612051565b60405182906001600160a01b038516906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a450600192915050565b600061121184848460405180602001604052806000815250611b0a565b949350505050565b600c5460009060ff1615611269576040805162461bcd60e51b815260206004820152601260248201527118dbdb9d1c9858dd081a5cc81c185d5cd95960721b604482015290519081900360640190fd5b6112733383611d92565b6112c4576040805162461bcd60e51b815260206004820181905260248201527f63616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564604482015290519081900360640190fd5b6112cd82611e2e565b336000908152600660205260409020546112ee90600163ffffffff611e6b16565b336000908152600660209081526040808320939093558482526004815282822080546001600160a01b0319169055600f905220546002600019600183161561010002019091160415611351576000828152600f6020526040812061135191612278565b61135b3383611f11565b60008281526008602052604081205561137382612095565b604051829060009033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a4506001919050565b6000806000600f600086815260200190815260200160002060405160200180828054600181600116156101000203166002900480156114205780601f106113fe576101008083540402835291820191611420565b820191906000526020600020905b81548152906001019060200180831161140c575b505060408051601f1981840301815282825280516020918201208284018352601c8085527f19457468657265756d205369676e6564204d6573736167653a0a3332000000008386019081529351919750939550859450869391019182918083835b602083106114a05780518252601f199092019160209182019101611481565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201905282519201919091209350600091506114e890508387610c2b565b905060006114f588611629565b91989197509095505050505050565b6000908152600460205260409020546001600160a01b0316151590565b600061152b610c25565b821061157e576040805162461bcd60e51b815260206004820152601a60248201527f676c6f62616c20696e646578206f7574206f6620626f756e6473000000000000604482015290519081900360640190fd5b600a828154811061158b57fe5b90600052602060002001549050919050565b6001546000906001600160a01b031633146115eb576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b6115f5848461104a565b506000838152600f602090815260409091208351611615928501906122bc565b506001949350505050565b600c5460ff1690565b6000908152600460205260409020546001600160a01b031690565b6001600160a01b031660009081526003602052604090205460ff1690565b6001600160a01b031660009081526006602052604090205490565b3360009081526003602052604090205460ff1615156001146116d2576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b60008281526002602052604090205460ff161561172f576040805162461bcd60e51b8152602060048201526016602482015275151bdad95b88185b1c9958591e481c995919595b595960521b604482015290519081900360640190fd5b60008061173c84846113aa565b91509150806001600160a01b0316826001600160a01b0316146117a6576040805162461bcd60e51b815260206004820152601960248201527f4e6f74207369676e656420627920746f6b656e206f776e657200000000000000604482015290519081900360640190fd5b600084815260026020908152604091829020805460ff19166001179055815186815291517fb2330cf2285c34504055127120eeecb2d861a31044a427ffbdefd61a89ff6ac49281900390910190a150505050565b6001546001600160a01b03163314611845576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b61184d6118b2565b6001600160a01b0316ff5b6001546001600160a01b031633146118a3576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b600c805460ff19166001179055565b6001546001600160a01b031690565b600e8054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610a445780601f10610a1957610100808354040283529160200191610a44565b6001546001600160a01b0316331461196d576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b600c5460ff16156119de576040805162461bcd60e51b815260206004820152601260248201527118dbdb9d1c9858dd081a5cc81c185d5cd95960721b604482015290519081900360640190fd5b6001600160a01b038216331415611a30576040805162461bcd60e51b815260206004820152601160248201527030b8383937bb32903a379031b0b63632b960791b604482015290519081900360640190fd5b3360008181526009602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6001546001600160a01b03163314611ae9576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b6001600160a01b03166000908152600360205260409020805460ff19169055565b6000611b1885858585612149565b611b535760405162461bcd60e51b815260040180806020018281038252602a8152602001806123ca602a913960400191505060405180910390fd5b611b5e858585610cfe565b95945050505050565b6060611b7282611504565b611bc3576040805162461bcd60e51b815260206004820152601f60248201527f55524920717565727920666f72206e6f6e6578697374656e7420746f6b656e00604482015290519081900360640190fd5b6000828152600f602090815260409182902080548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529091830182828015611c565780601f10611c2b57610100808354040283529160200191611c56565b820191906000526020600020905b815481529060010190602001808311611c3957829003601f168201915b50505050509050919050565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205460ff1690565b6001546001600160a01b03163314611cdb576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b6001600160a01b038116611d36576040805162461bcd60e51b815260206004820152601a60248201527f4e6f6e2d7a65726f20616464726573732072657175697265642e000000000000604482015290519081900360640190fd5b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b6000611d9d82611504565b611dd85760405162461bcd60e51b815260040180806020018281038252602481526020018061241d6024913960400191505060405180910390fd5b6000611de383611629565b9050806001600160a01b0316846001600160a01b03161480611e1e5750836001600160a01b0316611e1384610a4f565b6001600160a01b0316145b8061121157506112118185611c62565b6000818152600560205260409020546001600160a01b031615611e6857600081815260056020526040902080546001600160a01b03191690555b50565b600082821115611eb6576040805162461bcd60e51b815260206004820152601160248201527024b73b30b634b21030b933bab6b2b73a1760791b604482015290519081900360640190fd5b50900390565b600082820183811015611f0a576040805162461bcd60e51b815260206004820152601160248201527024b73b30b634b21030b933bab6b2b73a1760791b604482015290519081900360640190fd5b9392505050565b6001600160a01b038216600090815260076020526040812054611f3b90600163ffffffff611e6b16565b600083815260086020526040902054909150808214611fd6576001600160a01b0384166000908152600760205260408120805484908110611f7857fe5b906000526020600020015490508060076000876001600160a01b03166001600160a01b031681526020019081526020016000208381548110611fb657fe5b600091825260208083209091019290925591825260089052604090208190555b6001600160a01b0384166000908152600760205260409020805480611ff757fe5b6001900381819060005260206000200160009055905550505050565b6001600160a01b0390911660009081526007602081815260408084208054868652600884529185208290559282526001810183559183529091200155565b600a80546000838152600b60205260408120829055600182018355919091527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a80155565b600a546000906120ac90600163ffffffff611e6b16565b6000838152600b6020526040812054600a80549394509092849081106120ce57fe5b9060005260206000200154905080600a83815481106120e957fe5b6000918252602080832090910192909255828152600b90915260409020829055600a80548061211457fe5b600190038181906000526020600020016000905590556000600b60008681526020019081526020016000208190555050505050565b600061215484612272565b61216057506001611211565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b838110156121da5781810151838201526020016121c2565b50505050905090810190601f1680156122075780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15801561222957600080fd5b505af115801561223d573d6000803e3d6000fd5b505050506040513d602081101561225357600080fd5b50516001600160e01b031916630a85bd0160e11b149695505050505050565b3b151590565b50805460018160011615610100020316600290046000825580601f1061229e5750611e68565b601f016020900490600052602060002090810190611e68919061233a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106122fd57805160ff191683800117855561232a565b8280016001018555821561232a579182015b8281111561232a57825182559160200191906001019061230f565b5061233692915061233a565b5090565b610a4c91905b80821115612336576000815560010161234056fe617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e7472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e7472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465727472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665646f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656ea265627a7a723158209d787097ff0c884f00255c6b51fb61668d7d08d8750d7b2a0e6898968706b5f264736f6c634300050b0032000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000018446576636f6e2035204f6e2d436861696e205469636b6574000000000000000000000000000000000000000000000000000000000000000000000000000000034443560000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101fb5760003560e01c806350bb4e7f1161011a5780638da5cb5b116100ad578063ac8a584a1161007c578063ac8a584a1461083e578063b88d4fde14610864578063c87b56dd14610928578063e985e9c514610945578063f2fde38b14610973576101fb565b80638da5cb5b146107da57806395d89b41146107e25780639870d7fe146107ea578063a22cb46514610810576101fb565b806370a08231116100e957806370a08231146106f95780637bc4c2401461071f57806383197ef0146107ca5780638456cb59146107d2576101fb565b806350bb4e7f146105f55780635c975abb146106ae5780636352211e146106b65780636d70f7ae146106d3576101fb565b806332d33cd01161019257806342966c681161016157806342966c68146104cd5780634ad00a18146104ea5780634f558e79146105bb5780634f6ccce7146105d8576101fb565b806332d33cd0146104465780633f4ba83a1461046357806340c10f191461046b57806342842e0e14610497576101fb565b806318160ddd116101ce57806318160ddd1461031f57806319045a251461033957806323b872dd146103e45780632f745c591461041a576101fb565b806301ffc9a71461020057806306fdde031461023b578063081812fc146102b8578063095ea7b3146102f1575b600080fd5b6102276004803603602081101561021657600080fd5b50356001600160e01b031916610999565b604080519115158252519081900360200190f35b6102436109b8565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561027d578181015183820152602001610265565b50505050905090810190601f1680156102aa5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102d5600480360360208110156102ce57600080fd5b5035610a4f565b604080516001600160a01b039092168252519081900360200190f35b61031d6004803603604081101561030757600080fd5b506001600160a01b038135169060200135610ab1565b005b610327610c25565b60408051918252519081900360200190f35b6102d56004803603604081101561034f57600080fd5b81359190810190604081016020820135600160201b81111561037057600080fd5b82018360208201111561038257600080fd5b803590602001918460018302840111600160201b831117156103a357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610c2b945050505050565b610227600480360360608110156103fa57600080fd5b506001600160a01b03813581169160208101359091169060400135610cfe565b6103276004803603604081101561043057600080fd5b506001600160a01b038135169060200135610f49565b6102276004803603602081101561045c57600080fd5b5035610fde565b61031d610ff3565b6102276004803603604081101561048157600080fd5b506001600160a01b03813516906020013561104a565b610227600480360360608110156104ad57600080fd5b506001600160a01b038135811691602081013590911690604001356111f4565b610227600480360360208110156104e357600080fd5b5035611219565b6105956004803603604081101561050057600080fd5b81359190810190604081016020820135600160201b81111561052157600080fd5b82018360208201111561053357600080fd5b803590602001918460018302840111600160201b8311171561055457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506113aa945050505050565b604080516001600160a01b03938416815291909216602082015281519081900390910190f35b610227600480360360208110156105d157600080fd5b5035611504565b610327600480360360208110156105ee57600080fd5b5035611521565b6102276004803603606081101561060b57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561063a57600080fd5b82018360208201111561064c57600080fd5b803590602001918460018302840111600160201b8311171561066d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061159d945050505050565b610227611620565b6102d5600480360360208110156106cc57600080fd5b5035611629565b610227600480360360208110156106e957600080fd5b50356001600160a01b0316611644565b6103276004803603602081101561070f57600080fd5b50356001600160a01b0316611662565b61031d6004803603604081101561073557600080fd5b81359190810190604081016020820135600160201b81111561075657600080fd5b82018360208201111561076857600080fd5b803590602001918460018302840111600160201b8311171561078957600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061167d945050505050565b61031d6117fa565b61031d611858565b6102d56118b2565b6102436118c1565b61031d6004803603602081101561080057600080fd5b50356001600160a01b0316611922565b61031d6004803603604081101561082657600080fd5b506001600160a01b0381351690602001351515611991565b61031d6004803603602081101561085457600080fd5b50356001600160a01b0316611a9e565b6102276004803603608081101561087a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611b0a945050505050565b6102436004803603602081101561093e57600080fd5b5035611b67565b6102276004803603604081101561095b57600080fd5b506001600160a01b0381358116916020013516611c62565b61031d6004803603602081101561098957600080fd5b50356001600160a01b0316611c90565b6001600160e01b03191660009081526020819052604090205460ff1690565b600d8054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610a445780601f10610a1957610100808354040283529160200191610a44565b820191906000526020600020905b815481529060010190602001808311610a2757829003601f168201915b505050505090505b90565b6000610a5a82611504565b610a955760405162461bcd60e51b81526004018080602001828103825260248152602001806123856024913960400191505060405180910390fd5b506000908152600560205260409020546001600160a01b031690565b600c5460ff1615610afe576040805162461bcd60e51b815260206004820152601260248201527118dbdb9d1c9858dd081a5cc81c185d5cd95960721b604482015290519081900360640190fd5b6000610b0982611629565b9050806001600160a01b0316836001600160a01b03161415610b72576040805162461bcd60e51b815260206004820152601960248201527f617070726f76616c20746f2063757272656e74206f776e657200000000000000604482015290519081900360640190fd5b336001600160a01b0382161480610b8e5750610b8e8133611c62565b610bc95760405162461bcd60e51b81526004018080602001828103825260308152602001806123556030913960400191505060405180910390fd5b60008281526005602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b600a5490565b6000806000808451604114610c465760009350505050610cf8565b50505060208201516040830151606084015160001a601b811015610c6857601b015b8060ff16601b14158015610c8057508060ff16601c14155b15610c915760009350505050610cf8565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015610ce8573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b600c5460009060ff1615610d4e576040805162461bcd60e51b815260206004820152601260248201527118dbdb9d1c9858dd081a5cc81c185d5cd95960721b604482015290519081900360640190fd5b836001600160a01b0316610d6183611629565b6001600160a01b031614610da65760405162461bcd60e51b81526004018080602001828103825260218152602001806123a96021913960400191505060405180910390fd5b6001600160a01b038316610e01576040805162461bcd60e51b815260206004820152601c60248201527f7472616e7366657220746f20746865207a65726f206164647265737300000000604482015290519081900360640190fd5b610e0b3383611d92565b610e465760405162461bcd60e51b81526004018080602001828103825260298152602001806123f46029913960400191505060405180910390fd5b610e4f82611e2e565b6001600160a01b038416600090815260066020526040902054610e7990600163ffffffff611e6b16565b6001600160a01b038086166000908152600660205260408082209390935590851681522054610eaf90600163ffffffff611ebc16565b6001600160a01b038416600081815260066020908152604080832094909455858252600490529190912080546001600160a01b0319169091179055610ef48483611f11565b610efe8383612013565b81836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45060019392505050565b6000610f5483611662565b8210610fa7576040805162461bcd60e51b815260206004820152601960248201527f6f776e657220696e646578206f7574206f6620626f756e647300000000000000604482015290519081900360640190fd5b6001600160a01b0383166000908152600760205260409020805483908110610fcb57fe5b9060005260206000200154905092915050565b60009081526002602052604090205460ff1690565b6001546001600160a01b0316331461103e576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b600c805460ff19169055565b6001546000906001600160a01b03163314611098576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b6001600160a01b0383166110f3576040805162461bcd60e51b815260206004820152601860248201527f6d696e7420746f20746865207a65726f20616464726573730000000000000000604482015290519081900360640190fd5b6110fc82611504565b15611145576040805162461bcd60e51b81526020600482015260146024820152731d1bdad95b88185b1c9958591e481b5a5b9d195960621b604482015290519081900360640190fd5b600082815260046020908152604080832080546001600160a01b0319166001600160a01b03881690811790915583526006909152902054611187906001611ebc565b6001600160a01b0384166000908152600660205260409020556111aa8383612013565b6111b382612051565b60405182906001600160a01b038516906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a450600192915050565b600061121184848460405180602001604052806000815250611b0a565b949350505050565b600c5460009060ff1615611269576040805162461bcd60e51b815260206004820152601260248201527118dbdb9d1c9858dd081a5cc81c185d5cd95960721b604482015290519081900360640190fd5b6112733383611d92565b6112c4576040805162461bcd60e51b815260206004820181905260248201527f63616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564604482015290519081900360640190fd5b6112cd82611e2e565b336000908152600660205260409020546112ee90600163ffffffff611e6b16565b336000908152600660209081526040808320939093558482526004815282822080546001600160a01b0319169055600f905220546002600019600183161561010002019091160415611351576000828152600f6020526040812061135191612278565b61135b3383611f11565b60008281526008602052604081205561137382612095565b604051829060009033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a4506001919050565b6000806000600f600086815260200190815260200160002060405160200180828054600181600116156101000203166002900480156114205780601f106113fe576101008083540402835291820191611420565b820191906000526020600020905b81548152906001019060200180831161140c575b505060408051601f1981840301815282825280516020918201208284018352601c8085527f19457468657265756d205369676e6564204d6573736167653a0a3332000000008386019081529351919750939550859450869391019182918083835b602083106114a05780518252601f199092019160209182019101611481565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201905282519201919091209350600091506114e890508387610c2b565b905060006114f588611629565b91989197509095505050505050565b6000908152600460205260409020546001600160a01b0316151590565b600061152b610c25565b821061157e576040805162461bcd60e51b815260206004820152601a60248201527f676c6f62616c20696e646578206f7574206f6620626f756e6473000000000000604482015290519081900360640190fd5b600a828154811061158b57fe5b90600052602060002001549050919050565b6001546000906001600160a01b031633146115eb576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b6115f5848461104a565b506000838152600f602090815260409091208351611615928501906122bc565b506001949350505050565b600c5460ff1690565b6000908152600460205260409020546001600160a01b031690565b6001600160a01b031660009081526003602052604090205460ff1690565b6001600160a01b031660009081526006602052604090205490565b3360009081526003602052604090205460ff1615156001146116d2576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b60008281526002602052604090205460ff161561172f576040805162461bcd60e51b8152602060048201526016602482015275151bdad95b88185b1c9958591e481c995919595b595960521b604482015290519081900360640190fd5b60008061173c84846113aa565b91509150806001600160a01b0316826001600160a01b0316146117a6576040805162461bcd60e51b815260206004820152601960248201527f4e6f74207369676e656420627920746f6b656e206f776e657200000000000000604482015290519081900360640190fd5b600084815260026020908152604091829020805460ff19166001179055815186815291517fb2330cf2285c34504055127120eeecb2d861a31044a427ffbdefd61a89ff6ac49281900390910190a150505050565b6001546001600160a01b03163314611845576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b61184d6118b2565b6001600160a01b0316ff5b6001546001600160a01b031633146118a3576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b600c805460ff19166001179055565b6001546001600160a01b031690565b600e8054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610a445780601f10610a1957610100808354040283529160200191610a44565b6001546001600160a01b0316331461196d576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b600c5460ff16156119de576040805162461bcd60e51b815260206004820152601260248201527118dbdb9d1c9858dd081a5cc81c185d5cd95960721b604482015290519081900360640190fd5b6001600160a01b038216331415611a30576040805162461bcd60e51b815260206004820152601160248201527030b8383937bb32903a379031b0b63632b960791b604482015290519081900360640190fd5b3360008181526009602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6001546001600160a01b03163314611ae9576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b6001600160a01b03166000908152600360205260409020805460ff19169055565b6000611b1885858585612149565b611b535760405162461bcd60e51b815260040180806020018281038252602a8152602001806123ca602a913960400191505060405180910390fd5b611b5e858585610cfe565b95945050505050565b6060611b7282611504565b611bc3576040805162461bcd60e51b815260206004820152601f60248201527f55524920717565727920666f72206e6f6e6578697374656e7420746f6b656e00604482015290519081900360640190fd5b6000828152600f602090815260409182902080548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529091830182828015611c565780601f10611c2b57610100808354040283529160200191611c56565b820191906000526020600020905b815481529060010190602001808311611c3957829003601f168201915b50505050509050919050565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205460ff1690565b6001546001600160a01b03163314611cdb576040805162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b604482015290519081900360640190fd5b6001600160a01b038116611d36576040805162461bcd60e51b815260206004820152601a60248201527f4e6f6e2d7a65726f20616464726573732072657175697265642e000000000000604482015290519081900360640190fd5b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b6000611d9d82611504565b611dd85760405162461bcd60e51b815260040180806020018281038252602481526020018061241d6024913960400191505060405180910390fd5b6000611de383611629565b9050806001600160a01b0316846001600160a01b03161480611e1e5750836001600160a01b0316611e1384610a4f565b6001600160a01b0316145b8061121157506112118185611c62565b6000818152600560205260409020546001600160a01b031615611e6857600081815260056020526040902080546001600160a01b03191690555b50565b600082821115611eb6576040805162461bcd60e51b815260206004820152601160248201527024b73b30b634b21030b933bab6b2b73a1760791b604482015290519081900360640190fd5b50900390565b600082820183811015611f0a576040805162461bcd60e51b815260206004820152601160248201527024b73b30b634b21030b933bab6b2b73a1760791b604482015290519081900360640190fd5b9392505050565b6001600160a01b038216600090815260076020526040812054611f3b90600163ffffffff611e6b16565b600083815260086020526040902054909150808214611fd6576001600160a01b0384166000908152600760205260408120805484908110611f7857fe5b906000526020600020015490508060076000876001600160a01b03166001600160a01b031681526020019081526020016000208381548110611fb657fe5b600091825260208083209091019290925591825260089052604090208190555b6001600160a01b0384166000908152600760205260409020805480611ff757fe5b6001900381819060005260206000200160009055905550505050565b6001600160a01b0390911660009081526007602081815260408084208054868652600884529185208290559282526001810183559183529091200155565b600a80546000838152600b60205260408120829055600182018355919091527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a80155565b600a546000906120ac90600163ffffffff611e6b16565b6000838152600b6020526040812054600a80549394509092849081106120ce57fe5b9060005260206000200154905080600a83815481106120e957fe5b6000918252602080832090910192909255828152600b90915260409020829055600a80548061211457fe5b600190038181906000526020600020016000905590556000600b60008681526020019081526020016000208190555050505050565b600061215484612272565b61216057506001611211565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b838110156121da5781810151838201526020016121c2565b50505050905090810190601f1680156122075780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15801561222957600080fd5b505af115801561223d573d6000803e3d6000fd5b505050506040513d602081101561225357600080fd5b50516001600160e01b031916630a85bd0160e11b149695505050505050565b3b151590565b50805460018160011615610100020316600290046000825580601f1061229e5750611e68565b601f016020900490600052602060002090810190611e68919061233a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106122fd57805160ff191683800117855561232a565b8280016001018555821561232a579182015b8281111561232a57825182559160200191906001019061230f565b5061233692915061233a565b5090565b610a4c91905b80821115612336576000815560010161234056fe617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e7472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e7472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465727472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665646f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656ea265627a7a723158209d787097ff0c884f00255c6b51fb61668d7d08d8750d7b2a0e6898968706b5f264736f6c634300050b0032

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

000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000018446576636f6e2035204f6e2d436861696e205469636b6574000000000000000000000000000000000000000000000000000000000000000000000000000000034443560000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : name (string): Devcon 5 On-Chain Ticket
Arg [1] : symbol (string): DCV

-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000018
Arg [3] : 446576636f6e2035204f6e2d436861696e205469636b65740000000000000000
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [5] : 4443560000000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

5069:10423:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5069:10423:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2871:129;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2871:129:0;-1:-1:-1;;;;;;2871:129:0;;:::i;:::-;;;;;;;;;;;;;;;;;;6343:77;;;:::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;6343:77:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9025:183;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9025:183:0;;:::i;:::-;;;;-1:-1:-1;;;;;9025:183:0;;;;;;;;;;;;;;8649:370;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;8649:370:0;;;;;;;;:::i;:::-;;7025:90;;;:::i;:::-;;;;;;;;;;;;;;;;14655:758;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14655:758:0;;;;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;14655:758:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;14655:758:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;14655:758:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;14655:758:0;;-1:-1:-1;14655:758:0;;-1:-1:-1;;;;;14655:758:0:i;7516:696::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;7516:696:0;;;;;;;;;;;;;;;;;:::i;7121:212::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;7121:212:0;;;;;;;;:::i;11483:105::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11483:105:0;;:::i;11103:64::-;;;:::i;9753:449::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;9753:449:0;;;;;;;;:::i;8218:150::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;8218:150:0;;;;;;;;;;;;;;;;;:::i;10400:630::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10400:630:0;;:::i;11594:432::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11594:432:0;;;;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;11594:432:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;11594:432:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;11594:432:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;11594:432:0;;-1:-1:-1;11594:432:0;;-1:-1:-1;;;;;11594:432:0:i;:::-;;;;-1:-1:-1;;;;;11594:432:0;;;;;;;;;;;;;;;;;;;;;;;;9605:142;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9605:142:0;;:::i;7339:171::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7339:171:0;;:::i;10208:186::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;10208:186:0;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;10208:186:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;10208:186:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;10208:186:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;10208:186:0;;-1:-1:-1;10208:186:0;;-1:-1:-1;;;;;10208:186:0:i;6947:72::-;;;:::i;6809:132::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6809:132:0;;:::i;11275:97::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11275:97:0;-1:-1:-1;;;;;11275:97:0;;:::i;6695:108::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6695:108:0;-1:-1:-1;;;;;6695:108:0;;:::i;12032:383::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12032:383:0;;;;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;12032:383:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;12032:383:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;12032:383:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;12032:383:0;;-1:-1:-1;12032:383:0;;-1:-1:-1;;;;;12032:383:0:i;15419:70::-;;;:::i;11036:61::-;;;:::i;4757:81::-;;;:::i;6426:::-;;;:::i;11173:96::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11173:96:0;-1:-1:-1;;;;;11173:96:0;;:::i;9214:238::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;9214:238:0;;;;;;;;;;:::i;11378:99::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11378:99:0;-1:-1:-1;;;;;11378:99:0;;:::i;8374:269::-;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;;;;;8374:269:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;8374:269:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;8374:269:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;8374:269:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;8374:269:0;;-1:-1:-1;8374:269:0;;-1:-1:-1;;;;;8374:269:0:i;6513:176::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6513:176:0;;:::i;9458:141::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;9458:141:0;;;;;;;;;;:::i;4844:218::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4844:218:0;-1:-1:-1;;;;;4844:218:0;;:::i;2871:129::-;-1:-1:-1;;;;;;2961:33:0;2941:4;2961:33;;;;;;;;;;;;;;2871:129::o;6343:77::-;6409:5;6402:12;;;;;;;;-1:-1:-1;;6402:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6380:13;;6402:12;;6409:5;;6402:12;;6409:5;6402:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6343:77;;:::o;9025:183::-;9084:7;9108:15;9115:7;9108:6;:15::i;:::-;9100:64;;;;-1:-1:-1;;;9100:64:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9178:24:0;;;;:15;:24;;;;;;-1:-1:-1;;;;;9178:24:0;;9025:183::o;8649:370::-;5906:7;;;;5905:8;5897:39;;;;;-1:-1:-1;;;5897:39:0;;;;;;;;;;;;-1:-1:-1;;;5897:39:0;;;;;;;;;;;;;;;8723:13;8739:16;8747:7;8739;:16::i;:::-;8723:32;;8776:5;-1:-1:-1;;;;;8770:11:0;:2;-1:-1:-1;;;;;8770:11:0;;;8762:49;;;;;-1:-1:-1;;;8762:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8826:10;-1:-1:-1;;;;;8826:19:0;;;;:58;;;8849:35;8866:5;8873:10;8849:16;:35::i;:::-;8818:119;;;;-1:-1:-1;;;8818:119:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8944:24;;;;:15;:24;;;;;;:29;;-1:-1:-1;;;;;;8944:29:0;-1:-1:-1;;;;;8944:29:0;;;;;;;;;8985:28;;8944:24;;8985:28;;;;;;;5943:1;8649:370;;:::o;7025:90::-;7092:10;:17;7025:90;:::o;14655:758::-;14731:7;14747:9;14763;14779:7;14833:9;:16;14853:2;14833:22;14829:64;;14882:1;14866:19;;;;;;;14829:64;-1:-1:-1;;;14998:2:0;14983:18;;14977:25;15036:2;15021:18;;15015:25;15082:2;15067:18;;15061:25;15058:1;15053:34;15198:2;15194:6;;15190:36;;;15216:2;15211:7;15190:36;15298:1;:7;;15303:2;15298:7;;:18;;;;;15309:1;:7;;15314:2;15309:7;;15298:18;15294:114;;;15343:1;15327:19;;;;;;;15294:114;15376:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;15376:24:0;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15376:24:0;;;;;;;;15369:31;;;;;14655:758;;;;;:::o;7516:696::-;5906:7;;7611:4;;5906:7;;5905:8;5897:39;;;;;-1:-1:-1;;;5897:39:0;;;;;;;;;;;;-1:-1:-1;;;5897:39:0;;;;;;;;;;;;;;;7652:4;-1:-1:-1;;;;;7632:24:0;:16;7640:7;7632;:16::i;:::-;-1:-1:-1;;;;;7632:24:0;;7624:70;;;;-1:-1:-1;;;7624:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7709:16:0;;7701:57;;;;;-1:-1:-1;;;7701:57:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7773:38;7791:10;7803:7;7773:17;:38::i;:::-;7765:92;;;;-1:-1:-1;;;7765:92:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7866:22;7880:7;7866:13;:22::i;:::-;-1:-1:-1;;;;;7923:23:0;;;;;;:17;:23;;;;;;:30;;7951:1;7923:30;:27;:30;:::i;:::-;-1:-1:-1;;;;;7897:23:0;;;;;;;:17;:23;;;;;;:56;;;;7984:21;;;;;;;:28;;8010:1;7984:28;:25;:28;:::i;:::-;-1:-1:-1;;;;;7960:21:0;;;;;;:17;:21;;;;;;;;:52;;;;8021:20;;;:11;:20;;;;;;:25;;-1:-1:-1;;;;;;8021:25:0;;;;;;8055:46;8087:4;8033:7;8055:31;:46::i;:::-;8108:39;8135:2;8139:7;8108:26;:39::i;:::-;8180:7;8176:2;-1:-1:-1;;;;;8161:27:0;8170:4;-1:-1:-1;;;;;8161:27:0;;;;;;;;;;;-1:-1:-1;8202:4:0;7516:696;;;;;:::o;7121:212::-;7201:15;7241:16;7251:5;7241:9;:16::i;:::-;7233:5;:24;7225:62;;;;;-1:-1:-1;;;7225:62:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7301:19:0;;;;;;:12;:19;;;;;:26;;7321:5;;7301:26;;;;;;;;;;;;;;7294:33;;7121:212;;;;:::o;11483:105::-;11541:4;11561:21;;;:12;:21;;;;;;;;;11483:105::o;11103:64::-;4658:6;;-1:-1:-1;;;;;4658:6:0;4644:10;:20;4636:42;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;;;;11146:7;:15;;-1:-1:-1;;11146:15:0;;;11103:64::o;9753:449::-;4658:6;;9822:4;;-1:-1:-1;;;;;4658:6:0;4644:10;:20;4636:42;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;9843:16:0;;9835:53;;;;;-1:-1:-1;;;9835:53:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9904:15;9911:7;9904:6;:15::i;:::-;9903:16;9895:49;;;;;-1:-1:-1;;;9895:49:0;;;;;;;;;;;;-1:-1:-1;;;9895:49:0;;;;;;;;;;;;;;;9953:20;;;;:11;:20;;;;;;;;:25;;-1:-1:-1;;;;;;9953:25:0;-1:-1:-1;;;;;9953:25:0;;;;;;;;10009:21;;:17;:21;;;;;;:28;;-1:-1:-1;10009:25:0;:28::i;:::-;-1:-1:-1;;;;;9985:21:0;;;;;;:17;:21;;;;;:52;10046:39;10003:2;10077:7;10046:26;:39::i;:::-;10092;10123:7;10092:30;:39::i;:::-;10145:33;;10170:7;;-1:-1:-1;;;;;10145:33:0;;;10162:1;;10145:33;;10162:1;;10145:33;-1:-1:-1;10192:4:0;9753:449;;;;:::o;8218:150::-;8303:4;8323:39;8340:4;8346:2;8350:7;8323:39;;;;;;;;;;;;:16;:39::i;:::-;8316:46;8218:150;-1:-1:-1;;;;8218:150:0:o;10400:630::-;5906:7;;10461:4;;5906:7;;5905:8;5897:39;;;;;-1:-1:-1;;;5897:39:0;;;;;;;;;;;;-1:-1:-1;;;5897:39:0;;;;;;;;;;;;;;;10482:38;10500:10;10512:7;10482:17;:38::i;:::-;10474:83;;;;;-1:-1:-1;;;10474:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10566:22;10580:7;10566:13;:22::i;:::-;10647:10;10629:29;;;;:17;:29;;;;;;:36;;10663:1;10629:36;:33;:36;:::i;:::-;10615:10;10597:29;;;;:17;:29;;;;;;;;:68;;;;10672:20;;;:11;:20;;;;;:33;;-1:-1:-1;;;;;;10672:33:0;;;10724:10;:19;;;10718:33;;-1:-1:-1;;10672:33:0;10718;;;10672;10718;;;;;;:38;10714:87;;10774:19;;;;:10;:19;;;;;10767:26;;;:::i;:::-;10809:52;10841:10;10853:7;10809:31;:52::i;:::-;10897:1;10868:26;;;:17;:26;;;;;:30;10905:44;10886:7;10905:35;:44::i;:::-;10963:41;;10996:7;;10992:1;;10972:10;;10963:41;;10992:1;;10963:41;-1:-1:-1;11020:4:0;10400:630;;;:::o;11594:432::-;11683:7;11692;11708:12;11750:10;:19;11761:7;11750:19;;;;;;;;;;;11733:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;11733:37:0;;;-1:-1:-1;;26:21;;;22:32;6:49;;11733:37:0;;;11723:48;;49:4:-1;11723:48:0;;;;11780:56;;;;;;;;;;;;;;;;11860:30;;11723:48;;-1:-1:-1;11733:37:0;;-1:-1:-1;11733:37:0;;-1:-1:-1;11723:48:0;;11860:30;;;;;11780:56;11860:30;11780:56;36:153:-1;66:2;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;11860:30:0;;;;;-1:-1:-1;11860:30:0;;;26:21:-1;;;6:49;;11860:30:0;;;;;11850:41;;;;;;;;;-1:-1:-1;;;;11917:23:0;;-1:-1:-1;11850:41:0;11930:9;11917:7;:23::i;:::-;11900:40;;11947:18;11968:16;11976:7;11968;:16::i;:::-;12001:6;;;;-1:-1:-1;11594:432:0;;-1:-1:-1;;;;;;11594:432:0:o;9605:142::-;9659:4;9688:20;;;:11;:20;;;;;;-1:-1:-1;;;;;9688:20:0;9722:19;;;9605:142::o;7339:171::-;7397:7;7429:13;:11;:13::i;:::-;7421:5;:21;7413:60;;;;;-1:-1:-1;;;7413:60:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7487:10;7498:5;7487:17;;;;;;;;;;;;;;;;7480:24;;7339:171;;;:::o;10208:186::-;4658:6;;10308:4;;-1:-1:-1;;;;;4658:6:0;4644:10;:20;4636:42;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;;;;10321:17;10326:2;10330:7;10321:4;:17::i;:::-;-1:-1:-1;10345:19:0;;;;:10;:19;;;;;;;;:25;;;;;;;;:::i;:::-;-1:-1:-1;10384:4:0;;10208:186;-1:-1:-1;;;;10208:186:0:o;6947:72::-;7006:7;;;;6947:72;:::o;6809:132::-;6864:7;6896:20;;;:11;:20;;;;;;-1:-1:-1;;;;;6896:20:0;;6809:132::o;11275:97::-;-1:-1:-1;;;;;11350:16:0;11330:4;11350:16;;;:10;:16;;;;;;;;;11275:97::o;6695:108::-;-1:-1:-1;;;;;6773:24:0;6750:7;6773:24;;;:17;:24;;;;;;;6695:108::o;12032:383::-;6006:10;5995:22;;;;:10;:22;;;;;;;;:30;;:22;:30;5987:52;;;;;-1:-1:-1;;;5987:52:0;;;;;;;;;;;;-1:-1:-1;;;5987:52:0;;;;;;;;;;;;;;;12138:21;;;;:12;:21;;;;;;;;12137:22;12129:57;;;;;-1:-1:-1;;;12129:57:0;;;;;;;;;;;;-1:-1:-1;;;12129:57:0;;;;;;;;;;;;;;;12196:14;12212:18;12234:37;12252:7;12261:9;12234:17;:37::i;:::-;12195:76;;;;12298:10;-1:-1:-1;;;;;12288:20:0;:6;-1:-1:-1;;;;;12288:20:0;;12280:58;;;;;-1:-1:-1;;;12280:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;12347:21;;;;:12;:21;;;;;;;;;:28;;-1:-1:-1;;12347:28:0;12371:4;12347:28;;;12387:22;;;;;;;;;;;;;;;;;6046:1;;12032:383;;:::o;15419:70::-;4658:6;;-1:-1:-1;;;;;4658:6:0;4644:10;:20;4636:42;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;;;;15475:7;:5;:7::i;:::-;-1:-1:-1;;;;;15462:21:0;;11036:61;4658:6;;-1:-1:-1;;;;;4658:6:0;4644:10;:20;4636:42;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;;;;11077:7;:14;;-1:-1:-1;;11077:14:0;11087:4;11077:14;;;11036:61::o;4757:81::-;4826:6;;-1:-1:-1;;;;;4826:6:0;4757:81;:::o;6426:::-;6494:7;6487:14;;;;;;;;-1:-1:-1;;6487:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6465:13;;6487:14;;6494:7;;6487:14;;6494:7;6487:14;;;;;;;;;;;;;;;;;;;;;;;;11173:96;4658:6;;-1:-1:-1;;;;;4658:6:0;4644:10;:20;4636:42;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;11236:20:0;;;;;:10;:20;;;;;:27;;-1:-1:-1;;11236:27:0;11259:4;11236:27;;;11173:96::o;9214:238::-;5906:7;;;;5905:8;5897:39;;;;;-1:-1:-1;;;5897:39:0;;;;;;;;;;;;-1:-1:-1;;;5897:39:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;9304:16:0;;9310:10;9304:16;;9296:46;;;;;-1:-1:-1;;;9296:46:0;;;;;;;;;;;;-1:-1:-1;;;9296:46:0;;;;;;;;;;;;;;;9368:10;9349:30;;;;:18;:30;;;;;;;;-1:-1:-1;;;;;9349:34:0;;;;;;;;;;;;:45;;-1:-1:-1;;9349:45:0;;;;;;;;;;9406:40;;;;;;;9349:34;;9368:10;9406:40;;;;;;;;;;;9214:238;;:::o;11378:99::-;4658:6;;-1:-1:-1;;;;;4658:6:0;4644:10;:20;4636:42;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;11451:20:0;;;;;:10;:20;;;;;11444:27;;-1:-1:-1;;11444:27:0;;;11378:99::o;8374:269::-;8478:4;8499:46;8521:4;8527:2;8531:7;8540:4;8499:21;:46::i;:::-;8491:101;;;;-1:-1:-1;;;8491:101:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8606:31;8619:4;8625:2;8629:7;8606:12;:31::i;:::-;8599:38;8374:269;-1:-1:-1;;;;;8374:269:0:o;6513:176::-;6569:13;6599:15;6606:7;6599:6;:15::i;:::-;6591:59;;;;;-1:-1:-1;;;6591:59:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;6664:19;;;;:10;:19;;;;;;;;;6657:26;;;;;;-1:-1:-1;;6657:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6664:19;;6657:26;;6664:19;6657:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6513:176;;;:::o;9458:141::-;-1:-1:-1;;;;;9558:25:0;;;9538:4;9558:25;;;:18;:25;;;;;;;;:35;;;;;;;;;;;;;;;9458:141::o;4844:218::-;4658:6;;-1:-1:-1;;;;;4658:6:0;4644:10;:20;4636:42;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;-1:-1:-1;;;4636:42:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;4929:22:0;;4921:61;;;;;-1:-1:-1;;;4921:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;5015:6;;4994:38;;-1:-1:-1;;;;;4994:38:0;;;;5015:6;;4994:38;;5015:6;;4994:38;5039:6;:17;;-1:-1:-1;;;;;;5039:17:0;-1:-1:-1;;;;;5039:17:0;;;;;;;;;;4844:218::o;12421:308::-;12504:4;12525:15;12532:7;12525:6;:15::i;:::-;12517:64;;;;-1:-1:-1;;;12517:64:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12588:13;12604:16;12612:7;12604;:16::i;:::-;12588:32;;12646:5;-1:-1:-1;;;;;12635:16:0;:7;-1:-1:-1;;;;;12635:16:0;;:51;;;;12679:7;-1:-1:-1;;;;;12655:31:0;:20;12667:7;12655:11;:20::i;:::-;-1:-1:-1;;;;;12655:31:0;;12635:51;:87;;;;12690:32;12707:5;12714:7;12690:16;:32::i;13050:158::-;13145:1;13109:24;;;:15;:24;;;;;;-1:-1:-1;;;;;13109:24:0;:38;13105:98;;13193:1;13158:24;;;:15;:24;;;;;:37;;-1:-1:-1;;;;;;13158:37:0;;;13105:98;13050:158;:::o;3980:163::-;4040:7;4070:2;4064;:8;;4056:38;;;;;-1:-1:-1;;;4056:38:0;;;;;;;;;;;;-1:-1:-1;;;4056:38:0;;;;;;;;;;;;;;;-1:-1:-1;4113:7:0;;;3980:163::o;4149:162::-;4209:7;4237;;;4259;;;;4251:37;;;;;-1:-1:-1;;;4251:37:0;;;;;;;;;;;;-1:-1:-1;;;4251:37:0;;;;;;;;;;;;;;;4304:1;4149:162;-1:-1:-1;;;4149:162:0:o;13784:465::-;-1:-1:-1;;;;;13896:18:0;;13871:22;13896:18;;;:12;:18;;;;;:25;:32;;13926:1;13896:32;:29;:32;:::i;:::-;13935:18;13956:26;;;:17;:26;;;;;;13871:57;;-1:-1:-1;13995:28:0;;;13991:220;;-1:-1:-1;;;;;14058:18:0;;14036:19;14058:18;;;:12;:18;;;;;:34;;14077:14;;14058:34;;;;;;;;;;;;;;14036:56;;14138:11;14105:12;:18;14118:4;-1:-1:-1;;;;;14105:18:0;-1:-1:-1;;;;;14105:18:0;;;;;;;;;;;;14124:10;14105:30;;;;;;;;;;;;;;;;;;;:44;;;;14160:30;;;:17;:30;;;;;:43;;;13991:220;-1:-1:-1;;;;;14219:18:0;;;;;;:12;:18;;;;;:24;;;;;;;;;;;;;;;;;;;;;;;;13784:465;;;;:::o;13444:175::-;-1:-1:-1;;;;;13553:16:0;;;;;;;:12;:16;;;;;;;;:23;;13524:26;;;:17;:26;;;;;:52;;;13583:16;;;39:1:-1;23:18;;45:23;;13583:30:0;;;;;;;;13444:175::o;13625:153::-;13724:10;:17;;13697:24;;;;:15;:24;;;;;:44;;;39:1:-1;23:18;;45:23;;13748:24:0;;;;;;;13625:153::o;14255:394::-;14357:10;:17;14332:22;;14357:24;;14379:1;14357:24;:21;:24;:::i;:::-;14388:18;14409:24;;;:15;:24;;;;;;14464:10;:26;;14332:49;;-1:-1:-1;14409:24:0;;14332:49;;14464:26;;;;;;;;;;;;;;14442:48;;14524:11;14499:10;14510;14499:22;;;;;;;;;;;;;;;;;;;:36;;;;14542:28;;;:15;:28;;;;;;:41;;;14592:10;:16;;;;;;;;;;;;;;;;;;;;;;;;14642:1;14615:15;:24;14631:7;14615:24;;;;;;;;;;;:28;;;;14255:394;;;;:::o;12735:309::-;12846:4;12864:14;12875:2;12864:10;:14::i;:::-;12859:49;;-1:-1:-1;12896:4:0;12889:11;;12859:49;12932:70;;-1:-1:-1;;;12932:70:0;;12969:10;12932:70;;;;;;-1:-1:-1;;;;;12932:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;12916:13;;12932:36;;;;;;12969:10;;12981:4;;12987:7;;12996:5;;12932:70;;;;;;;;;;;12916:13;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;12932:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12932:70:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12932:70:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12932:70:0;-1:-1:-1;;;;;;13017:20:0;-1:-1:-1;;;13017:20:0;;12735:309;-1:-1:-1;;;;;;12735:309:0:o;13214:224::-;13389:20;13424:8;;;13214:224::o;5069:10423::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5069:10423:0;;;-1:-1:-1;5069:10423:0;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;

Swarm Source

bzzr://9d787097ff0c884f00255c6b51fb61668d7d08d8750d7b2a0e6898968706b5f2
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.