ETH Price: $2,396.41 (-1.16%)
Gas: 3.94 Gwei

Token

Dream Catchers (DC3)
 

Overview

Max Total Supply

222 DC3

Holders

157

Market

Volume (24H)

N/A

Min Price (24H)

N/A

Max Price (24H)

N/A
Filtered by Token Holder
1133.eth
Balance
3 DC3
0x689a19f57077f682a1d7cc19d9066f1a834721a2
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:
DreamBigBeBig

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-03-23
*/

// SPDX-License-Identifier: MIT
/**
██████╗ ██████╗ ███████╗ █████╗ ███╗   ███╗    ██████╗ ██╗ ██████╗     ██████╗ ███████╗    ██████╗ ██╗ ██████╗ 
██╔══██╗██╔══██╗██╔════╝██╔══██╗████╗ ████║    ██╔══██╗██║██╔════╝     ██╔══██╗██╔════╝    ██╔══██╗██║██╔════╝ 
██║  ██║██████╔╝█████╗  ███████║██╔████╔██║    ██████╔╝██║██║  ███╗    ██████╔╝█████╗      ██████╔╝██║██║  ███╗
██║  ██║██╔══██╗██╔══╝  ██╔══██║██║╚██╔╝██║    ██╔══██╗██║██║   ██║    ██╔══██╗██╔══╝      ██╔══██╗██║██║   ██║
██████╔╝██║  ██║███████╗██║  ██║██║ ╚═╝ ██║    ██████╔╝██║╚██████╔╝    ██████╔╝███████╗    ██████╔╝██║╚██████╔╝
╚═════╝ ╚═╝  ╚═╝╚══════╝╚═╝  ╚═╝╚═╝     ╚═╝    ╚═════╝ ╚═╝ ╚═════╝     ╚═════╝ ╚══════╝    ╚═════╝ ╚═╝ ╚═════╝ 

created by @nyoungdumb of CoLabsLLC
**/

pragma solidity >=0.7.0 <0.9.0;

interface IERC165 {
    function supportsInterface(bytes4 interfaceId) external view returns (bool);
}

interface IERC721 is IERC165 {
    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) external view returns (uint256 balance);
    function ownerOf(uint256 tokenId) external view returns (address owner);
    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId
    ) external;
    function transferFrom(
        address from,
        address to,
        uint256 tokenId
    ) external;
    function approve(address to, uint256 tokenId) external;
    function getApproved(uint256 tokenId) external view returns (address operator);
    function setApprovalForAll(address operator, bool _approved) external;
    function isApprovedForAll(address owner, address operator) external view returns (bool);
    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId,
        bytes calldata data
    ) external;
}

interface IERC721Receiver {
    function onERC721Received(
        address operator,
        address from,
        uint256 tokenId,
        bytes calldata data
    ) external returns (bytes4);
}

interface IERC721Metadata is IERC721 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function tokenURI(uint256 tokenId) external view returns (string memory);
}

library Address {
    function isContract(address account) internal view returns (bool) {
        return account.code.length > 0;
    }
    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");
        (bool success, ) = recipient.call{value: amount}("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }
    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionCall(target, data, "Address: low-level call failed");
    }
    function functionCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, errorMessage);
    }
    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value
    ) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }
    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value,
        string memory errorMessage
    ) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        require(isContract(target), "Address: call to non-contract");
        (bool success, bytes memory returndata) = target.call{value: value}(data);
        return verifyCallResult(success, returndata, errorMessage);
    }
    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
        return functionStaticCall(target, data, "Address: low-level static call failed");
    }
    function functionStaticCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal view returns (bytes memory) {
        require(isContract(target), "Address: static call to non-contract");
        (bool success, bytes memory returndata) = target.staticcall(data);
        return verifyCallResult(success, returndata, errorMessage);
    }
    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionDelegateCall(target, data, "Address: low-level delegate call failed");
    }
    function functionDelegateCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal returns (bytes memory) {
        require(isContract(target), "Address: delegate call to non-contract");
        (bool success, bytes memory returndata) = target.delegatecall(data);
        return verifyCallResult(success, returndata, errorMessage);
    }
    function verifyCallResult(
        bool success,
        bytes memory returndata,
        string memory errorMessage
    ) internal pure returns (bytes memory) {
        if (success) {
            return returndata;
        } else {
            if (returndata.length > 0) {
                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

library Strings {
    bytes16 private constant _HEX_SYMBOLS = "0123456789abcdef";
    function toString(uint256 value) internal pure returns (string memory) {
        if (value == 0) {
            return "0";
        }
        uint256 temp = value;
        uint256 digits;
        while (temp != 0) {
            digits++;
            temp /= 10;
        }
        bytes memory buffer = new bytes(digits);
        while (value != 0) {
            digits -= 1;
            buffer[digits] = bytes1(uint8(48 + uint256(value % 10)));
            value /= 10;
        }
        return string(buffer);
    }
    function toHexString(uint256 value) internal pure returns (string memory) {
        if (value == 0) {
            return "0x00";
        }
        uint256 temp = value;
        uint256 length = 0;
        while (temp != 0) {
            length++;
            temp >>= 8;
        }
        return toHexString(value, length);
    }
    function toHexString(uint256 value, uint256 length) internal pure returns (string memory) {
        bytes memory buffer = new bytes(2 * length + 2);
        buffer[0] = "0";
        buffer[1] = "x";
        for (uint256 i = 2 * length + 1; i > 1; --i) {
            buffer[i] = _HEX_SYMBOLS[value & 0xf];
            value >>= 4;
        }
        require(value == 0, "Strings: hex length insufficient");
        return string(buffer);
    }
}
abstract contract ERC165 is IERC165 {
    function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {
        return interfaceId == type(IERC165).interfaceId;
    }
}

contract ERC721 is Context, ERC165, IERC721, IERC721Metadata {
    using Address for address;
    using Strings for uint256;
    string private _name;
    string private _symbol;
    mapping(uint256 => address) private _owners;
    mapping(address => uint256) private _balances;
    mapping(uint256 => address) private _tokenApprovals;
    mapping(address => mapping(address => bool)) private _operatorApprovals;
    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }
    function supportsInterface(bytes4 interfaceId) public view virtual override(ERC165, IERC165) returns (bool) {
        return
            interfaceId == type(IERC721).interfaceId ||
            interfaceId == type(IERC721Metadata).interfaceId ||
            super.supportsInterface(interfaceId);
    }
    function balanceOf(address owner) public view virtual override returns (uint256) {
        require(owner != address(0), "ERC721: balance query for the zero address");
        return _balances[owner];
    }
    function ownerOf(uint256 tokenId) public view virtual override returns (address) {
        address owner = _owners[tokenId];
        require(owner != address(0), "ERC721: owner query for nonexistent token");
        return owner;
    }
    function name() public view virtual override returns (string memory) {
        return _name;
    }
    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }
    function tokenURI(uint256 tokenId) public view virtual override returns (string memory) {
        require(_exists(tokenId), "ERC721Metadata: URI query for nonexistent token");
        string memory baseURI = _baseURI();
        return bytes(baseURI).length > 0 ? string(abi.encodePacked(baseURI, tokenId.toString())) : "";
    }
    function _baseURI() internal view virtual returns (string memory) {
        return "";
    }
    function approve(address to, uint256 tokenId) public virtual override {
        address owner = ERC721.ownerOf(tokenId);
        require(to != owner, "ERC721: approval to current owner");
        require(
            _msgSender() == owner || isApprovedForAll(owner, _msgSender()),
            "ERC721: approve caller is not owner nor approved for all"
        );
        _approve(to, tokenId);
    }
    function getApproved(uint256 tokenId) public view virtual override returns (address) {
        require(_exists(tokenId), "ERC721: approved query for nonexistent token");
        return _tokenApprovals[tokenId];
    }
    function setApprovalForAll(address operator, bool approved) public virtual override {
        _setApprovalForAll(_msgSender(), operator, approved);
    }
    function isApprovedForAll(address owner, address operator) public view virtual override returns (bool) {
        return _operatorApprovals[owner][operator];
    }
    function transferFrom(
        address from,
        address to,
        uint256 tokenId
    ) public virtual override {
        require(_isApprovedOrOwner(_msgSender(), tokenId), "ERC721: transfer caller is not owner nor approved");
        _transfer(from, to, tokenId);
    }
    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId
    ) public virtual override {
        safeTransferFrom(from, to, tokenId, "");
    }
    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId,
        bytes memory _data
    ) public virtual override {
        require(_isApprovedOrOwner(_msgSender(), tokenId), "ERC721: transfer caller is not owner nor approved");
        _safeTransfer(from, to, tokenId, _data);
    }
    function _safeTransfer(
        address from,
        address to,
        uint256 tokenId,
        bytes memory _data
    ) internal virtual {
        _transfer(from, to, tokenId);
        require(_checkOnERC721Received(from, to, tokenId, _data), "ERC721: transfer to non ERC721Receiver implementer");
    }
    function _exists(uint256 tokenId) internal view virtual returns (bool) {
        return _owners[tokenId] != address(0);
    }
    function _isApprovedOrOwner(address spender, uint256 tokenId) internal view virtual returns (bool) {
        require(_exists(tokenId), "ERC721: operator query for nonexistent token");
        address owner = ERC721.ownerOf(tokenId);
        return (spender == owner || getApproved(tokenId) == spender || isApprovedForAll(owner, spender));
    }
    function _safeMint(address to, uint256 tokenId) internal virtual {
        _safeMint(to, tokenId, "");
    }
    function _safeMint(
        address to,
        uint256 tokenId,
        bytes memory _data
    ) internal virtual {
        _mint(to, tokenId);
        require(
            _checkOnERC721Received(address(0), to, tokenId, _data),
            "ERC721: transfer to non ERC721Receiver implementer"
        );
    }
    function _mint(address to, uint256 tokenId) internal virtual {
        require(to != address(0), "ERC721: mint to the zero address");
        require(!_exists(tokenId), "ERC721: token already minted");
        _beforeTokenTransfer(address(0), to, tokenId);
        _balances[to] += 1;
        _owners[tokenId] = to;
        emit Transfer(address(0), to, tokenId);
        _afterTokenTransfer(address(0), to, tokenId);
    }
    function _burn(uint256 tokenId) internal virtual {
        address owner = ERC721.ownerOf(tokenId);
        _beforeTokenTransfer(owner, address(0), tokenId);
        _approve(address(0), tokenId);
        _balances[owner] -= 1;
        delete _owners[tokenId];
        emit Transfer(owner, address(0), tokenId);
        _afterTokenTransfer(owner, address(0), tokenId);
    }
    function _transfer(
        address from,
        address to,
        uint256 tokenId
    ) internal virtual {
        require(ERC721.ownerOf(tokenId) == from, "ERC721: transfer from incorrect owner");
        require(to != address(0), "ERC721: transfer to the zero address");
        _beforeTokenTransfer(from, to, tokenId);
        _approve(address(0), tokenId);
        _balances[from] -= 1;
        _balances[to] += 1;
        _owners[tokenId] = to;
        emit Transfer(from, to, tokenId);
        _afterTokenTransfer(from, to, tokenId);
    }
    function _approve(address to, uint256 tokenId) internal virtual {
        _tokenApprovals[tokenId] = to;
        emit Approval(ERC721.ownerOf(tokenId), to, tokenId);
    }
    function _setApprovalForAll(
        address owner,
        address operator,
        bool approved
    ) internal virtual {
        require(owner != operator, "ERC721: approve to caller");
        _operatorApprovals[owner][operator] = approved;
        emit ApprovalForAll(owner, operator, approved);
    }
    function _checkOnERC721Received(
        address from,
        address to,
        uint256 tokenId,
        bytes memory _data
    ) private returns (bool) {
        if (to.isContract()) {
            try IERC721Receiver(to).onERC721Received(_msgSender(), from, tokenId, _data) returns (bytes4 retval) {
                return retval == IERC721Receiver.onERC721Received.selector;
            } catch (bytes memory reason) {
                if (reason.length == 0) {
                    revert("ERC721: transfer to non ERC721Receiver implementer");
                } else {
                    assembly {
                        revert(add(32, reason), mload(reason))
                    }
                }
            }
        } else {
            return true;
        }
    }
    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 tokenId
    ) internal virtual {}
    function _afterTokenTransfer(
        address from,
        address to,
        uint256 tokenId
    ) internal virtual {}
}


abstract contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    constructor() {
        _transferOwnership(_msgSender());
    }
    function owner() public view virtual returns (address) {
        return _owner;
    }
    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}



library MerkleProof {
    function verify(
        bytes32[] memory proof,
        bytes32 root,
        bytes32 leaf
    ) internal pure returns (bool) {
        return processProof(proof, leaf) == root;
    }

    function processProof(bytes32[] memory proof, bytes32 leaf) internal pure returns (bytes32) {
        bytes32 computedHash = leaf;
        for (uint256 i = 0; i < proof.length; i++) {
            bytes32 proofElement = proof[i];
            if (computedHash <= proofElement) {
                // Hash(current computed hash + current element of the proof)
                computedHash = _efficientHash(computedHash, proofElement);
            } else {
                // Hash(current element of the proof + current computed hash)
                computedHash = _efficientHash(proofElement, computedHash);
            }
        }
        return computedHash;
    }

    function _efficientHash(bytes32 a, bytes32 b) private pure returns (bytes32 value) {
        assembly {
            mstore(0x00, a)
            mstore(0x20, b)
            value := keccak256(0x00, 0x40)
        }
    }
}

library Counters {
    struct Counter {
        // This variable should never be directly accessed by users of the library: interactions must be restricted to
        // the library's function. As of Solidity v0.5.2, this cannot be enforced, though there is a proposal to add
        // this feature: see https://github.com/ethereum/solidity/issues/4637
        uint256 _value; // default: 0
    }

    function current(Counter storage counter) internal view returns (uint256) {
        return counter._value;
    }

    function increment(Counter storage counter) internal {
        unchecked {
            counter._value += 1;
        }
    }
}

contract DreamBigBeBig is ERC721, Ownable {
    address payable[] public partners;
    uint256[] public shares;
    
    function changePartners(address payable[] memory newPartners, uint256[] memory newShares) public onlyOwner {
        delete partners;
        delete shares;
        uint256 length = newPartners.length;
        require(newPartners.length == newShares.length, "number of new partners must match number of new shares");
        for(uint256 i=0; i<length; i++) {
            partners.push(newPartners[i]);
            shares.push(newShares[i]);
        }
    }

  using Counters for Counters.Counter;
  using Strings for uint256;
  
  Counters.Counter public totalSupply;
  
  string private baseURI = "";
  string private baseExtension = ".json";
  uint256 public MVPCost = 0.06 ether;
  uint256 public cost = 0.07 ether;
  uint256 public MVPMaxMintAmount = 2;
  uint256 public maxMintAmount = 3;
  uint256 public maxSupply = 1200;
  uint256 public mintPerTransactionLimit = 3;
  uint256 public ownerReserveBackend = 38;
  bool public paused = true;
  bool public onlyMVP = true;
  bytes32 public MVPmerkleRoot;
  mapping(address => uint256) public addressMintedBalance;

  constructor(
    string memory _name,
    string memory _symbol
  ) 
  ERC721(_name, _symbol)
  { }
  
  function _baseURI() internal view virtual override returns (string memory) {
    return baseURI;
  }
  function setMVPMerkleRoot(bytes32 _newMVPMerkleRoot) public onlyOwner {
    MVPmerkleRoot = _newMVPMerkleRoot;
  }
  function ownerMint(uint256 _mintAmount) public payable onlyOwner{
    require(_mintAmount > 0, "need to mint at least 1 NFT");
    require(totalSupply.current() + _mintAmount <= maxSupply, "max NFT limit exceeded");
    
    for (uint256 i = 1; i <= _mintAmount; i++) {
        addressMintedBalance[msg.sender]++;
        totalSupply.increment();
       _safeMint(msg.sender, totalSupply.current());
    }
  }
  function mvpMint(uint256 _mintAmount, bytes32[] calldata proof) public payable {
    uint256 ownerMintedCount = addressMintedBalance[msg.sender];
    bytes32 leaf = keccak256(abi.encodePacked(msg.sender));
    require(!paused, "the contract is paused");
    require(MerkleProof.verify(proof, MVPmerkleRoot, leaf), "Invalid Merkle Tree proof supplied");
    require(onlyMVP = true, "MVP minting is over"); 
    require(_mintAmount > 0, "need to mint at least 1 NFT");
    require(msg.value >= MVPCost * _mintAmount, "insufficient funds");
    require(totalSupply.current() + _mintAmount <= maxSupply - ownerReserveBackend, "max NFT limit exceeded");
    require(_mintAmount <= mintPerTransactionLimit, "max NFT per transaction exceeded");
    require(ownerMintedCount + _mintAmount <= MVPMaxMintAmount, "Max NFT minting per address exceeded. Wait until public.");

    for (uint256 i = 1; i <= _mintAmount; i++) {
        addressMintedBalance[msg.sender]++;
        totalSupply.increment();
       _safeMint(msg.sender, totalSupply.current());
    }
  }

  function publicMint(uint256 _mintAmount) public payable {
    uint256 ownerMintedCount = addressMintedBalance[msg.sender];
    require(!paused, "the contract is paused");
    require(!onlyMVP, "Public sale hasn't started yet");
    require(_mintAmount > 0, "need to mint at least 1 NFT");
    require(msg.value >= cost * _mintAmount, "insufficient funds");
    require(totalSupply.current() + _mintAmount <= maxSupply - ownerReserveBackend, "max NFT limit exceeded");
    require(_mintAmount <= mintPerTransactionLimit, "max NFT per transaction exceeded");
    require(ownerMintedCount + _mintAmount <= maxMintAmount, "Max NFT minting per address exceeded");
    for (uint256 i = 1; i <= _mintAmount; i++) {
        addressMintedBalance[msg.sender]++;
        totalSupply.increment();
       _safeMint(msg.sender, totalSupply.current());
    }
  }



  function tokenURI(uint256 tokenId)
    public
    view
    virtual
    override
    returns (string memory)
  {
    require(
      _exists(tokenId),
      "ERC721Metadata: URI query for nonexistent token"
    );   
    string memory currentBaseURI = _baseURI();
    return bytes(currentBaseURI).length > 0
        ? string(abi.encodePacked(currentBaseURI, tokenId.toString(), baseExtension))
        : "";
  }
  function setMintPerTransactionLimit(uint256 _limit) public onlyOwner {
    mintPerTransactionLimit = _limit;
  } 
  function setCost(uint256 _newCost) public onlyOwner {
    cost = _newCost;
  }

  function setMVPCost(uint256 _newMVPCost) public onlyOwner {
    MVPCost = _newMVPCost;
  }

  
  function setMaxMintAmount(uint256 _newMaxMintAmount) public onlyOwner {
    maxMintAmount = _newMaxMintAmount;
  }
  function setBaseURI(string memory _newBaseURI) public onlyOwner {
    baseURI = _newBaseURI;
  }
  function setBaseExtension(string memory _newBaseExtension) public onlyOwner {
    baseExtension = _newBaseExtension;
  } 
  function pause(bool _state) public onlyOwner {
    paused = _state;
  } 
  function setonlyMVP(bool _state) public onlyOwner {
    onlyMVP = _state;
  }


  function getTotalShares() public view returns (uint256) {
        uint256 totalShares;
        uint256 length = partners.length;
        for (uint256 i = 0; i<length; i++) {
            totalShares += shares[i];
    }
      return totalShares;
  }



  function withdraw() public payable {
    address partner;
    uint256 share;
    uint256 totalShares = getTotalShares();
    uint256 length = partners.length;
    for (uint256 j = 0; j<length; j++) {
        partner = partners[j];
        share = shares[j];
        (bool success, ) = partner.call{value: address(this).balance * share/totalShares}("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"}],"stateMutability":"nonpayable","type":"constructor"},{"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"},{"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"},{"inputs":[],"name":"MVPCost","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MVPMaxMintAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MVPmerkleRoot","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"addressMintedBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"approve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address payable[]","name":"newPartners","type":"address[]"},{"internalType":"uint256[]","name":"newShares","type":"uint256[]"}],"name":"changePartners","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cost","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxMintAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mintPerTransactionLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_mintAmount","type":"uint256"},{"internalType":"bytes32[]","name":"proof","type":"bytes32[]"}],"name":"mvpMint","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"onlyMVP","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_mintAmount","type":"uint256"}],"name":"ownerMint","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ownerReserveBackend","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"partners","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_state","type":"bool"}],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_mintAmount","type":"uint256"}],"name":"publicMint","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"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":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_newBaseExtension","type":"string"}],"name":"setBaseExtension","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_newBaseURI","type":"string"}],"name":"setBaseURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newCost","type":"uint256"}],"name":"setCost","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newMVPCost","type":"uint256"}],"name":"setMVPCost","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_newMVPMerkleRoot","type":"bytes32"}],"name":"setMVPMerkleRoot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newMaxMintAmount","type":"uint256"}],"name":"setMaxMintAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_limit","type":"uint256"}],"name":"setMintPerTransactionLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_state","type":"bool"}],"name":"setonlyMVP","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"shares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"_value","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"payable","type":"function"}]

608060405260405180602001604052806000815250600a90805190602001906200002b9291906200023f565b506040518060400160405280600581526020017f2e6a736f6e000000000000000000000000000000000000000000000000000000815250600b9080519060200190620000799291906200023f565b5066d529ae9e860000600c5566f8b0a10e470000600d556002600e556003600f556104b0601055600360115560266012556001601360006101000a81548160ff0219169083151502179055506001601360016101000a81548160ff021916908315150217905550348015620000ed57600080fd5b506040516200572a3803806200572a83398181016040528101906200011391906200036d565b818181600090805190602001906200012d9291906200023f565b508060019080519060200190620001469291906200023f565b505050620001696200015d6200017160201b60201c565b6200017960201b60201c565b505062000576565b600033905090565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8280546200024d9062000487565b90600052602060002090601f016020900481019282620002715760008555620002bd565b82601f106200028c57805160ff1916838001178555620002bd565b82800160010185558215620002bd579182015b82811115620002bc5782518255916020019190600101906200029f565b5b509050620002cc9190620002d0565b5090565b5b80821115620002eb576000816000905550600101620002d1565b5090565b60006200030662000300846200041b565b620003f2565b90508281526020810184848401111562000325576200032462000556565b5b6200033284828562000451565b509392505050565b600082601f83011262000352576200035162000551565b5b815162000364848260208601620002ef565b91505092915050565b6000806040838503121562000387576200038662000560565b5b600083015167ffffffffffffffff811115620003a857620003a76200055b565b5b620003b6858286016200033a565b925050602083015167ffffffffffffffff811115620003da57620003d96200055b565b5b620003e8858286016200033a565b9150509250929050565b6000620003fe62000411565b90506200040c8282620004bd565b919050565b6000604051905090565b600067ffffffffffffffff82111562000439576200043862000522565b5b620004448262000565565b9050602081019050919050565b60005b838110156200047157808201518184015260208101905062000454565b8381111562000481576000848401525b50505050565b60006002820490506001821680620004a057607f821691505b60208210811415620004b757620004b6620004f3565b5b50919050565b620004c88262000565565b810181811067ffffffffffffffff82111715620004ea57620004e962000522565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b6151a480620005866000396000f3fe6080604052600436106102675760003560e01c806368a6000111610144578063b88d4fde116100b6578063d5abeb011161007a578063d5abeb0114610905578063da3ef23f14610930578063db4c59ae14610959578063e985e9c514610982578063f19e75d4146109bf578063f2fde38b146109db57610267565b8063b88d4fde1461080e578063c1b26a2b14610837578063c3b49d0414610860578063c87b56dd1461089d578063d5002f2e146108da57610267565b80639475405c116101085780639475405c1461071f57806395d89b411461074a578063987b3c1b14610775578063a22cb465146107a0578063a9244597146107c9578063b26656e0146107e557610267565b806368a600011461063a57806369183787146106655780636e43f5e71461068e57806370a08231146106b75780638da5cb5b146106f457610267565b80632c049c70116101dd57806344a0d68a116101a157806344a0d68a1461051857806355f804b31461054157806357a858fc1461056a5780635c975abb146105a75780636352211e146105d25780636568bcfc1461060f57610267565b80632c049c70146104735780632db115441461049e57806332fe5d8b146104ba5780633ccfd60b146104e557806342842e0e146104ef57610267565b8063095ea7b31161022f578063095ea7b31461036357806313faede61461038c57806318160ddd146103b757806318cae269146103e2578063239c70ae1461041f57806323b872dd1461044a57610267565b806301ffc9a71461026c57806302329a29146102a957806306fdde03146102d2578063081812fc146102fd578063088a4ed01461033a575b600080fd5b34801561027857600080fd5b50610293600480360381019061028e919061390d565b610a04565b6040516102a0919061409b565b60405180910390f35b3480156102b557600080fd5b506102d060048036038101906102cb91906138b3565b610ae6565b005b3480156102de57600080fd5b506102e7610b7f565b6040516102f491906140d1565b60405180910390f35b34801561030957600080fd5b50610324600480360381019061031f91906139b0565b610c11565b6040516103319190614019565b60405180910390f35b34801561034657600080fd5b50610361600480360381019061035c91906139b0565b610c96565b005b34801561036f57600080fd5b5061038a600480360381019061038591906137fb565b610d1c565b005b34801561039857600080fd5b506103a1610e34565b6040516103ae9190614473565b60405180910390f35b3480156103c357600080fd5b506103cc610e3a565b6040516103d99190614473565b60405180910390f35b3480156103ee57600080fd5b5061040960048036038101906104049190613678565b610e46565b6040516104169190614473565b60405180910390f35b34801561042b57600080fd5b50610434610e5e565b6040516104419190614473565b60405180910390f35b34801561045657600080fd5b50610471600480360381019061046c91906136e5565b610e64565b005b34801561047f57600080fd5b50610488610ec4565b6040516104959190614473565b60405180910390f35b6104b860048036038101906104b391906139b0565b610eca565b005b3480156104c657600080fd5b506104cf6111d4565b6040516104dc9190614473565b60405180910390f35b6104ed6111da565b005b3480156104fb57600080fd5b50610516600480360381019061051191906136e5565b61133d565b005b34801561052457600080fd5b5061053f600480360381019061053a91906139b0565b61135d565b005b34801561054d57600080fd5b5061056860048036038101906105639190613967565b6113e3565b005b34801561057657600080fd5b50610591600480360381019061058c91906139b0565b611479565b60405161059e9190614473565b60405180910390f35b3480156105b357600080fd5b506105bc61149d565b6040516105c9919061409b565b60405180910390f35b3480156105de57600080fd5b506105f960048036038101906105f491906139b0565b6114b0565b6040516106069190614019565b60405180910390f35b34801561061b57600080fd5b50610624611562565b604051610631919061409b565b60405180910390f35b34801561064657600080fd5b5061064f611575565b60405161065c91906140b6565b60405180910390f35b34801561067157600080fd5b5061068c600480360381019061068791906138b3565b61157b565b005b34801561069a57600080fd5b506106b560048036038101906106b0919061383b565b611614565b005b3480156106c357600080fd5b506106de60048036038101906106d99190613678565b6117da565b6040516106eb9190614473565b60405180910390f35b34801561070057600080fd5b50610709611892565b6040516107169190614019565b60405180910390f35b34801561072b57600080fd5b506107346118bc565b6040516107419190614473565b60405180910390f35b34801561075657600080fd5b5061075f6118c2565b60405161076c91906140d1565b60405180910390f35b34801561078157600080fd5b5061078a611954565b6040516107979190614473565b60405180910390f35b3480156107ac57600080fd5b506107c760048036038101906107c291906137bb565b61195a565b005b6107e360048036038101906107de91906139dd565b611970565b005b3480156107f157600080fd5b5061080c600480360381019061080791906139b0565b611d3e565b005b34801561081a57600080fd5b5061083560048036038101906108309190613738565b611dc4565b005b34801561084357600080fd5b5061085e600480360381019061085991906139b0565b611e26565b005b34801561086c57600080fd5b50610887600480360381019061088291906139b0565b611eac565b6040516108949190614034565b60405180910390f35b3480156108a957600080fd5b506108c460048036038101906108bf91906139b0565b611eeb565b6040516108d191906140d1565b60405180910390f35b3480156108e657600080fd5b506108ef611f95565b6040516108fc9190614473565b60405180910390f35b34801561091157600080fd5b5061091a611ff5565b6040516109279190614473565b60405180910390f35b34801561093c57600080fd5b5061095760048036038101906109529190613967565b611ffb565b005b34801561096557600080fd5b50610980600480360381019061097b91906138e0565b612091565b005b34801561098e57600080fd5b506109a960048036038101906109a491906136a5565b612117565b6040516109b6919061409b565b60405180910390f35b6109d960048036038101906109d491906139b0565b6121ab565b005b3480156109e757600080fd5b50610a0260048036038101906109fd9190613678565b61235a565b005b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610acf57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610adf5750610ade82612452565b5b9050919050565b610aee6124bc565b73ffffffffffffffffffffffffffffffffffffffff16610b0c611892565b73ffffffffffffffffffffffffffffffffffffffff1614610b62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5990614333565b60405180910390fd5b80601360006101000a81548160ff02191690831515021790555050565b606060008054610b8e906147b7565b80601f0160208091040260200160405190810160405280929190818152602001828054610bba906147b7565b8015610c075780601f10610bdc57610100808354040283529160200191610c07565b820191906000526020600020905b815481529060010190602001808311610bea57829003601f168201915b5050505050905090565b6000610c1c826124c4565b610c5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5290614313565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b610c9e6124bc565b73ffffffffffffffffffffffffffffffffffffffff16610cbc611892565b73ffffffffffffffffffffffffffffffffffffffff1614610d12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0990614333565b60405180910390fd5b80600f8190555050565b6000610d27826114b0565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8f906143d3565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610db76124bc565b73ffffffffffffffffffffffffffffffffffffffff161480610de65750610de581610de06124bc565b612117565b5b610e25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1c90614253565b60405180910390fd5b610e2f8383612530565b505050565b600d5481565b60098060000154905081565b60156020528060005260406000206000915090505481565b600f5481565b610e75610e6f6124bc565b826125e9565b610eb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eab90614413565b60405180910390fd5b610ebf8383836126c7565b505050565b60115481565b6000601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050601360009054906101000a900460ff1615610f5e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5590614373565b60405180910390fd5b601360019054906101000a900460ff1615610fae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa590614433565b60405180910390fd5b60008211610ff1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fe890614453565b60405180910390fd5b81600d54610fff9190614657565b341015611041576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611038906143f3565b60405180910390fd5b60125460105461105191906146b1565b8261105c600961292e565b61106691906145d0565b11156110a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109e906142b3565b60405180910390fd5b6011548211156110ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e390614353565b60405180910390fd5b600f5482826110fb91906145d0565b111561113c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113390614193565b60405180910390fd5b6000600190505b8281116111cf57601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919061119a9061481a565b91905055506111a9600961293c565b6111bc336111b7600961292e565b612952565b80806111c79061481a565b915050611143565b505050565b600e5481565b60008060006111e7611f95565b90506000600780549050905060005b81811015611336576007818154811061121257611211614945565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1694506008818154811061125357611252614945565b5b9060005260206000200154935060008573ffffffffffffffffffffffffffffffffffffffff168486476112869190614657565b6112909190614626565b60405161129c90614004565b60006040518083038185875af1925050503d80600081146112d9576040519150601f19603f3d011682016040523d82523d6000602084013e6112de565b606091505b5050905080611322576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131990614213565b60405180910390fd5b50808061132e9061481a565b9150506111f6565b5050505050565b61135883838360405180602001604052806000815250611dc4565b505050565b6113656124bc565b73ffffffffffffffffffffffffffffffffffffffff16611383611892565b73ffffffffffffffffffffffffffffffffffffffff16146113d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113d090614333565b60405180910390fd5b80600d8190555050565b6113eb6124bc565b73ffffffffffffffffffffffffffffffffffffffff16611409611892565b73ffffffffffffffffffffffffffffffffffffffff161461145f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145690614333565b60405180910390fd5b80600a908051906020019061147592919061328e565b5050565b6008818154811061148957600080fd5b906000526020600020016000915090505481565b601360009054906101000a900460ff1681565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611559576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155090614293565b60405180910390fd5b80915050919050565b601360019054906101000a900460ff1681565b60145481565b6115836124bc565b73ffffffffffffffffffffffffffffffffffffffff166115a1611892565b73ffffffffffffffffffffffffffffffffffffffff16146115f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ee90614333565b60405180910390fd5b80601360016101000a81548160ff02191690831515021790555050565b61161c6124bc565b73ffffffffffffffffffffffffffffffffffffffff1661163a611892565b73ffffffffffffffffffffffffffffffffffffffff1614611690576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168790614333565b60405180910390fd5b6007600061169e9190613314565b600860006116ac9190613335565b60008251905081518351146116f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ed906141f3565b60405180910390fd5b60005b818110156117d457600784828151811061171657611715614945565b5b60200260200101519080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600883828151811061179357611792614945565b5b6020026020010151908060018154018082558091505060019003906000526020600020016000909190919091505580806117cc9061481a565b9150506116f9565b50505050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561184b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161184290614273565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60125481565b6060600180546118d1906147b7565b80601f01602080910402602001604051908101604052809291908181526020018280546118fd906147b7565b801561194a5780601f1061191f5761010080835404028352916020019161194a565b820191906000526020600020905b81548152906001019060200180831161192d57829003601f168201915b5050505050905090565b600c5481565b61196c6119656124bc565b8383612970565b5050565b6000601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000336040516020016119c79190613fb8565b604051602081830303815290604052805190602001209050601360009054906101000a900460ff1615611a2f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2690614373565b60405180910390fd5b611a7d848480806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505060145483612add565b611abc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ab3906142d3565b60405180910390fd5b6001601360016101000a81548160ff0219169083151502179055611b15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0c90614393565b60405180910390fd5b60008511611b58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b4f90614453565b60405180910390fd5b84600c54611b669190614657565b341015611ba8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9f906143f3565b60405180910390fd5b601254601054611bb891906146b1565b85611bc3600961292e565b611bcd91906145d0565b1115611c0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c05906142b3565b60405180910390fd5b601154851115611c53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c4a90614353565b60405180910390fd5b600e548583611c6291906145d0565b1115611ca3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c9a906140f3565b60405180910390fd5b6000600190505b858111611d3657601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190611d019061481a565b9190505550611d10600961293c565b611d2333611d1e600961292e565b612952565b8080611d2e9061481a565b915050611caa565b505050505050565b611d466124bc565b73ffffffffffffffffffffffffffffffffffffffff16611d64611892565b73ffffffffffffffffffffffffffffffffffffffff1614611dba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611db190614333565b60405180910390fd5b8060118190555050565b611dd5611dcf6124bc565b836125e9565b611e14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e0b90614413565b60405180910390fd5b611e2084848484612af4565b50505050565b611e2e6124bc565b73ffffffffffffffffffffffffffffffffffffffff16611e4c611892565b73ffffffffffffffffffffffffffffffffffffffff1614611ea2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e9990614333565b60405180910390fd5b80600c8190555050565b60078181548110611ebc57600080fd5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6060611ef6826124c4565b611f35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f2c906143b3565b60405180910390fd5b6000611f3f612b50565b90506000815111611f5f5760405180602001604052806000815250611f8d565b80611f6984612be2565b600b604051602001611f7d93929190613fd3565b6040516020818303038152906040525b915050919050565b6000806000600780549050905060005b81811015611fec5760088181548110611fc157611fc0614945565b5b906000526020600020015483611fd791906145d0565b92508080611fe49061481a565b915050611fa5565b50819250505090565b60105481565b6120036124bc565b73ffffffffffffffffffffffffffffffffffffffff16612021611892565b73ffffffffffffffffffffffffffffffffffffffff1614612077576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161206e90614333565b60405180910390fd5b80600b908051906020019061208d92919061328e565b5050565b6120996124bc565b73ffffffffffffffffffffffffffffffffffffffff166120b7611892565b73ffffffffffffffffffffffffffffffffffffffff161461210d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161210490614333565b60405180910390fd5b8060148190555050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6121b36124bc565b73ffffffffffffffffffffffffffffffffffffffff166121d1611892565b73ffffffffffffffffffffffffffffffffffffffff1614612227576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161221e90614333565b60405180910390fd5b6000811161226a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161226190614453565b60405180910390fd5b60105481612278600961292e565b61228291906145d0565b11156122c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122ba906142b3565b60405180910390fd5b6000600190505b81811161235657601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906123219061481a565b9190505550612330600961293c565b6123433361233e600961292e565b612952565b808061234e9061481a565b9150506122ca565b5050565b6123626124bc565b73ffffffffffffffffffffffffffffffffffffffff16612380611892565b73ffffffffffffffffffffffffffffffffffffffff16146123d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123cd90614333565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612446576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161243d90614133565b60405180910390fd5b61244f81612d43565b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600033905090565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166125a3836114b0565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60006125f4826124c4565b612633576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161262a90614233565b60405180910390fd5b600061263e836114b0565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806126ad57508373ffffffffffffffffffffffffffffffffffffffff1661269584610c11565b73ffffffffffffffffffffffffffffffffffffffff16145b806126be57506126bd8185612117565b5b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166126e7826114b0565b73ffffffffffffffffffffffffffffffffffffffff161461273d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161273490614153565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156127ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127a4906141b3565b60405180910390fd5b6127b8838383612e09565b6127c3600082612530565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461281391906146b1565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461286a91906145d0565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612929838383612e0e565b505050565b600081600001549050919050565b6001816000016000828254019250508190555050565b61296c828260405180602001604052806000815250612e13565b5050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156129df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129d6906141d3565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051612ad0919061409b565b60405180910390a3505050565b600082612aea8584612e6e565b1490509392505050565b612aff8484846126c7565b612b0b84848484612ee3565b612b4a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b4190614113565b60405180910390fd5b50505050565b6060600a8054612b5f906147b7565b80601f0160208091040260200160405190810160405280929190818152602001828054612b8b906147b7565b8015612bd85780601f10612bad57610100808354040283529160200191612bd8565b820191906000526020600020905b815481529060010190602001808311612bbb57829003601f168201915b5050505050905090565b60606000821415612c2a576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612d3e565b600082905060005b60008214612c5c578080612c459061481a565b915050600a82612c559190614626565b9150612c32565b60008167ffffffffffffffff811115612c7857612c77614974565b5b6040519080825280601f01601f191660200182016040528015612caa5781602001600182028036833780820191505090505b5090505b60008514612d3757600182612cc391906146b1565b9150600a85612cd29190614887565b6030612cde91906145d0565b60f81b818381518110612cf457612cf3614945565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85612d309190614626565b9450612cae565b8093505050505b919050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b505050565b505050565b612e1d838361307a565b612e2a6000848484612ee3565b612e69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e6090614113565b60405180910390fd5b505050565b60008082905060005b8451811015612ed8576000858281518110612e9557612e94614945565b5b60200260200101519050808311612eb757612eb08382613254565b9250612ec4565b612ec18184613254565b92505b508080612ed09061481a565b915050612e77565b508091505092915050565b6000612f048473ffffffffffffffffffffffffffffffffffffffff1661326b565b1561306d578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02612f2d6124bc565b8786866040518563ffffffff1660e01b8152600401612f4f949392919061404f565b602060405180830381600087803b158015612f6957600080fd5b505af1925050508015612f9a57506040513d601f19601f82011682018060405250810190612f97919061393a565b60015b61301d573d8060008114612fca576040519150601f19603f3d011682016040523d82523d6000602084013e612fcf565b606091505b50600081511415613015576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161300c90614113565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050613072565b600190505b949350505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156130ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130e1906142f3565b60405180910390fd5b6130f3816124c4565b15613133576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161312a90614173565b60405180910390fd5b61313f60008383612e09565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461318f91906145d0565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461325060008383612e0e565b5050565b600082600052816020526040600020905092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b82805461329a906147b7565b90600052602060002090601f0160209004810192826132bc5760008555613303565b82601f106132d557805160ff1916838001178555613303565b82800160010185558215613303579182015b828111156133025782518255916020019190600101906132e7565b5b5090506133109190613356565b5090565b50805460008255906000526020600020908101906133329190613356565b50565b50805460008255906000526020600020908101906133539190613356565b50565b5b8082111561336f576000816000905550600101613357565b5090565b6000613386613381846144b3565b61448e565b905080838252602082019050828560208602820111156133a9576133a86149ad565b5b60005b858110156133d957816133bf88826134ec565b8452602084019350602083019250506001810190506133ac565b5050509392505050565b60006133f66133f1846144df565b61448e565b90508083825260208201905082856020860282011115613419576134186149ad565b5b60005b85811015613449578161342f8882613663565b84526020840193506020830192505060018101905061341c565b5050509392505050565b60006134666134618461450b565b61448e565b905082815260208101848484011115613482576134816149b2565b5b61348d848285614775565b509392505050565b60006134a86134a38461453c565b61448e565b9050828152602081018484840111156134c4576134c36149b2565b5b6134cf848285614775565b509392505050565b6000813590506134e6816150e4565b92915050565b6000813590506134fb816150fb565b92915050565b600082601f830112613516576135156149a8565b5b8135613526848260208601613373565b91505092915050565b60008083601f840112613545576135446149a8565b5b8235905067ffffffffffffffff811115613562576135616149a3565b5b60208301915083602082028301111561357e5761357d6149ad565b5b9250929050565b600082601f83011261359a576135996149a8565b5b81356135aa8482602086016133e3565b91505092915050565b6000813590506135c281615112565b92915050565b6000813590506135d781615129565b92915050565b6000813590506135ec81615140565b92915050565b60008151905061360181615140565b92915050565b600082601f83011261361c5761361b6149a8565b5b813561362c848260208601613453565b91505092915050565b600082601f83011261364a576136496149a8565b5b813561365a848260208601613495565b91505092915050565b60008135905061367281615157565b92915050565b60006020828403121561368e5761368d6149bc565b5b600061369c848285016134d7565b91505092915050565b600080604083850312156136bc576136bb6149bc565b5b60006136ca858286016134d7565b92505060206136db858286016134d7565b9150509250929050565b6000806000606084860312156136fe576136fd6149bc565b5b600061370c868287016134d7565b935050602061371d868287016134d7565b925050604061372e86828701613663565b9150509250925092565b60008060008060808587031215613752576137516149bc565b5b6000613760878288016134d7565b9450506020613771878288016134d7565b935050604061378287828801613663565b925050606085013567ffffffffffffffff8111156137a3576137a26149b7565b5b6137af87828801613607565b91505092959194509250565b600080604083850312156137d2576137d16149bc565b5b60006137e0858286016134d7565b92505060206137f1858286016135b3565b9150509250929050565b60008060408385031215613812576138116149bc565b5b6000613820858286016134d7565b925050602061383185828601613663565b9150509250929050565b60008060408385031215613852576138516149bc565b5b600083013567ffffffffffffffff8111156138705761386f6149b7565b5b61387c85828601613501565b925050602083013567ffffffffffffffff81111561389d5761389c6149b7565b5b6138a985828601613585565b9150509250929050565b6000602082840312156138c9576138c86149bc565b5b60006138d7848285016135b3565b91505092915050565b6000602082840312156138f6576138f56149bc565b5b6000613904848285016135c8565b91505092915050565b600060208284031215613923576139226149bc565b5b6000613931848285016135dd565b91505092915050565b6000602082840312156139505761394f6149bc565b5b600061395e848285016135f2565b91505092915050565b60006020828403121561397d5761397c6149bc565b5b600082013567ffffffffffffffff81111561399b5761399a6149b7565b5b6139a784828501613635565b91505092915050565b6000602082840312156139c6576139c56149bc565b5b60006139d484828501613663565b91505092915050565b6000806000604084860312156139f6576139f56149bc565b5b6000613a0486828701613663565b935050602084013567ffffffffffffffff811115613a2557613a246149b7565b5b613a318682870161352f565b92509250509250925092565b613a46816146f7565b82525050565b613a55816146e5565b82525050565b613a6c613a67826146e5565b614863565b82525050565b613a7b81614709565b82525050565b613a8a81614715565b82525050565b6000613a9b82614582565b613aa58185614598565b9350613ab5818560208601614784565b613abe816149c1565b840191505092915050565b6000613ad48261458d565b613ade81856145b4565b9350613aee818560208601614784565b613af7816149c1565b840191505092915050565b6000613b0d8261458d565b613b1781856145c5565b9350613b27818560208601614784565b80840191505092915050565b60008154613b40816147b7565b613b4a81866145c5565b94506001821660008114613b655760018114613b7657613ba9565b60ff19831686528186019350613ba9565b613b7f8561456d565b60005b83811015613ba157815481890152600182019150602081019050613b82565b838801955050505b50505092915050565b6000613bbf6038836145b4565b9150613bca826149df565b604082019050919050565b6000613be26032836145b4565b9150613bed82614a2e565b604082019050919050565b6000613c056026836145b4565b9150613c1082614a7d565b604082019050919050565b6000613c286025836145b4565b9150613c3382614acc565b604082019050919050565b6000613c4b601c836145b4565b9150613c5682614b1b565b602082019050919050565b6000613c6e6024836145b4565b9150613c7982614b44565b604082019050919050565b6000613c916024836145b4565b9150613c9c82614b93565b604082019050919050565b6000613cb46019836145b4565b9150613cbf82614be2565b602082019050919050565b6000613cd76036836145b4565b9150613ce282614c0b565b604082019050919050565b6000613cfa603a836145b4565b9150613d0582614c5a565b604082019050919050565b6000613d1d602c836145b4565b9150613d2882614ca9565b604082019050919050565b6000613d406038836145b4565b9150613d4b82614cf8565b604082019050919050565b6000613d63602a836145b4565b9150613d6e82614d47565b604082019050919050565b6000613d866029836145b4565b9150613d9182614d96565b604082019050919050565b6000613da96016836145b4565b9150613db482614de5565b602082019050919050565b6000613dcc6022836145b4565b9150613dd782614e0e565b604082019050919050565b6000613def6020836145b4565b9150613dfa82614e5d565b602082019050919050565b6000613e12602c836145b4565b9150613e1d82614e86565b604082019050919050565b6000613e356020836145b4565b9150613e4082614ed5565b602082019050919050565b6000613e586020836145b4565b9150613e6382614efe565b602082019050919050565b6000613e7b6016836145b4565b9150613e8682614f27565b602082019050919050565b6000613e9e6013836145b4565b9150613ea982614f50565b602082019050919050565b6000613ec1602f836145b4565b9150613ecc82614f79565b604082019050919050565b6000613ee46021836145b4565b9150613eef82614fc8565b604082019050919050565b6000613f076000836145a9565b9150613f1282615017565b600082019050919050565b6000613f2a6012836145b4565b9150613f358261501a565b602082019050919050565b6000613f4d6031836145b4565b9150613f5882615043565b604082019050919050565b6000613f70601e836145b4565b9150613f7b82615092565b602082019050919050565b6000613f93601b836145b4565b9150613f9e826150bb565b602082019050919050565b613fb28161476b565b82525050565b6000613fc48284613a5b565b60148201915081905092915050565b6000613fdf8286613b02565b9150613feb8285613b02565b9150613ff78284613b33565b9150819050949350505050565b600061400f82613efa565b9150819050919050565b600060208201905061402e6000830184613a4c565b92915050565b60006020820190506140496000830184613a3d565b92915050565b60006080820190506140646000830187613a4c565b6140716020830186613a4c565b61407e6040830185613fa9565b81810360608301526140908184613a90565b905095945050505050565b60006020820190506140b06000830184613a72565b92915050565b60006020820190506140cb6000830184613a81565b92915050565b600060208201905081810360008301526140eb8184613ac9565b905092915050565b6000602082019050818103600083015261410c81613bb2565b9050919050565b6000602082019050818103600083015261412c81613bd5565b9050919050565b6000602082019050818103600083015261414c81613bf8565b9050919050565b6000602082019050818103600083015261416c81613c1b565b9050919050565b6000602082019050818103600083015261418c81613c3e565b9050919050565b600060208201905081810360008301526141ac81613c61565b9050919050565b600060208201905081810360008301526141cc81613c84565b9050919050565b600060208201905081810360008301526141ec81613ca7565b9050919050565b6000602082019050818103600083015261420c81613cca565b9050919050565b6000602082019050818103600083015261422c81613ced565b9050919050565b6000602082019050818103600083015261424c81613d10565b9050919050565b6000602082019050818103600083015261426c81613d33565b9050919050565b6000602082019050818103600083015261428c81613d56565b9050919050565b600060208201905081810360008301526142ac81613d79565b9050919050565b600060208201905081810360008301526142cc81613d9c565b9050919050565b600060208201905081810360008301526142ec81613dbf565b9050919050565b6000602082019050818103600083015261430c81613de2565b9050919050565b6000602082019050818103600083015261432c81613e05565b9050919050565b6000602082019050818103600083015261434c81613e28565b9050919050565b6000602082019050818103600083015261436c81613e4b565b9050919050565b6000602082019050818103600083015261438c81613e6e565b9050919050565b600060208201905081810360008301526143ac81613e91565b9050919050565b600060208201905081810360008301526143cc81613eb4565b9050919050565b600060208201905081810360008301526143ec81613ed7565b9050919050565b6000602082019050818103600083015261440c81613f1d565b9050919050565b6000602082019050818103600083015261442c81613f40565b9050919050565b6000602082019050818103600083015261444c81613f63565b9050919050565b6000602082019050818103600083015261446c81613f86565b9050919050565b60006020820190506144886000830184613fa9565b92915050565b60006144986144a9565b90506144a482826147e9565b919050565b6000604051905090565b600067ffffffffffffffff8211156144ce576144cd614974565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156144fa576144f9614974565b5b602082029050602081019050919050565b600067ffffffffffffffff82111561452657614525614974565b5b61452f826149c1565b9050602081019050919050565b600067ffffffffffffffff82111561455757614556614974565b5b614560826149c1565b9050602081019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b600081905092915050565b60006145db8261476b565b91506145e68361476b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561461b5761461a6148b8565b5b828201905092915050565b60006146318261476b565b915061463c8361476b565b92508261464c5761464b6148e7565b5b828204905092915050565b60006146628261476b565b915061466d8361476b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156146a6576146a56148b8565b5b828202905092915050565b60006146bc8261476b565b91506146c78361476b565b9250828210156146da576146d96148b8565b5b828203905092915050565b60006146f08261474b565b9050919050565b60006147028261474b565b9050919050565b60008115159050919050565b6000819050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b838110156147a2578082015181840152602081019050614787565b838111156147b1576000848401525b50505050565b600060028204905060018216806147cf57607f821691505b602082108114156147e3576147e2614916565b5b50919050565b6147f2826149c1565b810181811067ffffffffffffffff8211171561481157614810614974565b5b80604052505050565b60006148258261476b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415614858576148576148b8565b5b600182019050919050565b600061486e82614875565b9050919050565b6000614880826149d2565b9050919050565b60006148928261476b565b915061489d8361476b565b9250826148ad576148ac6148e7565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f4d6178204e4654206d696e74696e67207065722061646472657373206578636560008201527f656465642e205761697420756e74696c207075626c69632e0000000000000000602082015250565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b7f4d6178204e4654206d696e74696e67207065722061646472657373206578636560008201527f6564656400000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b7f6e756d626572206f66206e657720706172746e657273206d757374206d61746360008201527f68206e756d626572206f66206e65772073686172657300000000000000000000602082015250565b7f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260008201527f6563697069656e74206d61792068617665207265766572746564000000000000602082015250565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b7f6d6178204e4654206c696d697420657863656564656400000000000000000000600082015250565b7f496e76616c6964204d65726b6c6520547265652070726f6f6620737570706c6960008201527f6564000000000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f6d6178204e465420706572207472616e73616374696f6e206578636565646564600082015250565b7f74686520636f6e74726163742069732070617573656400000000000000000000600082015250565b7f4d5650206d696e74696e67206973206f76657200000000000000000000000000600082015250565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b50565b7f696e73756666696369656e742066756e64730000000000000000000000000000600082015250565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b7f5075626c69632073616c65206861736e27742073746172746564207965740000600082015250565b7f6e65656420746f206d696e74206174206c656173742031204e46540000000000600082015250565b6150ed816146e5565b81146150f857600080fd5b50565b615104816146f7565b811461510f57600080fd5b50565b61511b81614709565b811461512657600080fd5b50565b61513281614715565b811461513d57600080fd5b50565b6151498161471f565b811461515457600080fd5b50565b6151608161476b565b811461516b57600080fd5b5056fea264697066735822122073a919ee30cd306c0843ad4390209768b331091a88f661dd0b14f9e83275c48664736f6c6343000807003300000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000e447265616d20436174636865727300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034443330000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106102675760003560e01c806368a6000111610144578063b88d4fde116100b6578063d5abeb011161007a578063d5abeb0114610905578063da3ef23f14610930578063db4c59ae14610959578063e985e9c514610982578063f19e75d4146109bf578063f2fde38b146109db57610267565b8063b88d4fde1461080e578063c1b26a2b14610837578063c3b49d0414610860578063c87b56dd1461089d578063d5002f2e146108da57610267565b80639475405c116101085780639475405c1461071f57806395d89b411461074a578063987b3c1b14610775578063a22cb465146107a0578063a9244597146107c9578063b26656e0146107e557610267565b806368a600011461063a57806369183787146106655780636e43f5e71461068e57806370a08231146106b75780638da5cb5b146106f457610267565b80632c049c70116101dd57806344a0d68a116101a157806344a0d68a1461051857806355f804b31461054157806357a858fc1461056a5780635c975abb146105a75780636352211e146105d25780636568bcfc1461060f57610267565b80632c049c70146104735780632db115441461049e57806332fe5d8b146104ba5780633ccfd60b146104e557806342842e0e146104ef57610267565b8063095ea7b31161022f578063095ea7b31461036357806313faede61461038c57806318160ddd146103b757806318cae269146103e2578063239c70ae1461041f57806323b872dd1461044a57610267565b806301ffc9a71461026c57806302329a29146102a957806306fdde03146102d2578063081812fc146102fd578063088a4ed01461033a575b600080fd5b34801561027857600080fd5b50610293600480360381019061028e919061390d565b610a04565b6040516102a0919061409b565b60405180910390f35b3480156102b557600080fd5b506102d060048036038101906102cb91906138b3565b610ae6565b005b3480156102de57600080fd5b506102e7610b7f565b6040516102f491906140d1565b60405180910390f35b34801561030957600080fd5b50610324600480360381019061031f91906139b0565b610c11565b6040516103319190614019565b60405180910390f35b34801561034657600080fd5b50610361600480360381019061035c91906139b0565b610c96565b005b34801561036f57600080fd5b5061038a600480360381019061038591906137fb565b610d1c565b005b34801561039857600080fd5b506103a1610e34565b6040516103ae9190614473565b60405180910390f35b3480156103c357600080fd5b506103cc610e3a565b6040516103d99190614473565b60405180910390f35b3480156103ee57600080fd5b5061040960048036038101906104049190613678565b610e46565b6040516104169190614473565b60405180910390f35b34801561042b57600080fd5b50610434610e5e565b6040516104419190614473565b60405180910390f35b34801561045657600080fd5b50610471600480360381019061046c91906136e5565b610e64565b005b34801561047f57600080fd5b50610488610ec4565b6040516104959190614473565b60405180910390f35b6104b860048036038101906104b391906139b0565b610eca565b005b3480156104c657600080fd5b506104cf6111d4565b6040516104dc9190614473565b60405180910390f35b6104ed6111da565b005b3480156104fb57600080fd5b50610516600480360381019061051191906136e5565b61133d565b005b34801561052457600080fd5b5061053f600480360381019061053a91906139b0565b61135d565b005b34801561054d57600080fd5b5061056860048036038101906105639190613967565b6113e3565b005b34801561057657600080fd5b50610591600480360381019061058c91906139b0565b611479565b60405161059e9190614473565b60405180910390f35b3480156105b357600080fd5b506105bc61149d565b6040516105c9919061409b565b60405180910390f35b3480156105de57600080fd5b506105f960048036038101906105f491906139b0565b6114b0565b6040516106069190614019565b60405180910390f35b34801561061b57600080fd5b50610624611562565b604051610631919061409b565b60405180910390f35b34801561064657600080fd5b5061064f611575565b60405161065c91906140b6565b60405180910390f35b34801561067157600080fd5b5061068c600480360381019061068791906138b3565b61157b565b005b34801561069a57600080fd5b506106b560048036038101906106b0919061383b565b611614565b005b3480156106c357600080fd5b506106de60048036038101906106d99190613678565b6117da565b6040516106eb9190614473565b60405180910390f35b34801561070057600080fd5b50610709611892565b6040516107169190614019565b60405180910390f35b34801561072b57600080fd5b506107346118bc565b6040516107419190614473565b60405180910390f35b34801561075657600080fd5b5061075f6118c2565b60405161076c91906140d1565b60405180910390f35b34801561078157600080fd5b5061078a611954565b6040516107979190614473565b60405180910390f35b3480156107ac57600080fd5b506107c760048036038101906107c291906137bb565b61195a565b005b6107e360048036038101906107de91906139dd565b611970565b005b3480156107f157600080fd5b5061080c600480360381019061080791906139b0565b611d3e565b005b34801561081a57600080fd5b5061083560048036038101906108309190613738565b611dc4565b005b34801561084357600080fd5b5061085e600480360381019061085991906139b0565b611e26565b005b34801561086c57600080fd5b50610887600480360381019061088291906139b0565b611eac565b6040516108949190614034565b60405180910390f35b3480156108a957600080fd5b506108c460048036038101906108bf91906139b0565b611eeb565b6040516108d191906140d1565b60405180910390f35b3480156108e657600080fd5b506108ef611f95565b6040516108fc9190614473565b60405180910390f35b34801561091157600080fd5b5061091a611ff5565b6040516109279190614473565b60405180910390f35b34801561093c57600080fd5b5061095760048036038101906109529190613967565b611ffb565b005b34801561096557600080fd5b50610980600480360381019061097b91906138e0565b612091565b005b34801561098e57600080fd5b506109a960048036038101906109a491906136a5565b612117565b6040516109b6919061409b565b60405180910390f35b6109d960048036038101906109d491906139b0565b6121ab565b005b3480156109e757600080fd5b50610a0260048036038101906109fd9190613678565b61235a565b005b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610acf57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610adf5750610ade82612452565b5b9050919050565b610aee6124bc565b73ffffffffffffffffffffffffffffffffffffffff16610b0c611892565b73ffffffffffffffffffffffffffffffffffffffff1614610b62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5990614333565b60405180910390fd5b80601360006101000a81548160ff02191690831515021790555050565b606060008054610b8e906147b7565b80601f0160208091040260200160405190810160405280929190818152602001828054610bba906147b7565b8015610c075780601f10610bdc57610100808354040283529160200191610c07565b820191906000526020600020905b815481529060010190602001808311610bea57829003601f168201915b5050505050905090565b6000610c1c826124c4565b610c5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5290614313565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b610c9e6124bc565b73ffffffffffffffffffffffffffffffffffffffff16610cbc611892565b73ffffffffffffffffffffffffffffffffffffffff1614610d12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0990614333565b60405180910390fd5b80600f8190555050565b6000610d27826114b0565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8f906143d3565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610db76124bc565b73ffffffffffffffffffffffffffffffffffffffff161480610de65750610de581610de06124bc565b612117565b5b610e25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1c90614253565b60405180910390fd5b610e2f8383612530565b505050565b600d5481565b60098060000154905081565b60156020528060005260406000206000915090505481565b600f5481565b610e75610e6f6124bc565b826125e9565b610eb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eab90614413565b60405180910390fd5b610ebf8383836126c7565b505050565b60115481565b6000601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050601360009054906101000a900460ff1615610f5e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5590614373565b60405180910390fd5b601360019054906101000a900460ff1615610fae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa590614433565b60405180910390fd5b60008211610ff1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fe890614453565b60405180910390fd5b81600d54610fff9190614657565b341015611041576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611038906143f3565b60405180910390fd5b60125460105461105191906146b1565b8261105c600961292e565b61106691906145d0565b11156110a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109e906142b3565b60405180910390fd5b6011548211156110ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e390614353565b60405180910390fd5b600f5482826110fb91906145d0565b111561113c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113390614193565b60405180910390fd5b6000600190505b8281116111cf57601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919061119a9061481a565b91905055506111a9600961293c565b6111bc336111b7600961292e565b612952565b80806111c79061481a565b915050611143565b505050565b600e5481565b60008060006111e7611f95565b90506000600780549050905060005b81811015611336576007818154811061121257611211614945565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1694506008818154811061125357611252614945565b5b9060005260206000200154935060008573ffffffffffffffffffffffffffffffffffffffff168486476112869190614657565b6112909190614626565b60405161129c90614004565b60006040518083038185875af1925050503d80600081146112d9576040519150601f19603f3d011682016040523d82523d6000602084013e6112de565b606091505b5050905080611322576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131990614213565b60405180910390fd5b50808061132e9061481a565b9150506111f6565b5050505050565b61135883838360405180602001604052806000815250611dc4565b505050565b6113656124bc565b73ffffffffffffffffffffffffffffffffffffffff16611383611892565b73ffffffffffffffffffffffffffffffffffffffff16146113d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113d090614333565b60405180910390fd5b80600d8190555050565b6113eb6124bc565b73ffffffffffffffffffffffffffffffffffffffff16611409611892565b73ffffffffffffffffffffffffffffffffffffffff161461145f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145690614333565b60405180910390fd5b80600a908051906020019061147592919061328e565b5050565b6008818154811061148957600080fd5b906000526020600020016000915090505481565b601360009054906101000a900460ff1681565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611559576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155090614293565b60405180910390fd5b80915050919050565b601360019054906101000a900460ff1681565b60145481565b6115836124bc565b73ffffffffffffffffffffffffffffffffffffffff166115a1611892565b73ffffffffffffffffffffffffffffffffffffffff16146115f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ee90614333565b60405180910390fd5b80601360016101000a81548160ff02191690831515021790555050565b61161c6124bc565b73ffffffffffffffffffffffffffffffffffffffff1661163a611892565b73ffffffffffffffffffffffffffffffffffffffff1614611690576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168790614333565b60405180910390fd5b6007600061169e9190613314565b600860006116ac9190613335565b60008251905081518351146116f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ed906141f3565b60405180910390fd5b60005b818110156117d457600784828151811061171657611715614945565b5b60200260200101519080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600883828151811061179357611792614945565b5b6020026020010151908060018154018082558091505060019003906000526020600020016000909190919091505580806117cc9061481a565b9150506116f9565b50505050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561184b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161184290614273565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60125481565b6060600180546118d1906147b7565b80601f01602080910402602001604051908101604052809291908181526020018280546118fd906147b7565b801561194a5780601f1061191f5761010080835404028352916020019161194a565b820191906000526020600020905b81548152906001019060200180831161192d57829003601f168201915b5050505050905090565b600c5481565b61196c6119656124bc565b8383612970565b5050565b6000601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000336040516020016119c79190613fb8565b604051602081830303815290604052805190602001209050601360009054906101000a900460ff1615611a2f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2690614373565b60405180910390fd5b611a7d848480806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505060145483612add565b611abc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ab3906142d3565b60405180910390fd5b6001601360016101000a81548160ff0219169083151502179055611b15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0c90614393565b60405180910390fd5b60008511611b58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b4f90614453565b60405180910390fd5b84600c54611b669190614657565b341015611ba8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9f906143f3565b60405180910390fd5b601254601054611bb891906146b1565b85611bc3600961292e565b611bcd91906145d0565b1115611c0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c05906142b3565b60405180910390fd5b601154851115611c53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c4a90614353565b60405180910390fd5b600e548583611c6291906145d0565b1115611ca3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c9a906140f3565b60405180910390fd5b6000600190505b858111611d3657601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190611d019061481a565b9190505550611d10600961293c565b611d2333611d1e600961292e565b612952565b8080611d2e9061481a565b915050611caa565b505050505050565b611d466124bc565b73ffffffffffffffffffffffffffffffffffffffff16611d64611892565b73ffffffffffffffffffffffffffffffffffffffff1614611dba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611db190614333565b60405180910390fd5b8060118190555050565b611dd5611dcf6124bc565b836125e9565b611e14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e0b90614413565b60405180910390fd5b611e2084848484612af4565b50505050565b611e2e6124bc565b73ffffffffffffffffffffffffffffffffffffffff16611e4c611892565b73ffffffffffffffffffffffffffffffffffffffff1614611ea2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e9990614333565b60405180910390fd5b80600c8190555050565b60078181548110611ebc57600080fd5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6060611ef6826124c4565b611f35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f2c906143b3565b60405180910390fd5b6000611f3f612b50565b90506000815111611f5f5760405180602001604052806000815250611f8d565b80611f6984612be2565b600b604051602001611f7d93929190613fd3565b6040516020818303038152906040525b915050919050565b6000806000600780549050905060005b81811015611fec5760088181548110611fc157611fc0614945565b5b906000526020600020015483611fd791906145d0565b92508080611fe49061481a565b915050611fa5565b50819250505090565b60105481565b6120036124bc565b73ffffffffffffffffffffffffffffffffffffffff16612021611892565b73ffffffffffffffffffffffffffffffffffffffff1614612077576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161206e90614333565b60405180910390fd5b80600b908051906020019061208d92919061328e565b5050565b6120996124bc565b73ffffffffffffffffffffffffffffffffffffffff166120b7611892565b73ffffffffffffffffffffffffffffffffffffffff161461210d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161210490614333565b60405180910390fd5b8060148190555050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6121b36124bc565b73ffffffffffffffffffffffffffffffffffffffff166121d1611892565b73ffffffffffffffffffffffffffffffffffffffff1614612227576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161221e90614333565b60405180910390fd5b6000811161226a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161226190614453565b60405180910390fd5b60105481612278600961292e565b61228291906145d0565b11156122c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122ba906142b3565b60405180910390fd5b6000600190505b81811161235657601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906123219061481a565b9190505550612330600961293c565b6123433361233e600961292e565b612952565b808061234e9061481a565b9150506122ca565b5050565b6123626124bc565b73ffffffffffffffffffffffffffffffffffffffff16612380611892565b73ffffffffffffffffffffffffffffffffffffffff16146123d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123cd90614333565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612446576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161243d90614133565b60405180910390fd5b61244f81612d43565b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600033905090565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166125a3836114b0565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60006125f4826124c4565b612633576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161262a90614233565b60405180910390fd5b600061263e836114b0565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806126ad57508373ffffffffffffffffffffffffffffffffffffffff1661269584610c11565b73ffffffffffffffffffffffffffffffffffffffff16145b806126be57506126bd8185612117565b5b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166126e7826114b0565b73ffffffffffffffffffffffffffffffffffffffff161461273d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161273490614153565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156127ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127a4906141b3565b60405180910390fd5b6127b8838383612e09565b6127c3600082612530565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461281391906146b1565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461286a91906145d0565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612929838383612e0e565b505050565b600081600001549050919050565b6001816000016000828254019250508190555050565b61296c828260405180602001604052806000815250612e13565b5050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156129df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129d6906141d3565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051612ad0919061409b565b60405180910390a3505050565b600082612aea8584612e6e565b1490509392505050565b612aff8484846126c7565b612b0b84848484612ee3565b612b4a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b4190614113565b60405180910390fd5b50505050565b6060600a8054612b5f906147b7565b80601f0160208091040260200160405190810160405280929190818152602001828054612b8b906147b7565b8015612bd85780601f10612bad57610100808354040283529160200191612bd8565b820191906000526020600020905b815481529060010190602001808311612bbb57829003601f168201915b5050505050905090565b60606000821415612c2a576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612d3e565b600082905060005b60008214612c5c578080612c459061481a565b915050600a82612c559190614626565b9150612c32565b60008167ffffffffffffffff811115612c7857612c77614974565b5b6040519080825280601f01601f191660200182016040528015612caa5781602001600182028036833780820191505090505b5090505b60008514612d3757600182612cc391906146b1565b9150600a85612cd29190614887565b6030612cde91906145d0565b60f81b818381518110612cf457612cf3614945565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85612d309190614626565b9450612cae565b8093505050505b919050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b505050565b505050565b612e1d838361307a565b612e2a6000848484612ee3565b612e69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e6090614113565b60405180910390fd5b505050565b60008082905060005b8451811015612ed8576000858281518110612e9557612e94614945565b5b60200260200101519050808311612eb757612eb08382613254565b9250612ec4565b612ec18184613254565b92505b508080612ed09061481a565b915050612e77565b508091505092915050565b6000612f048473ffffffffffffffffffffffffffffffffffffffff1661326b565b1561306d578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02612f2d6124bc565b8786866040518563ffffffff1660e01b8152600401612f4f949392919061404f565b602060405180830381600087803b158015612f6957600080fd5b505af1925050508015612f9a57506040513d601f19601f82011682018060405250810190612f97919061393a565b60015b61301d573d8060008114612fca576040519150601f19603f3d011682016040523d82523d6000602084013e612fcf565b606091505b50600081511415613015576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161300c90614113565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050613072565b600190505b949350505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156130ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130e1906142f3565b60405180910390fd5b6130f3816124c4565b15613133576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161312a90614173565b60405180910390fd5b61313f60008383612e09565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461318f91906145d0565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461325060008383612e0e565b5050565b600082600052816020526040600020905092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b82805461329a906147b7565b90600052602060002090601f0160209004810192826132bc5760008555613303565b82601f106132d557805160ff1916838001178555613303565b82800160010185558215613303579182015b828111156133025782518255916020019190600101906132e7565b5b5090506133109190613356565b5090565b50805460008255906000526020600020908101906133329190613356565b50565b50805460008255906000526020600020908101906133539190613356565b50565b5b8082111561336f576000816000905550600101613357565b5090565b6000613386613381846144b3565b61448e565b905080838252602082019050828560208602820111156133a9576133a86149ad565b5b60005b858110156133d957816133bf88826134ec565b8452602084019350602083019250506001810190506133ac565b5050509392505050565b60006133f66133f1846144df565b61448e565b90508083825260208201905082856020860282011115613419576134186149ad565b5b60005b85811015613449578161342f8882613663565b84526020840193506020830192505060018101905061341c565b5050509392505050565b60006134666134618461450b565b61448e565b905082815260208101848484011115613482576134816149b2565b5b61348d848285614775565b509392505050565b60006134a86134a38461453c565b61448e565b9050828152602081018484840111156134c4576134c36149b2565b5b6134cf848285614775565b509392505050565b6000813590506134e6816150e4565b92915050565b6000813590506134fb816150fb565b92915050565b600082601f830112613516576135156149a8565b5b8135613526848260208601613373565b91505092915050565b60008083601f840112613545576135446149a8565b5b8235905067ffffffffffffffff811115613562576135616149a3565b5b60208301915083602082028301111561357e5761357d6149ad565b5b9250929050565b600082601f83011261359a576135996149a8565b5b81356135aa8482602086016133e3565b91505092915050565b6000813590506135c281615112565b92915050565b6000813590506135d781615129565b92915050565b6000813590506135ec81615140565b92915050565b60008151905061360181615140565b92915050565b600082601f83011261361c5761361b6149a8565b5b813561362c848260208601613453565b91505092915050565b600082601f83011261364a576136496149a8565b5b813561365a848260208601613495565b91505092915050565b60008135905061367281615157565b92915050565b60006020828403121561368e5761368d6149bc565b5b600061369c848285016134d7565b91505092915050565b600080604083850312156136bc576136bb6149bc565b5b60006136ca858286016134d7565b92505060206136db858286016134d7565b9150509250929050565b6000806000606084860312156136fe576136fd6149bc565b5b600061370c868287016134d7565b935050602061371d868287016134d7565b925050604061372e86828701613663565b9150509250925092565b60008060008060808587031215613752576137516149bc565b5b6000613760878288016134d7565b9450506020613771878288016134d7565b935050604061378287828801613663565b925050606085013567ffffffffffffffff8111156137a3576137a26149b7565b5b6137af87828801613607565b91505092959194509250565b600080604083850312156137d2576137d16149bc565b5b60006137e0858286016134d7565b92505060206137f1858286016135b3565b9150509250929050565b60008060408385031215613812576138116149bc565b5b6000613820858286016134d7565b925050602061383185828601613663565b9150509250929050565b60008060408385031215613852576138516149bc565b5b600083013567ffffffffffffffff8111156138705761386f6149b7565b5b61387c85828601613501565b925050602083013567ffffffffffffffff81111561389d5761389c6149b7565b5b6138a985828601613585565b9150509250929050565b6000602082840312156138c9576138c86149bc565b5b60006138d7848285016135b3565b91505092915050565b6000602082840312156138f6576138f56149bc565b5b6000613904848285016135c8565b91505092915050565b600060208284031215613923576139226149bc565b5b6000613931848285016135dd565b91505092915050565b6000602082840312156139505761394f6149bc565b5b600061395e848285016135f2565b91505092915050565b60006020828403121561397d5761397c6149bc565b5b600082013567ffffffffffffffff81111561399b5761399a6149b7565b5b6139a784828501613635565b91505092915050565b6000602082840312156139c6576139c56149bc565b5b60006139d484828501613663565b91505092915050565b6000806000604084860312156139f6576139f56149bc565b5b6000613a0486828701613663565b935050602084013567ffffffffffffffff811115613a2557613a246149b7565b5b613a318682870161352f565b92509250509250925092565b613a46816146f7565b82525050565b613a55816146e5565b82525050565b613a6c613a67826146e5565b614863565b82525050565b613a7b81614709565b82525050565b613a8a81614715565b82525050565b6000613a9b82614582565b613aa58185614598565b9350613ab5818560208601614784565b613abe816149c1565b840191505092915050565b6000613ad48261458d565b613ade81856145b4565b9350613aee818560208601614784565b613af7816149c1565b840191505092915050565b6000613b0d8261458d565b613b1781856145c5565b9350613b27818560208601614784565b80840191505092915050565b60008154613b40816147b7565b613b4a81866145c5565b94506001821660008114613b655760018114613b7657613ba9565b60ff19831686528186019350613ba9565b613b7f8561456d565b60005b83811015613ba157815481890152600182019150602081019050613b82565b838801955050505b50505092915050565b6000613bbf6038836145b4565b9150613bca826149df565b604082019050919050565b6000613be26032836145b4565b9150613bed82614a2e565b604082019050919050565b6000613c056026836145b4565b9150613c1082614a7d565b604082019050919050565b6000613c286025836145b4565b9150613c3382614acc565b604082019050919050565b6000613c4b601c836145b4565b9150613c5682614b1b565b602082019050919050565b6000613c6e6024836145b4565b9150613c7982614b44565b604082019050919050565b6000613c916024836145b4565b9150613c9c82614b93565b604082019050919050565b6000613cb46019836145b4565b9150613cbf82614be2565b602082019050919050565b6000613cd76036836145b4565b9150613ce282614c0b565b604082019050919050565b6000613cfa603a836145b4565b9150613d0582614c5a565b604082019050919050565b6000613d1d602c836145b4565b9150613d2882614ca9565b604082019050919050565b6000613d406038836145b4565b9150613d4b82614cf8565b604082019050919050565b6000613d63602a836145b4565b9150613d6e82614d47565b604082019050919050565b6000613d866029836145b4565b9150613d9182614d96565b604082019050919050565b6000613da96016836145b4565b9150613db482614de5565b602082019050919050565b6000613dcc6022836145b4565b9150613dd782614e0e565b604082019050919050565b6000613def6020836145b4565b9150613dfa82614e5d565b602082019050919050565b6000613e12602c836145b4565b9150613e1d82614e86565b604082019050919050565b6000613e356020836145b4565b9150613e4082614ed5565b602082019050919050565b6000613e586020836145b4565b9150613e6382614efe565b602082019050919050565b6000613e7b6016836145b4565b9150613e8682614f27565b602082019050919050565b6000613e9e6013836145b4565b9150613ea982614f50565b602082019050919050565b6000613ec1602f836145b4565b9150613ecc82614f79565b604082019050919050565b6000613ee46021836145b4565b9150613eef82614fc8565b604082019050919050565b6000613f076000836145a9565b9150613f1282615017565b600082019050919050565b6000613f2a6012836145b4565b9150613f358261501a565b602082019050919050565b6000613f4d6031836145b4565b9150613f5882615043565b604082019050919050565b6000613f70601e836145b4565b9150613f7b82615092565b602082019050919050565b6000613f93601b836145b4565b9150613f9e826150bb565b602082019050919050565b613fb28161476b565b82525050565b6000613fc48284613a5b565b60148201915081905092915050565b6000613fdf8286613b02565b9150613feb8285613b02565b9150613ff78284613b33565b9150819050949350505050565b600061400f82613efa565b9150819050919050565b600060208201905061402e6000830184613a4c565b92915050565b60006020820190506140496000830184613a3d565b92915050565b60006080820190506140646000830187613a4c565b6140716020830186613a4c565b61407e6040830185613fa9565b81810360608301526140908184613a90565b905095945050505050565b60006020820190506140b06000830184613a72565b92915050565b60006020820190506140cb6000830184613a81565b92915050565b600060208201905081810360008301526140eb8184613ac9565b905092915050565b6000602082019050818103600083015261410c81613bb2565b9050919050565b6000602082019050818103600083015261412c81613bd5565b9050919050565b6000602082019050818103600083015261414c81613bf8565b9050919050565b6000602082019050818103600083015261416c81613c1b565b9050919050565b6000602082019050818103600083015261418c81613c3e565b9050919050565b600060208201905081810360008301526141ac81613c61565b9050919050565b600060208201905081810360008301526141cc81613c84565b9050919050565b600060208201905081810360008301526141ec81613ca7565b9050919050565b6000602082019050818103600083015261420c81613cca565b9050919050565b6000602082019050818103600083015261422c81613ced565b9050919050565b6000602082019050818103600083015261424c81613d10565b9050919050565b6000602082019050818103600083015261426c81613d33565b9050919050565b6000602082019050818103600083015261428c81613d56565b9050919050565b600060208201905081810360008301526142ac81613d79565b9050919050565b600060208201905081810360008301526142cc81613d9c565b9050919050565b600060208201905081810360008301526142ec81613dbf565b9050919050565b6000602082019050818103600083015261430c81613de2565b9050919050565b6000602082019050818103600083015261432c81613e05565b9050919050565b6000602082019050818103600083015261434c81613e28565b9050919050565b6000602082019050818103600083015261436c81613e4b565b9050919050565b6000602082019050818103600083015261438c81613e6e565b9050919050565b600060208201905081810360008301526143ac81613e91565b9050919050565b600060208201905081810360008301526143cc81613eb4565b9050919050565b600060208201905081810360008301526143ec81613ed7565b9050919050565b6000602082019050818103600083015261440c81613f1d565b9050919050565b6000602082019050818103600083015261442c81613f40565b9050919050565b6000602082019050818103600083015261444c81613f63565b9050919050565b6000602082019050818103600083015261446c81613f86565b9050919050565b60006020820190506144886000830184613fa9565b92915050565b60006144986144a9565b90506144a482826147e9565b919050565b6000604051905090565b600067ffffffffffffffff8211156144ce576144cd614974565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156144fa576144f9614974565b5b602082029050602081019050919050565b600067ffffffffffffffff82111561452657614525614974565b5b61452f826149c1565b9050602081019050919050565b600067ffffffffffffffff82111561455757614556614974565b5b614560826149c1565b9050602081019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b600081905092915050565b60006145db8261476b565b91506145e68361476b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561461b5761461a6148b8565b5b828201905092915050565b60006146318261476b565b915061463c8361476b565b92508261464c5761464b6148e7565b5b828204905092915050565b60006146628261476b565b915061466d8361476b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156146a6576146a56148b8565b5b828202905092915050565b60006146bc8261476b565b91506146c78361476b565b9250828210156146da576146d96148b8565b5b828203905092915050565b60006146f08261474b565b9050919050565b60006147028261474b565b9050919050565b60008115159050919050565b6000819050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b838110156147a2578082015181840152602081019050614787565b838111156147b1576000848401525b50505050565b600060028204905060018216806147cf57607f821691505b602082108114156147e3576147e2614916565b5b50919050565b6147f2826149c1565b810181811067ffffffffffffffff8211171561481157614810614974565b5b80604052505050565b60006148258261476b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415614858576148576148b8565b5b600182019050919050565b600061486e82614875565b9050919050565b6000614880826149d2565b9050919050565b60006148928261476b565b915061489d8361476b565b9250826148ad576148ac6148e7565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f4d6178204e4654206d696e74696e67207065722061646472657373206578636560008201527f656465642e205761697420756e74696c207075626c69632e0000000000000000602082015250565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b7f4d6178204e4654206d696e74696e67207065722061646472657373206578636560008201527f6564656400000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b7f6e756d626572206f66206e657720706172746e657273206d757374206d61746360008201527f68206e756d626572206f66206e65772073686172657300000000000000000000602082015250565b7f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260008201527f6563697069656e74206d61792068617665207265766572746564000000000000602082015250565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b7f6d6178204e4654206c696d697420657863656564656400000000000000000000600082015250565b7f496e76616c6964204d65726b6c6520547265652070726f6f6620737570706c6960008201527f6564000000000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f6d6178204e465420706572207472616e73616374696f6e206578636565646564600082015250565b7f74686520636f6e74726163742069732070617573656400000000000000000000600082015250565b7f4d5650206d696e74696e67206973206f76657200000000000000000000000000600082015250565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b50565b7f696e73756666696369656e742066756e64730000000000000000000000000000600082015250565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b7f5075626c69632073616c65206861736e27742073746172746564207965740000600082015250565b7f6e65656420746f206d696e74206174206c656173742031204e46540000000000600082015250565b6150ed816146e5565b81146150f857600080fd5b50565b615104816146f7565b811461510f57600080fd5b50565b61511b81614709565b811461512657600080fd5b50565b61513281614715565b811461513d57600080fd5b50565b6151498161471f565b811461515457600080fd5b50565b6151608161476b565b811461516b57600080fd5b5056fea264697066735822122073a919ee30cd306c0843ad4390209768b331091a88f661dd0b14f9e83275c48664736f6c63430008070033

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

00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000e447265616d20436174636865727300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034443330000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _name (string): Dream Catchers
Arg [1] : _symbol (string): DC3

-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [2] : 000000000000000000000000000000000000000000000000000000000000000e
Arg [3] : 447265616d204361746368657273000000000000000000000000000000000000
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [5] : 4443330000000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

19534:5909:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9441:305;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24550:73;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10211:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11278:219;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24201:116;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10865:407;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;20363:32;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20204:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20698:55;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20440:32;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11834:284;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;20513:42;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;22595:861;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;20400:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24979:461;;;:::i;:::-;;12124:185;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;24013:80;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;24321:98;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19623:23;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20604:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9966:239;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20634:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20665:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24628:79;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19659:465;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9752:208;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17100:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20560:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10317:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20323:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11503:155;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;21520:1069;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;23894:114;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12315:328;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;24099:92;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19583:33;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23466:424;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24715:254;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20477:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24423:122;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;20978:116;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11664:164;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21098:418;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;17319:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9441:305;9543:4;9595:25;9580:40;;;:11;:40;;;;:105;;;;9652:33;9637:48;;;:11;:48;;;;9580:105;:158;;;;9702:36;9726:11;9702:23;:36::i;:::-;9580:158;9560:178;;9441:305;;;:::o;24550:73::-;17244:12;:10;:12::i;:::-;17233:23;;:7;:5;:7::i;:::-;:23;;;17225:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;24611:6:::1;24602;;:15;;;;;;;;;;;;;;;;;;24550:73:::0;:::o;10211:100::-;10265:13;10298:5;10291:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10211:100;:::o;11278:219::-;11354:7;11382:16;11390:7;11382;:16::i;:::-;11374:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;11465:15;:24;11481:7;11465:24;;;;;;;;;;;;;;;;;;;;;11458:31;;11278:219;;;:::o;24201:116::-;17244:12;:10;:12::i;:::-;17233:23;;:7;:5;:7::i;:::-;:23;;;17225:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;24294:17:::1;24278:13;:33;;;;24201:116:::0;:::o;10865:407::-;10946:13;10962:23;10977:7;10962:14;:23::i;:::-;10946:39;;11010:5;11004:11;;:2;:11;;;;10996:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;11102:5;11086:21;;:12;:10;:12::i;:::-;:21;;;:62;;;;11111:37;11128:5;11135:12;:10;:12::i;:::-;11111:16;:37::i;:::-;11086:62;11064:168;;;;;;;;;;;;:::i;:::-;;;;;;;;;11243:21;11252:2;11256:7;11243:8;:21::i;:::-;10935:337;10865:407;;:::o;20363:32::-;;;;:::o;20204:35::-;;;;;;;;;:::o;20698:55::-;;;;;;;;;;;;;;;;;:::o;20440:32::-;;;;:::o;11834:284::-;11976:41;11995:12;:10;:12::i;:::-;12009:7;11976:18;:41::i;:::-;11968:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;12082:28;12092:4;12098:2;12102:7;12082:9;:28::i;:::-;11834:284;;;:::o;20513:42::-;;;;:::o;22595:861::-;22658:24;22685:20;:32;22706:10;22685:32;;;;;;;;;;;;;;;;22658:59;;22733:6;;;;;;;;;;;22732:7;22724:42;;;;;;;;;;;;:::i;:::-;;;;;;;;;22782:7;;;;;;;;;;;22781:8;22773:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;22853:1;22839:11;:15;22831:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;22921:11;22914:4;;:18;;;;:::i;:::-;22901:9;:31;;22893:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;23021:19;;23009:9;;:31;;;;:::i;:::-;22994:11;22970:21;:11;:19;:21::i;:::-;:35;;;;:::i;:::-;:70;;22962:105;;;;;;;;;;;;:::i;:::-;;;;;;;;;23097:23;;23082:11;:38;;23074:83;;;;;;;;;;;;:::i;:::-;;;;;;;;;23206:13;;23191:11;23172:16;:30;;;;:::i;:::-;:47;;23164:96;;;;;;;;;;;;:::i;:::-;;;;;;;;;23272:9;23284:1;23272:13;;23267:184;23292:11;23287:1;:16;23267:184;;23321:20;:32;23342:10;23321:32;;;;;;;;;;;;;;;;:34;;;;;;;;;:::i;:::-;;;;;;23366:23;:11;:21;:23::i;:::-;23399:44;23409:10;23421:21;:11;:19;:21::i;:::-;23399:9;:44::i;:::-;23305:3;;;;;:::i;:::-;;;;23267:184;;;;22651:805;22595:861;:::o;20400:35::-;;;;:::o;24979:461::-;25021:15;25043:13;25063:19;25085:16;:14;:16::i;:::-;25063:38;;25108:14;25125:8;:15;;;;25108:32;;25152:9;25147:288;25169:6;25167:1;:8;25147:288;;;25203:8;25212:1;25203:11;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;25193:21;;25233:6;25240:1;25233:9;;;;;;;;:::i;:::-;;;;;;;;;;25225:17;;25254:12;25272:7;:12;;25322:11;25316:5;25292:21;:29;;;;:::i;:::-;:41;;;;:::i;:::-;25272:66;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25253:85;;;25357:7;25349:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;25182:253;25177:3;;;;;:::i;:::-;;;;25147:288;;;;25014:426;;;;24979:461::o;12124:185::-;12262:39;12279:4;12285:2;12289:7;12262:39;;;;;;;;;;;;:16;:39::i;:::-;12124:185;;;:::o;24013:80::-;17244:12;:10;:12::i;:::-;17233:23;;:7;:5;:7::i;:::-;:23;;;17225:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;24079:8:::1;24072:4;:15;;;;24013:80:::0;:::o;24321:98::-;17244:12;:10;:12::i;:::-;17233:23;;:7;:5;:7::i;:::-;:23;;;17225:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;24402:11:::1;24392:7;:21;;;;;;;;;;;;:::i;:::-;;24321:98:::0;:::o;19623:23::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;20604:25::-;;;;;;;;;;;;;:::o;9966:239::-;10038:7;10058:13;10074:7;:16;10082:7;10074:16;;;;;;;;;;;;;;;;;;;;;10058:32;;10126:1;10109:19;;:5;:19;;;;10101:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;10192:5;10185:12;;;9966:239;;;:::o;20634:26::-;;;;;;;;;;;;;:::o;20665:28::-;;;;:::o;24628:79::-;17244:12;:10;:12::i;:::-;17233:23;;:7;:5;:7::i;:::-;:23;;;17225:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;24695:6:::1;24685:7;;:16;;;;;;;;;;;;;;;;;;24628:79:::0;:::o;19659:465::-;17244:12;:10;:12::i;:::-;17233:23;;:7;:5;:7::i;:::-;:23;;;17225:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;19784:8:::1;;19777:15;;;;:::i;:::-;19810:6;;19803:13;;;;:::i;:::-;19827:14;19844:11;:18;19827:35;;19903:9;:16;19881:11;:18;:38;19873:105;;;;;;;;;;;;:::i;:::-;;;;;;;;;19993:9;19989:128;20008:6;20006:1;:8;19989:128;;;20036:8;20050:11;20062:1;20050:14;;;;;;;;:::i;:::-;;;;;;;;20036:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20080:6;20092:9;20102:1;20092:12;;;;;;;;:::i;:::-;;;;;;;;20080:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20016:3;;;;;:::i;:::-;;;;19989:128;;;;19766:358;19659:465:::0;;:::o;9752:208::-;9824:7;9869:1;9852:19;;:5;:19;;;;9844:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;9936:9;:16;9946:5;9936:16;;;;;;;;;;;;;;;;9929:23;;9752:208;;;:::o;17100:87::-;17146:7;17173:6;;;;;;;;;;;17166:13;;17100:87;:::o;20560:39::-;;;;:::o;10317:104::-;10373:13;10406:7;10399:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10317:104;:::o;20323:35::-;;;;:::o;11503:155::-;11598:52;11617:12;:10;:12::i;:::-;11631:8;11641;11598:18;:52::i;:::-;11503:155;;:::o;21520:1069::-;21606:24;21633:20;:32;21654:10;21633:32;;;;;;;;;;;;;;;;21606:59;;21672:12;21714:10;21697:28;;;;;;;;:::i;:::-;;;;;;;;;;;;;21687:39;;;;;;21672:54;;21742:6;;;;;;;;;;;21741:7;21733:42;;;;;;;;;;;;:::i;:::-;;;;;;;;;21790:46;21809:5;;21790:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21816:13;;21831:4;21790:18;:46::i;:::-;21782:93;;;;;;;;;;;;:::i;:::-;;;;;;;;;21900:4;21890:7;;:14;;;;;;;;;;;;;;;;;21882:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;21958:1;21944:11;:15;21936:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;22029:11;22019:7;;:21;;;;:::i;:::-;22006:9;:34;;21998:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;22129:19;;22117:9;;:31;;;;:::i;:::-;22102:11;22078:21;:11;:19;:21::i;:::-;:35;;;;:::i;:::-;:70;;22070:105;;;;;;;;;;;;:::i;:::-;;;;;;;;;22205:23;;22190:11;:38;;22182:83;;;;;;;;;;;;:::i;:::-;;;;;;;;;22314:16;;22299:11;22280:16;:30;;;;:::i;:::-;:50;;22272:119;;;;;;;;;;;;:::i;:::-;;;;;;;;;22405:9;22417:1;22405:13;;22400:184;22425:11;22420:1;:16;22400:184;;22454:20;:32;22475:10;22454:32;;;;;;;;;;;;;;;;:34;;;;;;;;;:::i;:::-;;;;;;22499:23;:11;:21;:23::i;:::-;22532:44;22542:10;22554:21;:11;:19;:21::i;:::-;22532:9;:44::i;:::-;22438:3;;;;;:::i;:::-;;;;22400:184;;;;21599:990;;21520:1069;;;:::o;23894:114::-;17244:12;:10;:12::i;:::-;17233:23;;:7;:5;:7::i;:::-;:23;;;17225:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;23996:6:::1;23970:23;:32;;;;23894:114:::0;:::o;12315:328::-;12490:41;12509:12;:10;:12::i;:::-;12523:7;12490:18;:41::i;:::-;12482:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;12596:39;12610:4;12616:2;12620:7;12629:5;12596:13;:39::i;:::-;12315:328;;;;:::o;24099:92::-;17244:12;:10;:12::i;:::-;17233:23;;:7;:5;:7::i;:::-;:23;;;17225:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;24174:11:::1;24164:7;:21;;;;24099:92:::0;:::o;19583:33::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;23466:424::-;23564:13;23605:16;23613:7;23605;:16::i;:::-;23589:97;;;;;;;;;;;;:::i;:::-;;;;;;;;;23696:28;23727:10;:8;:10::i;:::-;23696:41;;23782:1;23757:14;23751:28;:32;:133;;;;;;;;;;;;;;;;;23819:14;23835:18;:7;:16;:18::i;:::-;23855:13;23802:67;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;23751:133;23744:140;;;23466:424;;;:::o;24715:254::-;24762:7;24782:19;24812:14;24829:8;:15;;;;24812:32;;24860:9;24855:82;24877:6;24875:1;:8;24855:82;;;24920:6;24927:1;24920:9;;;;;;;;:::i;:::-;;;;;;;;;;24905:24;;;;;:::i;:::-;;;24885:3;;;;;:::i;:::-;;;;24855:82;;;;24952:11;24945:18;;;;24715:254;:::o;20477:31::-;;;;:::o;24423:122::-;17244:12;:10;:12::i;:::-;17233:23;;:7;:5;:7::i;:::-;:23;;;17225:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;24522:17:::1;24506:13;:33;;;;;;;;;;;;:::i;:::-;;24423:122:::0;:::o;20978:116::-;17244:12;:10;:12::i;:::-;17233:23;;:7;:5;:7::i;:::-;:23;;;17225:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;21071:17:::1;21055:13;:33;;;;20978:116:::0;:::o;11664:164::-;11761:4;11785:18;:25;11804:5;11785:25;;;;;;;;;;;;;;;:35;11811:8;11785:35;;;;;;;;;;;;;;;;;;;;;;;;;11778:42;;11664:164;;;;:::o;21098:418::-;17244:12;:10;:12::i;:::-;17233:23;;:7;:5;:7::i;:::-;:23;;;17225:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;21191:1:::1;21177:11;:15;21169:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;21278:9;;21263:11;21239:21;:11;:19;:21::i;:::-;:35;;;;:::i;:::-;:48;;21231:83;;;;;;;;;;;;:::i;:::-;;;;;;;;;21332:9;21344:1;21332:13;;21327:184;21352:11;21347:1;:16;21327:184;;21381:20;:32;21402:10;21381:32;;;;;;;;;;;;;;;;:34;;;;;;;;;:::i;:::-;;;;;;21426:23;:11;:21;:23::i;:::-;21459:44;21469:10;21481:21;:11;:19;:21::i;:::-;21459:9;:44::i;:::-;21365:3;;;;;:::i;:::-;;;;21327:184;;;;21098:418:::0;:::o;17319:201::-;17244:12;:10;:12::i;:::-;17233:23;;:7;:5;:7::i;:::-;:23;;;17225:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17428:1:::1;17408:22;;:8;:22;;;;17400:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;17484:28;17503:8;17484:18;:28::i;:::-;17319:201:::0;:::o;8729:157::-;8814:4;8853:25;8838:40;;;:11;:40;;;;8831:47;;8729:157;;;:::o;7046:98::-;7099:7;7126:10;7119:17;;7046:98;:::o;12970:127::-;13035:4;13087:1;13059:30;;:7;:16;13067:7;13059:16;;;;;;;;;;;;;;;;;;;;;:30;;;;13052:37;;12970:127;;;:::o;15294:174::-;15396:2;15369:15;:24;15385:7;15369:24;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;15452:7;15448:2;15414:46;;15423:23;15438:7;15423:14;:23::i;:::-;15414:46;;;;;;;;;;;;15294:174;;:::o;13103:348::-;13196:4;13221:16;13229:7;13221;:16::i;:::-;13213:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;13297:13;13313:23;13328:7;13313:14;:23::i;:::-;13297:39;;13366:5;13355:16;;:7;:16;;;:51;;;;13399:7;13375:31;;:20;13387:7;13375:11;:20::i;:::-;:31;;;13355:51;:87;;;;13410:32;13427:5;13434:7;13410:16;:32::i;:::-;13355:87;13347:96;;;13103:348;;;;:::o;14725:563::-;14884:4;14857:31;;:23;14872:7;14857:14;:23::i;:::-;:31;;;14849:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;14963:1;14949:16;;:2;:16;;;;14941:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;15017:39;15038:4;15044:2;15048:7;15017:20;:39::i;:::-;15067:29;15084:1;15088:7;15067:8;:29::i;:::-;15126:1;15107:9;:15;15117:4;15107:15;;;;;;;;;;;;;;;;:20;;;;;;;:::i;:::-;;;;;;;;15155:1;15138:9;:13;15148:2;15138:13;;;;;;;;;;;;;;;;:18;;;;;;;:::i;:::-;;;;;;;;15186:2;15167:7;:16;15175:7;15167:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;15223:7;15219:2;15204:27;;15213:4;15204:27;;;;;;;;;;;;15242:38;15262:4;15268:2;15272:7;15242:19;:38::i;:::-;14725:563;;;:::o;19278:114::-;19343:7;19370;:14;;;19363:21;;19278:114;;;:::o;19400:127::-;19507:1;19489:7;:14;;;:19;;;;;;;;;;;19400:127;:::o;13457:110::-;13533:26;13543:2;13547:7;13533:26;;;;;;;;;;;;:9;:26::i;:::-;13457:110;;:::o;15474:315::-;15629:8;15620:17;;:5;:17;;;;15612:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;15716:8;15678:18;:25;15697:5;15678:25;;;;;;;;;;;;;;;:35;15704:8;15678:35;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;15762:8;15740:41;;15755:5;15740:41;;;15772:8;15740:41;;;;;;:::i;:::-;;;;;;;;15474:315;;;:::o;17755:190::-;17880:4;17933;17904:25;17917:5;17924:4;17904:12;:25::i;:::-;:33;17897:40;;17755:190;;;;;:::o;12649:315::-;12806:28;12816:4;12822:2;12826:7;12806:9;:28::i;:::-;12853:48;12876:4;12882:2;12886:7;12895:5;12853:22;:48::i;:::-;12845:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;12649:315;;;;:::o;20872:102::-;20932:13;20961:7;20954:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20872:102;:::o;7346:532::-;7402:13;7441:1;7432:5;:10;7428:53;;;7459:10;;;;;;;;;;;;;;;;;;;;;7428:53;7491:12;7506:5;7491:20;;7522:14;7547:78;7562:1;7554:4;:9;7547:78;;7580:8;;;;;:::i;:::-;;;;7611:2;7603:10;;;;;:::i;:::-;;;7547:78;;;7635:19;7667:6;7657:17;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7635:39;;7685:154;7701:1;7692:5;:10;7685:154;;7729:1;7719:11;;;;;:::i;:::-;;;7796:2;7788:5;:10;;;;:::i;:::-;7775:2;:24;;;;:::i;:::-;7762:39;;7745:6;7752;7745:14;;;;;;;;:::i;:::-;;;;;:56;;;;;;;;;;;7825:2;7816:11;;;;;:::i;:::-;;;7685:154;;;7863:6;7849:21;;;;;7346:532;;;;:::o;17526:191::-;17600:16;17619:6;;;;;;;;;;;17600:25;;17645:8;17636:6;;:17;;;;;;;;;;;;;;;;;;17700:8;17669:40;;17690:8;17669:40;;;;;;;;;;;;17589:128;17526:191;:::o;16600:126::-;;;;:::o;16732:125::-;;;;:::o;13573:321::-;13703:18;13709:2;13713:7;13703:5;:18::i;:::-;13754:54;13785:1;13789:2;13793:7;13802:5;13754:22;:54::i;:::-;13732:154;;;;;;;;;;;;:::i;:::-;;;;;;;;;13573:321;;;:::o;17953:675::-;18036:7;18056:20;18079:4;18056:27;;18099:9;18094:497;18118:5;:12;18114:1;:16;18094:497;;;18152:20;18175:5;18181:1;18175:8;;;;;;;;:::i;:::-;;;;;;;;18152:31;;18218:12;18202;:28;18198:382;;18345:42;18360:12;18374;18345:14;:42::i;:::-;18330:57;;18198:382;;;18522:42;18537:12;18551;18522:14;:42::i;:::-;18507:57;;18198:382;18137:454;18132:3;;;;;:::i;:::-;;;;18094:497;;;;18608:12;18601:19;;;17953:675;;;;:::o;15795:799::-;15950:4;15971:15;:2;:13;;;:15::i;:::-;15967:620;;;16023:2;16007:36;;;16044:12;:10;:12::i;:::-;16058:4;16064:7;16073:5;16007:72;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;16003:529;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16266:1;16249:6;:13;:18;16245:272;;;16292:60;;;;;;;;;;:::i;:::-;;;;;;;;16245:272;16467:6;16461:13;16452:6;16448:2;16444:15;16437:38;16003:529;16140:41;;;16130:51;;;:6;:51;;;;16123:58;;;;;15967:620;16571:4;16564:11;;15795:799;;;;;;;:::o;13900:431::-;13994:1;13980:16;;:2;:16;;;;13972:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;14053:16;14061:7;14053;:16::i;:::-;14052:17;14044:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;14113:45;14142:1;14146:2;14150:7;14113:20;:45::i;:::-;14186:1;14169:9;:13;14179:2;14169:13;;;;;;;;;;;;;;;;:18;;;;;;;:::i;:::-;;;;;;;;14217:2;14198:7;:16;14206:7;14198:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;14260:7;14256:2;14235:33;;14252:1;14235:33;;;;;;;;;;;;14279:44;14307:1;14311:2;14315:7;14279:19;:44::i;:::-;13900:431;;:::o;18636:224::-;18704:13;18767:1;18761:4;18754:15;18796:1;18790:4;18783:15;18837:4;18831;18821:21;18812:30;;18636:224;;;;:::o;3608:115::-;3668:4;3714:1;3692:7;:19;;;:23;3685:30;;3608:115;;;:::o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;32:746:1:-;136:5;161:89;177:72;242:6;177:72;:::i;:::-;161:89;:::i;:::-;152:98;;270:5;299:6;292:5;285:21;333:4;326:5;322:16;315:23;;359:6;409:3;401:4;393:6;389:17;384:3;380:27;377:36;374:143;;;428:79;;:::i;:::-;374:143;541:1;526:246;551:6;548:1;545:13;526:246;;;619:3;648:45;689:3;677:10;648:45;:::i;:::-;643:3;636:58;723:4;718:3;714:14;707:21;;757:4;752:3;748:14;741:21;;586:186;573:1;570;566:9;561:14;;526:246;;;530:14;142:636;;32:746;;;;;:::o;801:722::-;897:5;922:81;938:64;995:6;938:64;:::i;:::-;922:81;:::i;:::-;913:90;;1023:5;1052:6;1045:5;1038:21;1086:4;1079:5;1075:16;1068:23;;1112:6;1162:3;1154:4;1146:6;1142:17;1137:3;1133:27;1130:36;1127:143;;;1181:79;;:::i;:::-;1127:143;1294:1;1279:238;1304:6;1301:1;1298:13;1279:238;;;1372:3;1401:37;1434:3;1422:10;1401:37;:::i;:::-;1396:3;1389:50;1468:4;1463:3;1459:14;1452:21;;1502:4;1497:3;1493:14;1486:21;;1339:178;1326:1;1323;1319:9;1314:14;;1279:238;;;1283:14;903:620;;801:722;;;;;:::o;1529:410::-;1606:5;1631:65;1647:48;1688:6;1647:48;:::i;:::-;1631:65;:::i;:::-;1622:74;;1719:6;1712:5;1705:21;1757:4;1750:5;1746:16;1795:3;1786:6;1781:3;1777:16;1774:25;1771:112;;;1802:79;;:::i;:::-;1771:112;1892:41;1926:6;1921:3;1916;1892:41;:::i;:::-;1612:327;1529:410;;;;;:::o;1945:412::-;2023:5;2048:66;2064:49;2106:6;2064:49;:::i;:::-;2048:66;:::i;:::-;2039:75;;2137:6;2130:5;2123:21;2175:4;2168:5;2164:16;2213:3;2204:6;2199:3;2195:16;2192:25;2189:112;;;2220:79;;:::i;:::-;2189:112;2310:41;2344:6;2339:3;2334;2310:41;:::i;:::-;2029:328;1945:412;;;;;:::o;2363:139::-;2409:5;2447:6;2434:20;2425:29;;2463:33;2490:5;2463:33;:::i;:::-;2363:139;;;;:::o;2508:155::-;2562:5;2600:6;2587:20;2578:29;;2616:41;2651:5;2616:41;:::i;:::-;2508:155;;;;:::o;2694:386::-;2773:5;2822:3;2815:4;2807:6;2803:17;2799:27;2789:122;;2830:79;;:::i;:::-;2789:122;2947:6;2934:20;2972:102;3070:3;3062:6;3055:4;3047:6;3043:17;2972:102;:::i;:::-;2963:111;;2779:301;2694:386;;;;:::o;3103:568::-;3176:8;3186:6;3236:3;3229:4;3221:6;3217:17;3213:27;3203:122;;3244:79;;:::i;:::-;3203:122;3357:6;3344:20;3334:30;;3387:18;3379:6;3376:30;3373:117;;;3409:79;;:::i;:::-;3373:117;3523:4;3515:6;3511:17;3499:29;;3577:3;3569:4;3561:6;3557:17;3547:8;3543:32;3540:41;3537:128;;;3584:79;;:::i;:::-;3537:128;3103:568;;;;;:::o;3694:370::-;3765:5;3814:3;3807:4;3799:6;3795:17;3791:27;3781:122;;3822:79;;:::i;:::-;3781:122;3939:6;3926:20;3964:94;4054:3;4046:6;4039:4;4031:6;4027:17;3964:94;:::i;:::-;3955:103;;3771:293;3694:370;;;;:::o;4070:133::-;4113:5;4151:6;4138:20;4129:29;;4167:30;4191:5;4167:30;:::i;:::-;4070:133;;;;:::o;4209:139::-;4255:5;4293:6;4280:20;4271:29;;4309:33;4336:5;4309:33;:::i;:::-;4209:139;;;;:::o;4354:137::-;4399:5;4437:6;4424:20;4415:29;;4453:32;4479:5;4453:32;:::i;:::-;4354:137;;;;:::o;4497:141::-;4553:5;4584:6;4578:13;4569:22;;4600:32;4626:5;4600:32;:::i;:::-;4497:141;;;;:::o;4657:338::-;4712:5;4761:3;4754:4;4746:6;4742:17;4738:27;4728:122;;4769:79;;:::i;:::-;4728:122;4886:6;4873:20;4911:78;4985:3;4977:6;4970:4;4962:6;4958:17;4911:78;:::i;:::-;4902:87;;4718:277;4657:338;;;;:::o;5015:340::-;5071:5;5120:3;5113:4;5105:6;5101:17;5097:27;5087:122;;5128:79;;:::i;:::-;5087:122;5245:6;5232:20;5270:79;5345:3;5337:6;5330:4;5322:6;5318:17;5270:79;:::i;:::-;5261:88;;5077:278;5015:340;;;;:::o;5361:139::-;5407:5;5445:6;5432:20;5423:29;;5461:33;5488:5;5461:33;:::i;:::-;5361:139;;;;:::o;5506:329::-;5565:6;5614:2;5602:9;5593:7;5589:23;5585:32;5582:119;;;5620:79;;:::i;:::-;5582:119;5740:1;5765:53;5810:7;5801:6;5790:9;5786:22;5765:53;:::i;:::-;5755:63;;5711:117;5506:329;;;;:::o;5841:474::-;5909:6;5917;5966:2;5954:9;5945:7;5941:23;5937:32;5934:119;;;5972:79;;:::i;:::-;5934:119;6092:1;6117:53;6162:7;6153:6;6142:9;6138:22;6117:53;:::i;:::-;6107:63;;6063:117;6219:2;6245:53;6290:7;6281:6;6270:9;6266:22;6245:53;:::i;:::-;6235:63;;6190:118;5841:474;;;;;:::o;6321:619::-;6398:6;6406;6414;6463:2;6451:9;6442:7;6438:23;6434:32;6431:119;;;6469:79;;:::i;:::-;6431:119;6589:1;6614:53;6659:7;6650:6;6639:9;6635:22;6614:53;:::i;:::-;6604:63;;6560:117;6716:2;6742:53;6787:7;6778:6;6767:9;6763:22;6742:53;:::i;:::-;6732:63;;6687:118;6844:2;6870:53;6915:7;6906:6;6895:9;6891:22;6870:53;:::i;:::-;6860:63;;6815:118;6321:619;;;;;:::o;6946:943::-;7041:6;7049;7057;7065;7114:3;7102:9;7093:7;7089:23;7085:33;7082:120;;;7121:79;;:::i;:::-;7082:120;7241:1;7266:53;7311:7;7302:6;7291:9;7287:22;7266:53;:::i;:::-;7256:63;;7212:117;7368:2;7394:53;7439:7;7430:6;7419:9;7415:22;7394:53;:::i;:::-;7384:63;;7339:118;7496:2;7522:53;7567:7;7558:6;7547:9;7543:22;7522:53;:::i;:::-;7512:63;;7467:118;7652:2;7641:9;7637:18;7624:32;7683:18;7675:6;7672:30;7669:117;;;7705:79;;:::i;:::-;7669:117;7810:62;7864:7;7855:6;7844:9;7840:22;7810:62;:::i;:::-;7800:72;;7595:287;6946:943;;;;;;;:::o;7895:468::-;7960:6;7968;8017:2;8005:9;7996:7;7992:23;7988:32;7985:119;;;8023:79;;:::i;:::-;7985:119;8143:1;8168:53;8213:7;8204:6;8193:9;8189:22;8168:53;:::i;:::-;8158:63;;8114:117;8270:2;8296:50;8338:7;8329:6;8318:9;8314:22;8296:50;:::i;:::-;8286:60;;8241:115;7895:468;;;;;:::o;8369:474::-;8437:6;8445;8494:2;8482:9;8473:7;8469:23;8465:32;8462:119;;;8500:79;;:::i;:::-;8462:119;8620:1;8645:53;8690:7;8681:6;8670:9;8666:22;8645:53;:::i;:::-;8635:63;;8591:117;8747:2;8773:53;8818:7;8809:6;8798:9;8794:22;8773:53;:::i;:::-;8763:63;;8718:118;8369:474;;;;;:::o;8849:910::-;8975:6;8983;9032:2;9020:9;9011:7;9007:23;9003:32;9000:119;;;9038:79;;:::i;:::-;9000:119;9186:1;9175:9;9171:17;9158:31;9216:18;9208:6;9205:30;9202:117;;;9238:79;;:::i;:::-;9202:117;9343:86;9421:7;9412:6;9401:9;9397:22;9343:86;:::i;:::-;9333:96;;9129:310;9506:2;9495:9;9491:18;9478:32;9537:18;9529:6;9526:30;9523:117;;;9559:79;;:::i;:::-;9523:117;9664:78;9734:7;9725:6;9714:9;9710:22;9664:78;:::i;:::-;9654:88;;9449:303;8849:910;;;;;:::o;9765:323::-;9821:6;9870:2;9858:9;9849:7;9845:23;9841:32;9838:119;;;9876:79;;:::i;:::-;9838:119;9996:1;10021:50;10063:7;10054:6;10043:9;10039:22;10021:50;:::i;:::-;10011:60;;9967:114;9765:323;;;;:::o;10094:329::-;10153:6;10202:2;10190:9;10181:7;10177:23;10173:32;10170:119;;;10208:79;;:::i;:::-;10170:119;10328:1;10353:53;10398:7;10389:6;10378:9;10374:22;10353:53;:::i;:::-;10343:63;;10299:117;10094:329;;;;:::o;10429:327::-;10487:6;10536:2;10524:9;10515:7;10511:23;10507:32;10504:119;;;10542:79;;:::i;:::-;10504:119;10662:1;10687:52;10731:7;10722:6;10711:9;10707:22;10687:52;:::i;:::-;10677:62;;10633:116;10429:327;;;;:::o;10762:349::-;10831:6;10880:2;10868:9;10859:7;10855:23;10851:32;10848:119;;;10886:79;;:::i;:::-;10848:119;11006:1;11031:63;11086:7;11077:6;11066:9;11062:22;11031:63;:::i;:::-;11021:73;;10977:127;10762:349;;;;:::o;11117:509::-;11186:6;11235:2;11223:9;11214:7;11210:23;11206:32;11203:119;;;11241:79;;:::i;:::-;11203:119;11389:1;11378:9;11374:17;11361:31;11419:18;11411:6;11408:30;11405:117;;;11441:79;;:::i;:::-;11405:117;11546:63;11601:7;11592:6;11581:9;11577:22;11546:63;:::i;:::-;11536:73;;11332:287;11117:509;;;;:::o;11632:329::-;11691:6;11740:2;11728:9;11719:7;11715:23;11711:32;11708:119;;;11746:79;;:::i;:::-;11708:119;11866:1;11891:53;11936:7;11927:6;11916:9;11912:22;11891:53;:::i;:::-;11881:63;;11837:117;11632:329;;;;:::o;11967:704::-;12062:6;12070;12078;12127:2;12115:9;12106:7;12102:23;12098:32;12095:119;;;12133:79;;:::i;:::-;12095:119;12253:1;12278:53;12323:7;12314:6;12303:9;12299:22;12278:53;:::i;:::-;12268:63;;12224:117;12408:2;12397:9;12393:18;12380:32;12439:18;12431:6;12428:30;12425:117;;;12461:79;;:::i;:::-;12425:117;12574:80;12646:7;12637:6;12626:9;12622:22;12574:80;:::i;:::-;12556:98;;;;12351:313;11967:704;;;;;:::o;12677:142::-;12780:32;12806:5;12780:32;:::i;:::-;12775:3;12768:45;12677:142;;:::o;12825:118::-;12912:24;12930:5;12912:24;:::i;:::-;12907:3;12900:37;12825:118;;:::o;12949:157::-;13054:45;13074:24;13092:5;13074:24;:::i;:::-;13054:45;:::i;:::-;13049:3;13042:58;12949:157;;:::o;13112:109::-;13193:21;13208:5;13193:21;:::i;:::-;13188:3;13181:34;13112:109;;:::o;13227:118::-;13314:24;13332:5;13314:24;:::i;:::-;13309:3;13302:37;13227:118;;:::o;13351:360::-;13437:3;13465:38;13497:5;13465:38;:::i;:::-;13519:70;13582:6;13577:3;13519:70;:::i;:::-;13512:77;;13598:52;13643:6;13638:3;13631:4;13624:5;13620:16;13598:52;:::i;:::-;13675:29;13697:6;13675:29;:::i;:::-;13670:3;13666:39;13659:46;;13441:270;13351:360;;;;:::o;13717:364::-;13805:3;13833:39;13866:5;13833:39;:::i;:::-;13888:71;13952:6;13947:3;13888:71;:::i;:::-;13881:78;;13968:52;14013:6;14008:3;14001:4;13994:5;13990:16;13968:52;:::i;:::-;14045:29;14067:6;14045:29;:::i;:::-;14040:3;14036:39;14029:46;;13809:272;13717:364;;;;:::o;14087:377::-;14193:3;14221:39;14254:5;14221:39;:::i;:::-;14276:89;14358:6;14353:3;14276:89;:::i;:::-;14269:96;;14374:52;14419:6;14414:3;14407:4;14400:5;14396:16;14374:52;:::i;:::-;14451:6;14446:3;14442:16;14435:23;;14197:267;14087:377;;;;:::o;14494:845::-;14597:3;14634:5;14628:12;14663:36;14689:9;14663:36;:::i;:::-;14715:89;14797:6;14792:3;14715:89;:::i;:::-;14708:96;;14835:1;14824:9;14820:17;14851:1;14846:137;;;;14997:1;14992:341;;;;14813:520;;14846:137;14930:4;14926:9;14915;14911:25;14906:3;14899:38;14966:6;14961:3;14957:16;14950:23;;14846:137;;14992:341;15059:38;15091:5;15059:38;:::i;:::-;15119:1;15133:154;15147:6;15144:1;15141:13;15133:154;;;15221:7;15215:14;15211:1;15206:3;15202:11;15195:35;15271:1;15262:7;15258:15;15247:26;;15169:4;15166:1;15162:12;15157:17;;15133:154;;;15316:6;15311:3;15307:16;15300:23;;14999:334;;14813:520;;14601:738;;14494:845;;;;:::o;15345:366::-;15487:3;15508:67;15572:2;15567:3;15508:67;:::i;:::-;15501:74;;15584:93;15673:3;15584:93;:::i;:::-;15702:2;15697:3;15693:12;15686:19;;15345:366;;;:::o;15717:::-;15859:3;15880:67;15944:2;15939:3;15880:67;:::i;:::-;15873:74;;15956:93;16045:3;15956:93;:::i;:::-;16074:2;16069:3;16065:12;16058:19;;15717:366;;;:::o;16089:::-;16231:3;16252:67;16316:2;16311:3;16252:67;:::i;:::-;16245:74;;16328:93;16417:3;16328:93;:::i;:::-;16446:2;16441:3;16437:12;16430:19;;16089:366;;;:::o;16461:::-;16603:3;16624:67;16688:2;16683:3;16624:67;:::i;:::-;16617:74;;16700:93;16789:3;16700:93;:::i;:::-;16818:2;16813:3;16809:12;16802:19;;16461:366;;;:::o;16833:::-;16975:3;16996:67;17060:2;17055:3;16996:67;:::i;:::-;16989:74;;17072:93;17161:3;17072:93;:::i;:::-;17190:2;17185:3;17181:12;17174:19;;16833:366;;;:::o;17205:::-;17347:3;17368:67;17432:2;17427:3;17368:67;:::i;:::-;17361:74;;17444:93;17533:3;17444:93;:::i;:::-;17562:2;17557:3;17553:12;17546:19;;17205:366;;;:::o;17577:::-;17719:3;17740:67;17804:2;17799:3;17740:67;:::i;:::-;17733:74;;17816:93;17905:3;17816:93;:::i;:::-;17934:2;17929:3;17925:12;17918:19;;17577:366;;;:::o;17949:::-;18091:3;18112:67;18176:2;18171:3;18112:67;:::i;:::-;18105:74;;18188:93;18277:3;18188:93;:::i;:::-;18306:2;18301:3;18297:12;18290:19;;17949:366;;;:::o;18321:::-;18463:3;18484:67;18548:2;18543:3;18484:67;:::i;:::-;18477:74;;18560:93;18649:3;18560:93;:::i;:::-;18678:2;18673:3;18669:12;18662:19;;18321:366;;;:::o;18693:::-;18835:3;18856:67;18920:2;18915:3;18856:67;:::i;:::-;18849:74;;18932:93;19021:3;18932:93;:::i;:::-;19050:2;19045:3;19041:12;19034:19;;18693:366;;;:::o;19065:::-;19207:3;19228:67;19292:2;19287:3;19228:67;:::i;:::-;19221:74;;19304:93;19393:3;19304:93;:::i;:::-;19422:2;19417:3;19413:12;19406:19;;19065:366;;;:::o;19437:::-;19579:3;19600:67;19664:2;19659:3;19600:67;:::i;:::-;19593:74;;19676:93;19765:3;19676:93;:::i;:::-;19794:2;19789:3;19785:12;19778:19;;19437:366;;;:::o;19809:::-;19951:3;19972:67;20036:2;20031:3;19972:67;:::i;:::-;19965:74;;20048:93;20137:3;20048:93;:::i;:::-;20166:2;20161:3;20157:12;20150:19;;19809:366;;;:::o;20181:::-;20323:3;20344:67;20408:2;20403:3;20344:67;:::i;:::-;20337:74;;20420:93;20509:3;20420:93;:::i;:::-;20538:2;20533:3;20529:12;20522:19;;20181:366;;;:::o;20553:::-;20695:3;20716:67;20780:2;20775:3;20716:67;:::i;:::-;20709:74;;20792:93;20881:3;20792:93;:::i;:::-;20910:2;20905:3;20901:12;20894:19;;20553:366;;;:::o;20925:::-;21067:3;21088:67;21152:2;21147:3;21088:67;:::i;:::-;21081:74;;21164:93;21253:3;21164:93;:::i;:::-;21282:2;21277:3;21273:12;21266:19;;20925:366;;;:::o;21297:::-;21439:3;21460:67;21524:2;21519:3;21460:67;:::i;:::-;21453:74;;21536:93;21625:3;21536:93;:::i;:::-;21654:2;21649:3;21645:12;21638:19;;21297:366;;;:::o;21669:::-;21811:3;21832:67;21896:2;21891:3;21832:67;:::i;:::-;21825:74;;21908:93;21997:3;21908:93;:::i;:::-;22026:2;22021:3;22017:12;22010:19;;21669:366;;;:::o;22041:::-;22183:3;22204:67;22268:2;22263:3;22204:67;:::i;:::-;22197:74;;22280:93;22369:3;22280:93;:::i;:::-;22398:2;22393:3;22389:12;22382:19;;22041:366;;;:::o;22413:::-;22555:3;22576:67;22640:2;22635:3;22576:67;:::i;:::-;22569:74;;22652:93;22741:3;22652:93;:::i;:::-;22770:2;22765:3;22761:12;22754:19;;22413:366;;;:::o;22785:::-;22927:3;22948:67;23012:2;23007:3;22948:67;:::i;:::-;22941:74;;23024:93;23113:3;23024:93;:::i;:::-;23142:2;23137:3;23133:12;23126:19;;22785:366;;;:::o;23157:::-;23299:3;23320:67;23384:2;23379:3;23320:67;:::i;:::-;23313:74;;23396:93;23485:3;23396:93;:::i;:::-;23514:2;23509:3;23505:12;23498:19;;23157:366;;;:::o;23529:::-;23671:3;23692:67;23756:2;23751:3;23692:67;:::i;:::-;23685:74;;23768:93;23857:3;23768:93;:::i;:::-;23886:2;23881:3;23877:12;23870:19;;23529:366;;;:::o;23901:::-;24043:3;24064:67;24128:2;24123:3;24064:67;:::i;:::-;24057:74;;24140:93;24229:3;24140:93;:::i;:::-;24258:2;24253:3;24249:12;24242:19;;23901:366;;;:::o;24273:398::-;24432:3;24453:83;24534:1;24529:3;24453:83;:::i;:::-;24446:90;;24545:93;24634:3;24545:93;:::i;:::-;24663:1;24658:3;24654:11;24647:18;;24273:398;;;:::o;24677:366::-;24819:3;24840:67;24904:2;24899:3;24840:67;:::i;:::-;24833:74;;24916:93;25005:3;24916:93;:::i;:::-;25034:2;25029:3;25025:12;25018:19;;24677:366;;;:::o;25049:::-;25191:3;25212:67;25276:2;25271:3;25212:67;:::i;:::-;25205:74;;25288:93;25377:3;25288:93;:::i;:::-;25406:2;25401:3;25397:12;25390:19;;25049:366;;;:::o;25421:::-;25563:3;25584:67;25648:2;25643:3;25584:67;:::i;:::-;25577:74;;25660:93;25749:3;25660:93;:::i;:::-;25778:2;25773:3;25769:12;25762:19;;25421:366;;;:::o;25793:::-;25935:3;25956:67;26020:2;26015:3;25956:67;:::i;:::-;25949:74;;26032:93;26121:3;26032:93;:::i;:::-;26150:2;26145:3;26141:12;26134:19;;25793:366;;;:::o;26165:118::-;26252:24;26270:5;26252:24;:::i;:::-;26247:3;26240:37;26165:118;;:::o;26289:256::-;26401:3;26416:75;26487:3;26478:6;26416:75;:::i;:::-;26516:2;26511:3;26507:12;26500:19;;26536:3;26529:10;;26289:256;;;;:::o;26551:589::-;26776:3;26798:95;26889:3;26880:6;26798:95;:::i;:::-;26791:102;;26910:95;27001:3;26992:6;26910:95;:::i;:::-;26903:102;;27022:92;27110:3;27101:6;27022:92;:::i;:::-;27015:99;;27131:3;27124:10;;26551:589;;;;;;:::o;27146:379::-;27330:3;27352:147;27495:3;27352:147;:::i;:::-;27345:154;;27516:3;27509:10;;27146:379;;;:::o;27531:222::-;27624:4;27662:2;27651:9;27647:18;27639:26;;27675:71;27743:1;27732:9;27728:17;27719:6;27675:71;:::i;:::-;27531:222;;;;:::o;27759:254::-;27868:4;27906:2;27895:9;27891:18;27883:26;;27919:87;28003:1;27992:9;27988:17;27979:6;27919:87;:::i;:::-;27759:254;;;;:::o;28019:640::-;28214:4;28252:3;28241:9;28237:19;28229:27;;28266:71;28334:1;28323:9;28319:17;28310:6;28266:71;:::i;:::-;28347:72;28415:2;28404:9;28400:18;28391:6;28347:72;:::i;:::-;28429;28497:2;28486:9;28482:18;28473:6;28429:72;:::i;:::-;28548:9;28542:4;28538:20;28533:2;28522:9;28518:18;28511:48;28576:76;28647:4;28638:6;28576:76;:::i;:::-;28568:84;;28019:640;;;;;;;:::o;28665:210::-;28752:4;28790:2;28779:9;28775:18;28767:26;;28803:65;28865:1;28854:9;28850:17;28841:6;28803:65;:::i;:::-;28665:210;;;;:::o;28881:222::-;28974:4;29012:2;29001:9;28997:18;28989:26;;29025:71;29093:1;29082:9;29078:17;29069:6;29025:71;:::i;:::-;28881:222;;;;:::o;29109:313::-;29222:4;29260:2;29249:9;29245:18;29237:26;;29309:9;29303:4;29299:20;29295:1;29284:9;29280:17;29273:47;29337:78;29410:4;29401:6;29337:78;:::i;:::-;29329:86;;29109:313;;;;:::o;29428:419::-;29594:4;29632:2;29621:9;29617:18;29609:26;;29681:9;29675:4;29671:20;29667:1;29656:9;29652:17;29645:47;29709:131;29835:4;29709:131;:::i;:::-;29701:139;;29428:419;;;:::o;29853:::-;30019:4;30057:2;30046:9;30042:18;30034:26;;30106:9;30100:4;30096:20;30092:1;30081:9;30077:17;30070:47;30134:131;30260:4;30134:131;:::i;:::-;30126:139;;29853:419;;;:::o;30278:::-;30444:4;30482:2;30471:9;30467:18;30459:26;;30531:9;30525:4;30521:20;30517:1;30506:9;30502:17;30495:47;30559:131;30685:4;30559:131;:::i;:::-;30551:139;;30278:419;;;:::o;30703:::-;30869:4;30907:2;30896:9;30892:18;30884:26;;30956:9;30950:4;30946:20;30942:1;30931:9;30927:17;30920:47;30984:131;31110:4;30984:131;:::i;:::-;30976:139;;30703:419;;;:::o;31128:::-;31294:4;31332:2;31321:9;31317:18;31309:26;;31381:9;31375:4;31371:20;31367:1;31356:9;31352:17;31345:47;31409:131;31535:4;31409:131;:::i;:::-;31401:139;;31128:419;;;:::o;31553:::-;31719:4;31757:2;31746:9;31742:18;31734:26;;31806:9;31800:4;31796:20;31792:1;31781:9;31777:17;31770:47;31834:131;31960:4;31834:131;:::i;:::-;31826:139;;31553:419;;;:::o;31978:::-;32144:4;32182:2;32171:9;32167:18;32159:26;;32231:9;32225:4;32221:20;32217:1;32206:9;32202:17;32195:47;32259:131;32385:4;32259:131;:::i;:::-;32251:139;;31978:419;;;:::o;32403:::-;32569:4;32607:2;32596:9;32592:18;32584:26;;32656:9;32650:4;32646:20;32642:1;32631:9;32627:17;32620:47;32684:131;32810:4;32684:131;:::i;:::-;32676:139;;32403:419;;;:::o;32828:::-;32994:4;33032:2;33021:9;33017:18;33009:26;;33081:9;33075:4;33071:20;33067:1;33056:9;33052:17;33045:47;33109:131;33235:4;33109:131;:::i;:::-;33101:139;;32828:419;;;:::o;33253:::-;33419:4;33457:2;33446:9;33442:18;33434:26;;33506:9;33500:4;33496:20;33492:1;33481:9;33477:17;33470:47;33534:131;33660:4;33534:131;:::i;:::-;33526:139;;33253:419;;;:::o;33678:::-;33844:4;33882:2;33871:9;33867:18;33859:26;;33931:9;33925:4;33921:20;33917:1;33906:9;33902:17;33895:47;33959:131;34085:4;33959:131;:::i;:::-;33951:139;;33678:419;;;:::o;34103:::-;34269:4;34307:2;34296:9;34292:18;34284:26;;34356:9;34350:4;34346:20;34342:1;34331:9;34327:17;34320:47;34384:131;34510:4;34384:131;:::i;:::-;34376:139;;34103:419;;;:::o;34528:::-;34694:4;34732:2;34721:9;34717:18;34709:26;;34781:9;34775:4;34771:20;34767:1;34756:9;34752:17;34745:47;34809:131;34935:4;34809:131;:::i;:::-;34801:139;;34528:419;;;:::o;34953:::-;35119:4;35157:2;35146:9;35142:18;35134:26;;35206:9;35200:4;35196:20;35192:1;35181:9;35177:17;35170:47;35234:131;35360:4;35234:131;:::i;:::-;35226:139;;34953:419;;;:::o;35378:::-;35544:4;35582:2;35571:9;35567:18;35559:26;;35631:9;35625:4;35621:20;35617:1;35606:9;35602:17;35595:47;35659:131;35785:4;35659:131;:::i;:::-;35651:139;;35378:419;;;:::o;35803:::-;35969:4;36007:2;35996:9;35992:18;35984:26;;36056:9;36050:4;36046:20;36042:1;36031:9;36027:17;36020:47;36084:131;36210:4;36084:131;:::i;:::-;36076:139;;35803:419;;;:::o;36228:::-;36394:4;36432:2;36421:9;36417:18;36409:26;;36481:9;36475:4;36471:20;36467:1;36456:9;36452:17;36445:47;36509:131;36635:4;36509:131;:::i;:::-;36501:139;;36228:419;;;:::o;36653:::-;36819:4;36857:2;36846:9;36842:18;36834:26;;36906:9;36900:4;36896:20;36892:1;36881:9;36877:17;36870:47;36934:131;37060:4;36934:131;:::i;:::-;36926:139;;36653:419;;;:::o;37078:::-;37244:4;37282:2;37271:9;37267:18;37259:26;;37331:9;37325:4;37321:20;37317:1;37306:9;37302:17;37295:47;37359:131;37485:4;37359:131;:::i;:::-;37351:139;;37078:419;;;:::o;37503:::-;37669:4;37707:2;37696:9;37692:18;37684:26;;37756:9;37750:4;37746:20;37742:1;37731:9;37727:17;37720:47;37784:131;37910:4;37784:131;:::i;:::-;37776:139;;37503:419;;;:::o;37928:::-;38094:4;38132:2;38121:9;38117:18;38109:26;;38181:9;38175:4;38171:20;38167:1;38156:9;38152:17;38145:47;38209:131;38335:4;38209:131;:::i;:::-;38201:139;;37928:419;;;:::o;38353:::-;38519:4;38557:2;38546:9;38542:18;38534:26;;38606:9;38600:4;38596:20;38592:1;38581:9;38577:17;38570:47;38634:131;38760:4;38634:131;:::i;:::-;38626:139;;38353:419;;;:::o;38778:::-;38944:4;38982:2;38971:9;38967:18;38959:26;;39031:9;39025:4;39021:20;39017:1;39006:9;39002:17;38995:47;39059:131;39185:4;39059:131;:::i;:::-;39051:139;;38778:419;;;:::o;39203:::-;39369:4;39407:2;39396:9;39392:18;39384:26;;39456:9;39450:4;39446:20;39442:1;39431:9;39427:17;39420:47;39484:131;39610:4;39484:131;:::i;:::-;39476:139;;39203:419;;;:::o;39628:::-;39794:4;39832:2;39821:9;39817:18;39809:26;;39881:9;39875:4;39871:20;39867:1;39856:9;39852:17;39845:47;39909:131;40035:4;39909:131;:::i;:::-;39901:139;;39628:419;;;:::o;40053:::-;40219:4;40257:2;40246:9;40242:18;40234:26;;40306:9;40300:4;40296:20;40292:1;40281:9;40277:17;40270:47;40334:131;40460:4;40334:131;:::i;:::-;40326:139;;40053:419;;;:::o;40478:::-;40644:4;40682:2;40671:9;40667:18;40659:26;;40731:9;40725:4;40721:20;40717:1;40706:9;40702:17;40695:47;40759:131;40885:4;40759:131;:::i;:::-;40751:139;;40478:419;;;:::o;40903:::-;41069:4;41107:2;41096:9;41092:18;41084:26;;41156:9;41150:4;41146:20;41142:1;41131:9;41127:17;41120:47;41184:131;41310:4;41184:131;:::i;:::-;41176:139;;40903:419;;;:::o;41328:222::-;41421:4;41459:2;41448:9;41444:18;41436:26;;41472:71;41540:1;41529:9;41525:17;41516:6;41472:71;:::i;:::-;41328:222;;;;:::o;41556:129::-;41590:6;41617:20;;:::i;:::-;41607:30;;41646:33;41674:4;41666:6;41646:33;:::i;:::-;41556:129;;;:::o;41691:75::-;41724:6;41757:2;41751:9;41741:19;;41691:75;:::o;41772:319::-;41857:4;41947:18;41939:6;41936:30;41933:56;;;41969:18;;:::i;:::-;41933:56;42019:4;42011:6;42007:17;41999:25;;42079:4;42073;42069:15;42061:23;;41772:319;;;:::o;42097:311::-;42174:4;42264:18;42256:6;42253:30;42250:56;;;42286:18;;:::i;:::-;42250:56;42336:4;42328:6;42324:17;42316:25;;42396:4;42390;42386:15;42378:23;;42097:311;;;:::o;42414:307::-;42475:4;42565:18;42557:6;42554:30;42551:56;;;42587:18;;:::i;:::-;42551:56;42625:29;42647:6;42625:29;:::i;:::-;42617:37;;42709:4;42703;42699:15;42691:23;;42414:307;;;:::o;42727:308::-;42789:4;42879:18;42871:6;42868:30;42865:56;;;42901:18;;:::i;:::-;42865:56;42939:29;42961:6;42939:29;:::i;:::-;42931:37;;43023:4;43017;43013:15;43005:23;;42727:308;;;:::o;43041:141::-;43090:4;43113:3;43105:11;;43136:3;43133:1;43126:14;43170:4;43167:1;43157:18;43149:26;;43041:141;;;:::o;43188:98::-;43239:6;43273:5;43267:12;43257:22;;43188:98;;;:::o;43292:99::-;43344:6;43378:5;43372:12;43362:22;;43292:99;;;:::o;43397:168::-;43480:11;43514:6;43509:3;43502:19;43554:4;43549:3;43545:14;43530:29;;43397:168;;;;:::o;43571:147::-;43672:11;43709:3;43694:18;;43571:147;;;;:::o;43724:169::-;43808:11;43842:6;43837:3;43830:19;43882:4;43877:3;43873:14;43858:29;;43724:169;;;;:::o;43899:148::-;44001:11;44038:3;44023:18;;43899:148;;;;:::o;44053:305::-;44093:3;44112:20;44130:1;44112:20;:::i;:::-;44107:25;;44146:20;44164:1;44146:20;:::i;:::-;44141:25;;44300:1;44232:66;44228:74;44225:1;44222:81;44219:107;;;44306:18;;:::i;:::-;44219:107;44350:1;44347;44343:9;44336:16;;44053:305;;;;:::o;44364:185::-;44404:1;44421:20;44439:1;44421:20;:::i;:::-;44416:25;;44455:20;44473:1;44455:20;:::i;:::-;44450:25;;44494:1;44484:35;;44499:18;;:::i;:::-;44484:35;44541:1;44538;44534:9;44529:14;;44364:185;;;;:::o;44555:348::-;44595:7;44618:20;44636:1;44618:20;:::i;:::-;44613:25;;44652:20;44670:1;44652:20;:::i;:::-;44647:25;;44840:1;44772:66;44768:74;44765:1;44762:81;44757:1;44750:9;44743:17;44739:105;44736:131;;;44847:18;;:::i;:::-;44736:131;44895:1;44892;44888:9;44877:20;;44555:348;;;;:::o;44909:191::-;44949:4;44969:20;44987:1;44969:20;:::i;:::-;44964:25;;45003:20;45021:1;45003:20;:::i;:::-;44998:25;;45042:1;45039;45036:8;45033:34;;;45047:18;;:::i;:::-;45033:34;45092:1;45089;45085:9;45077:17;;44909:191;;;;:::o;45106:96::-;45143:7;45172:24;45190:5;45172:24;:::i;:::-;45161:35;;45106:96;;;:::o;45208:104::-;45253:7;45282:24;45300:5;45282:24;:::i;:::-;45271:35;;45208:104;;;:::o;45318:90::-;45352:7;45395:5;45388:13;45381:21;45370:32;;45318:90;;;:::o;45414:77::-;45451:7;45480:5;45469:16;;45414:77;;;:::o;45497:149::-;45533:7;45573:66;45566:5;45562:78;45551:89;;45497:149;;;:::o;45652:126::-;45689:7;45729:42;45722:5;45718:54;45707:65;;45652:126;;;:::o;45784:77::-;45821:7;45850:5;45839:16;;45784:77;;;:::o;45867:154::-;45951:6;45946:3;45941;45928:30;46013:1;46004:6;45999:3;45995:16;45988:27;45867:154;;;:::o;46027:307::-;46095:1;46105:113;46119:6;46116:1;46113:13;46105:113;;;46204:1;46199:3;46195:11;46189:18;46185:1;46180:3;46176:11;46169:39;46141:2;46138:1;46134:10;46129:15;;46105:113;;;46236:6;46233:1;46230:13;46227:101;;;46316:1;46307:6;46302:3;46298:16;46291:27;46227:101;46076:258;46027:307;;;:::o;46340:320::-;46384:6;46421:1;46415:4;46411:12;46401:22;;46468:1;46462:4;46458:12;46489:18;46479:81;;46545:4;46537:6;46533:17;46523:27;;46479:81;46607:2;46599:6;46596:14;46576:18;46573:38;46570:84;;;46626:18;;:::i;:::-;46570:84;46391:269;46340:320;;;:::o;46666:281::-;46749:27;46771:4;46749:27;:::i;:::-;46741:6;46737:40;46879:6;46867:10;46864:22;46843:18;46831:10;46828:34;46825:62;46822:88;;;46890:18;;:::i;:::-;46822:88;46930:10;46926:2;46919:22;46709:238;46666:281;;:::o;46953:233::-;46992:3;47015:24;47033:5;47015:24;:::i;:::-;47006:33;;47061:66;47054:5;47051:77;47048:103;;;47131:18;;:::i;:::-;47048:103;47178:1;47171:5;47167:13;47160:20;;46953:233;;;:::o;47192:100::-;47231:7;47260:26;47280:5;47260:26;:::i;:::-;47249:37;;47192:100;;;:::o;47298:94::-;47337:7;47366:20;47380:5;47366:20;:::i;:::-;47355:31;;47298:94;;;:::o;47398:176::-;47430:1;47447:20;47465:1;47447:20;:::i;:::-;47442:25;;47481:20;47499:1;47481:20;:::i;:::-;47476:25;;47520:1;47510:35;;47525:18;;:::i;:::-;47510:35;47566:1;47563;47559:9;47554:14;;47398:176;;;;:::o;47580:180::-;47628:77;47625:1;47618:88;47725:4;47722:1;47715:15;47749:4;47746:1;47739:15;47766:180;47814:77;47811:1;47804:88;47911:4;47908:1;47901:15;47935:4;47932:1;47925:15;47952:180;48000:77;47997:1;47990:88;48097:4;48094:1;48087:15;48121:4;48118:1;48111:15;48138:180;48186:77;48183:1;48176:88;48283:4;48280:1;48273:15;48307:4;48304:1;48297:15;48324:180;48372:77;48369:1;48362:88;48469:4;48466:1;48459:15;48493:4;48490:1;48483:15;48510:117;48619:1;48616;48609:12;48633:117;48742:1;48739;48732:12;48756:117;48865:1;48862;48855:12;48879:117;48988:1;48985;48978:12;49002:117;49111:1;49108;49101:12;49125:117;49234:1;49231;49224:12;49248:102;49289:6;49340:2;49336:7;49331:2;49324:5;49320:14;49316:28;49306:38;;49248:102;;;:::o;49356:94::-;49389:8;49437:5;49433:2;49429:14;49408:35;;49356:94;;;:::o;49456:243::-;49596:34;49592:1;49584:6;49580:14;49573:58;49665:26;49660:2;49652:6;49648:15;49641:51;49456:243;:::o;49705:237::-;49845:34;49841:1;49833:6;49829:14;49822:58;49914:20;49909:2;49901:6;49897:15;49890:45;49705:237;:::o;49948:225::-;50088:34;50084:1;50076:6;50072:14;50065:58;50157:8;50152:2;50144:6;50140:15;50133:33;49948:225;:::o;50179:224::-;50319:34;50315:1;50307:6;50303:14;50296:58;50388:7;50383:2;50375:6;50371:15;50364:32;50179:224;:::o;50409:178::-;50549:30;50545:1;50537:6;50533:14;50526:54;50409:178;:::o;50593:223::-;50733:34;50729:1;50721:6;50717:14;50710:58;50802:6;50797:2;50789:6;50785:15;50778:31;50593:223;:::o;50822:::-;50962:34;50958:1;50950:6;50946:14;50939:58;51031:6;51026:2;51018:6;51014:15;51007:31;50822:223;:::o;51051:175::-;51191:27;51187:1;51179:6;51175:14;51168:51;51051:175;:::o;51232:241::-;51372:34;51368:1;51360:6;51356:14;51349:58;51441:24;51436:2;51428:6;51424:15;51417:49;51232:241;:::o;51479:245::-;51619:34;51615:1;51607:6;51603:14;51596:58;51688:28;51683:2;51675:6;51671:15;51664:53;51479:245;:::o;51730:231::-;51870:34;51866:1;51858:6;51854:14;51847:58;51939:14;51934:2;51926:6;51922:15;51915:39;51730:231;:::o;51967:243::-;52107:34;52103:1;52095:6;52091:14;52084:58;52176:26;52171:2;52163:6;52159:15;52152:51;51967:243;:::o;52216:229::-;52356:34;52352:1;52344:6;52340:14;52333:58;52425:12;52420:2;52412:6;52408:15;52401:37;52216:229;:::o;52451:228::-;52591:34;52587:1;52579:6;52575:14;52568:58;52660:11;52655:2;52647:6;52643:15;52636:36;52451:228;:::o;52685:172::-;52825:24;52821:1;52813:6;52809:14;52802:48;52685:172;:::o;52863:221::-;53003:34;52999:1;52991:6;52987:14;52980:58;53072:4;53067:2;53059:6;53055:15;53048:29;52863:221;:::o;53090:182::-;53230:34;53226:1;53218:6;53214:14;53207:58;53090:182;:::o;53278:231::-;53418:34;53414:1;53406:6;53402:14;53395:58;53487:14;53482:2;53474:6;53470:15;53463:39;53278:231;:::o;53515:182::-;53655:34;53651:1;53643:6;53639:14;53632:58;53515:182;:::o;53703:::-;53843:34;53839:1;53831:6;53827:14;53820:58;53703:182;:::o;53891:172::-;54031:24;54027:1;54019:6;54015:14;54008:48;53891:172;:::o;54069:169::-;54209:21;54205:1;54197:6;54193:14;54186:45;54069:169;:::o;54244:234::-;54384:34;54380:1;54372:6;54368:14;54361:58;54453:17;54448:2;54440:6;54436:15;54429:42;54244:234;:::o;54484:220::-;54624:34;54620:1;54612:6;54608:14;54601:58;54693:3;54688:2;54680:6;54676:15;54669:28;54484:220;:::o;54710:114::-;;:::o;54830:168::-;54970:20;54966:1;54958:6;54954:14;54947:44;54830:168;:::o;55004:236::-;55144:34;55140:1;55132:6;55128:14;55121:58;55213:19;55208:2;55200:6;55196:15;55189:44;55004:236;:::o;55246:180::-;55386:32;55382:1;55374:6;55370:14;55363:56;55246:180;:::o;55432:177::-;55572:29;55568:1;55560:6;55556:14;55549:53;55432:177;:::o;55615:122::-;55688:24;55706:5;55688:24;:::i;:::-;55681:5;55678:35;55668:63;;55727:1;55724;55717:12;55668:63;55615:122;:::o;55743:138::-;55824:32;55850:5;55824:32;:::i;:::-;55817:5;55814:43;55804:71;;55871:1;55868;55861:12;55804:71;55743:138;:::o;55887:116::-;55957:21;55972:5;55957:21;:::i;:::-;55950:5;55947:32;55937:60;;55993:1;55990;55983:12;55937:60;55887:116;:::o;56009:122::-;56082:24;56100:5;56082:24;:::i;:::-;56075:5;56072:35;56062:63;;56121:1;56118;56111:12;56062:63;56009:122;:::o;56137:120::-;56209:23;56226:5;56209:23;:::i;:::-;56202:5;56199:34;56189:62;;56247:1;56244;56237:12;56189:62;56137:120;:::o;56263:122::-;56336:24;56354:5;56336:24;:::i;:::-;56329:5;56326:35;56316:63;;56375:1;56372;56365:12;56316:63;56263:122;:::o

Swarm Source

ipfs://73a919ee30cd306c0843ad4390209768b331091a88f661dd0b14f9e83275c486
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.