Contract 0xe30596da34b38cd3d838626997f2205c6f4a77ae 1

Contract Overview

Crow Coin: CROW Token
Balance:
271.339013806672203934 CRO

CRO Value:
$21.76 (@ $0.08/CRO)

Token:
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x39bca1a0e64b788f1db9824935f972c07b6c3f0ed87ae2eb2b064e5b45b909d6Approve68446332023-02-06 22:26:087 hrs 26 mins ago0xf6e1939102219e4d438161635457583a110ad4ba IN  Crow Coin: CROW Token0 CRO0.227008565152 4,818.691682281
0xa4d45256650276a33e522ec8d91e0aa638a6a9b375c36aed6399979a0f9ce8a6Approve68431222023-02-06 20:03:469 hrs 48 mins ago0x6014eb9d95aa5533d9c46044fb05b45c7aac5c9a IN  Crow Coin: CROW Token0 CRO0.226941162153 4,817.260924515
0x075fed40b7be8d45ab0cc87f60ba66d73025e452fb631313118fb6342c1c9e2cApprove64939462023-01-14 22:41:3023 days 7 hrs ago0xa5e20ab354c02145272d242f44a78f06de5aa505 IN  Crow Coin: CROW Token0 CRO0.225095010
0x1c13181c07258b78047ddf6eab423bd31abe8452d5abe3cd583540923f57d1c8Transfer61262812022-12-21 21:16:0347 days 8 hrs ago0x1775147d788633e7a638d2d71a5f18ccd7f639a3 IN  Crow Coin: CROW Token0 CRO0.587279978760
0x1dc302ad6d1962d9df7c75ba385ab5c004a0a57c1c80b89296afcaa4922b30faTransfer60491812022-12-16 20:13:0152 days 9 hrs ago0xccab97c471e5620973ef8a54344ea45b4e18c947 IN  Crow Coin: CROW Token0 CRO0.354863446863 4,855.223725375
0x5b9ba15e0bf49c5da5bb0e667f261c4d00194c38d54e632e4629b9ab2f1ccb4bApprove59941502022-12-13 5:48:0656 days 4 mins ago0xbd0dfe5f9441029c6ba3b0dfa75dcb811ba158bf IN  Crow Coin: CROW Token0 CRO0.218648178741 4,857.768912271
0x3217bea404ce225a6956d1a863f5d2bab0d2b8f57e9f45bb2aba02583a89c444Approve59796412022-12-12 7:02:2256 days 22 hrs ago0x766c5044ec9538b34a822a1ea4378be194d6021c IN  Crow Coin: CROW Token0 CRO0.22505 5,000
0xd19f236c22e4c1300ea9e80857c33f29ea3d5db1e3d145b9106bfa9ec92a3a8eTransfer56265382022-11-19 2:08:5880 days 3 hrs ago0x630215f9e1ce7b3025971a230b34ba982c67192c IN  Crow Coin: CROW Token0 CRO0.536424232777 4,874.766975739
0x02d1681261b5016ac7d4c5f013ea62d31830f77f19a520d4471dfc1384dec58fApprove55580122022-11-14 14:03:5784 days 15 hrs ago0x3aadea4dd053a7a227eeb049e67ba923d09f0658 IN  Crow Coin: CROW Token0 CRO0.219428748687 4,876.411144673
0xe2c3f641be2ed4c4c120013e2e09b8b12eae98829cf8746c2366b18ba8c24e59Transfer55458732022-11-13 18:44:5685 days 11 hrs ago0x77dcece4cdeaecff3abee5b90115107d3faa1ec0 IN  Crow Coin: CROW Token0 CRO0.4638019165730
0x70cf53ac496bd3f379c9fe05de0e10fae1a0b09994048cb5a457726fa3908dc3Approve55398022022-11-13 9:00:2285 days 20 hrs ago0xbf8407c4112a5ed9d84c00ebce8d0335ac6dd583 IN  Crow Coin: CROW Token0 CRO0.219589957469 4,878.692678728
0xc21df840e3572d660b3361cb6d31d2d03783a2e1f7262acc9f87238301a06020Approve54710742022-11-08 20:20:1490 days 9 hrs ago0x3f8bf1b8d4ee11794437dd25b2b47b30d18eadde IN  Crow Coin: CROW Token0 CRO0.22509501 5,001
0xc1ac6f8bb8f73da36d99dfa6a05b1720732a155854058027b5cdcde91e467a10Approve54519172022-11-07 14:00:0891 days 15 hrs ago0x85375b70df7eadb287f154c533bcefce74fb16d0 IN  Crow Coin: CROW Token0 CRO0.225050
0x152a32f2e6464aaf04c5d8d60cc8b3b612884b97059335dbe73119d875fd91f5Set Is Fee Exemp...54389002022-11-06 17:26:5492 days 12 hrs agoCronus: Deployer IN  Crow Coin: CROW Token0 CRO0.236618007697 4,882.748817531
0x5293ffda12cc6c3f23f42c9dcb354a658af87e33fd88687815fd1b76096da913Approve54383782022-11-06 16:37:1492 days 13 hrs ago0x51489d1d6b730f3ac9ca9c51ead67612e66f4f9a IN  Crow Coin: CROW Token0 CRO0.2196699841950
0x8eccb077921c15f1be0a2e2b90efdbf00fd3b82ae3a9e12511d8045c4053f2e0Approve54347902022-11-06 10:56:4192 days 18 hrs ago0x83ed6c8ebde65930623e60a40425671ee88f5cb1 IN  Crow Coin: CROW Token0 CRO0.22509501 5,001
0x71290a54aac6f2e58d39a7d2db475c9e2a60be2bd1f8c254f4bd833702b25fc4Approve54106832022-11-04 20:59:0294 days 8 hrs ago0x632da8d70f216998584accd59eee6d2a4da0e4a9 IN  Crow Coin: CROW Token0 CRO0.225050
0xb65226054800cb4340830278ac9cee4a4aa1dfcb354a19433127a56b2e902f25Approve53998532022-11-04 3:54:2995 days 1 hr ago0x80b99c36072b328add1b3a62d8440256934a8164 IN  Crow Coin: CROW Token0 CRO0.225050
0x069d679117c84de07ca13c3b72023c1073ae75aabd96542fc4206d3563b1a113Transfer53962232022-11-03 22:11:5095 days 7 hrs ago0xc72b7b4c2c91c65121578a5d75370575e1cd94e2 IN  Crow Coin: CROW Token0 CRO0.391250433352 4,885.195636758
0x4e9c3893d1b80b83e4362f146048546b4710a8ee4a188763f400cf5deaa3fc10Transfer53961802022-11-03 22:07:4795 days 7 hrs ago0x6b283aad62d9a63fb0fba548cc20d5c4e96b41c8 IN  Crow Coin: CROW Token0 CRO0.391309207948 4,885.19753746
0x4e523712a1f22772854a00ed3cff281fb500ab15400a3680f8621ade63199e20Set Fees53945232022-11-03 19:31:0495 days 10 hrs agoCronus: Deployer IN  Crow Coin: CROW Token0 CRO0.189348442766 4,884.772663782
0x61cfe107a463bca387c8f9dfd89dd4339f688798ecff36269d8fdaa7fff703d4Set Max Wallet53943382022-11-03 19:13:3495 days 10 hrs agoCronus: Deployer IN  Crow Coin: CROW Token0 CRO0.160679990426 4,884.781128061
0xd5f7c89e99dddb1c4ee8f617976c3260cfccaccdeb962d09f6724e5ae26e4391Approve52126112022-10-22 21:02:30107 days 8 hrs ago0x549f2a57b72f39f0c39f392bd39f80cf8c46a5fc IN  Crow Coin: CROW Token0 CRO0.220304176732 4,894.560691669
0x5a53ea0fa2fa2e31cd280d538a899510926b1308eea4793ec9f2771be15541beApprove50812382022-10-14 5:33:03116 days 19 mins ago0x0c50c2bc24e3923969eb806c5b9d4fcac529a4dd IN  Crow Coin: CROW Token0 CRO0.220534409325 4,899.675834828
0x01bcf2235e478c4be78ad01caae71133bc499b94ec9de13b95964648f2cde006Approve49247122022-10-03 22:36:02126 days 7 hrs ago0xbee69145524cc53e134ec1ebd9af36678dce5bbd IN  Crow Coin: CROW Token0 CRO0.2207913633810
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0xb19a81536b1712da5af2e12f2f4a61aa92c3406f071f42828bc6b03a836ef7a768446562023-02-06 22:28:197 hrs 24 mins ago Mad Meerkat Finance: Master Meerkat & Router Crow Coin: CROW Token2.073218469520717246 CRO
0xb19a81536b1712da5af2e12f2f4a61aa92c3406f071f42828bc6b03a836ef7a768446562023-02-06 22:28:197 hrs 24 mins ago Crow Coin: CROW Token Mad Meerkat Finance: Master Meerkat & Router76.000853805624965503 CRO
0xb19a81536b1712da5af2e12f2f4a61aa92c3406f071f42828bc6b03a836ef7a768446562023-02-06 22:28:197 hrs 24 mins ago Crow Coin: CROW Token0x065a6e03dda350a4eda8009faa4b658af9024e4e304.003415222499862014 CRO
0xb19a81536b1712da5af2e12f2f4a61aa92c3406f071f42828bc6b03a836ef7a768446562023-02-06 22:28:197 hrs 24 mins ago Crow Coin: CROW Token0xccab97c471e5620973ef8a54344ea45b4e18c947304.003415222499862014 CRO
0xb19a81536b1712da5af2e12f2f4a61aa92c3406f071f42828bc6b03a836ef7a768446562023-02-06 22:28:197 hrs 24 mins ago Mad Meerkat Finance: Master Meerkat & Router Crow Coin: CROW Token684.007684250624689533 CRO
0x10acd023ac3465dae54d4be30c8de72e69327697d64c070f516a10033f98865756764792022-11-22 8:46:2376 days 21 hrs ago Mad Meerkat Finance: Master Meerkat & Router Crow Coin: CROW Token2.146456123991989493 CRO
0x10acd023ac3465dae54d4be30c8de72e69327697d64c070f516a10033f98865756764792022-11-22 8:46:2376 days 21 hrs ago Crow Coin: CROW Token Mad Meerkat Finance: Master Meerkat & Router78.651732675623281367 CRO
0x10acd023ac3465dae54d4be30c8de72e69327697d64c070f516a10033f98865756764792022-11-22 8:46:2376 days 21 hrs ago Crow Coin: CROW Token0x065a6e03dda350a4eda8009faa4b658af9024e4e314.60693070249312547 CRO
0x10acd023ac3465dae54d4be30c8de72e69327697d64c070f516a10033f98865756764792022-11-22 8:46:2376 days 21 hrs ago Crow Coin: CROW Token0xccab97c471e5620973ef8a54344ea45b4e18c947314.60693070249312547 CRO
0x10acd023ac3465dae54d4be30c8de72e69327697d64c070f516a10033f98865756764792022-11-22 8:46:2376 days 21 hrs ago Mad Meerkat Finance: Master Meerkat & Router Crow Coin: CROW Token707.865594080609532309 CRO
0xe4e9f2ceee614b275f8feb9a35359c0ca12d9e1c4081b1a88e16d24a2e0f7b3c55398002022-11-13 9:00:1085 days 20 hrs ago Mad Meerkat Finance: Master Meerkat & Router Crow Coin: CROW Token2.70956751417468551 CRO
0xe4e9f2ceee614b275f8feb9a35359c0ca12d9e1c4081b1a88e16d24a2e0f7b3c55398002022-11-13 9:00:1085 days 20 hrs ago Crow Coin: CROW Token Mad Meerkat Finance: Master Meerkat & Router91.783129510964878847 CRO
0xe4e9f2ceee614b275f8feb9a35359c0ca12d9e1c4081b1a88e16d24a2e0f7b3c55398002022-11-13 9:00:1085 days 20 hrs ago Crow Coin: CROW Token0x065a6e03dda350a4eda8009faa4b658af9024e4e367.132518043859515391 CRO
0xe4e9f2ceee614b275f8feb9a35359c0ca12d9e1c4081b1a88e16d24a2e0f7b3c55398002022-11-13 9:00:1085 days 20 hrs ago Crow Coin: CROW Token0xccab97c471e5620973ef8a54344ea45b4e18c947367.132518043859515391 CRO
0xe4e9f2ceee614b275f8feb9a35359c0ca12d9e1c4081b1a88e16d24a2e0f7b3c55398002022-11-13 9:00:1085 days 20 hrs ago Mad Meerkat Finance: Master Meerkat & Router Crow Coin: CROW Token826.04816559868390963 CRO
0x069bbfdfc26e8ead3e1183462b413726505f8a5d18bef3f7bad2a9e20b714d1054384132022-11-06 16:40:3592 days 13 hrs ago Mad Meerkat Finance: Master Meerkat & Router Crow Coin: CROW Token6.213494898184547098 CRO
0x069bbfdfc26e8ead3e1183462b413726505f8a5d18bef3f7bad2a9e20b714d1054384132022-11-06 16:40:3592 days 13 hrs ago Crow Coin: CROW Token Mad Meerkat Finance: Master Meerkat & Router159.86464528191238698 CRO
0x069bbfdfc26e8ead3e1183462b413726505f8a5d18bef3f7bad2a9e20b714d1054384132022-11-06 16:40:3592 days 13 hrs ago Crow Coin: CROW Token0x065a6e03dda350a4eda8009faa4b658af9024e4e639.458581127649547923 CRO
0x069bbfdfc26e8ead3e1183462b413726505f8a5d18bef3f7bad2a9e20b714d1054384132022-11-06 16:40:3592 days 13 hrs ago Crow Coin: CROW Token0xccab97c471e5620973ef8a54344ea45b4e18c947639.458581127649547923 CRO
0x069bbfdfc26e8ead3e1183462b413726505f8a5d18bef3f7bad2a9e20b714d1054384132022-11-06 16:40:3592 days 13 hrs ago Mad Meerkat Finance: Master Meerkat & Router Crow Coin: CROW Token1,438.781807537211482827 CRO
0x7cb654ebffb46476a3b3b3cf7b43d3a029a1da59dac0c6bc3490d954f2e64cd053950662022-11-03 20:22:2395 days 9 hrs ago Mad Meerkat Finance: Master Meerkat & Router Crow Coin: CROW Token10.579047948082135329 CRO
0x7cb654ebffb46476a3b3b3cf7b43d3a029a1da59dac0c6bc3490d954f2e64cd053950662022-11-03 20:22:2395 days 9 hrs ago Crow Coin: CROW Token Mad Meerkat Finance: Master Meerkat & Router212.444778077622906899 CRO
0x7cb654ebffb46476a3b3b3cf7b43d3a029a1da59dac0c6bc3490d954f2e64cd053950662022-11-03 20:22:2395 days 9 hrs ago Crow Coin: CROW Token0x065a6e03dda350a4eda8009faa4b658af9024e4e849.779112310491627599 CRO
0x7cb654ebffb46476a3b3b3cf7b43d3a029a1da59dac0c6bc3490d954f2e64cd053950662022-11-03 20:22:2395 days 9 hrs ago Crow Coin: CROW Token0xccab97c471e5620973ef8a54344ea45b4e18c947849.779112310491627599 CRO
0x7cb654ebffb46476a3b3b3cf7b43d3a029a1da59dac0c6bc3490d954f2e64cd053950662022-11-03 20:22:2395 days 9 hrs ago Mad Meerkat Finance: Master Meerkat & Router Crow Coin: CROW Token1,912.003002698606162099 CRO
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CROWCOIN

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at cronoscan.com on 2022-03-28
*/

//SPDX-License-Identifier: MIT
pragma solidity ^0.8.5;

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

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

        return c;
    }
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        // Solidity only automatically asserts when dividing by 0
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }
}

/**
 * BEP20 standard interface.
 */
interface IBEP20 {
    function totalSupply() external view returns (uint256);
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    function getOwner() external view returns (address);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address _owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}


/**
 * Allows for contract ownership along with multi-address authorization
 */
abstract contract Auth {
    address internal owner;
    mapping (address => bool) internal authorizations;

    constructor(address _owner) {
        owner = _owner;
        authorizations[_owner] = true;
    }

    /**
     * Function modifier to require caller to be contract owner
     */
    modifier onlyOwner() {
        require(isOwner(msg.sender), "!OWNER"); _;
    }

    /**
     * Function modifier to require caller to be authorized
     */
    modifier authorized() {
        require(isAuthorized(msg.sender), "!AUTHORIZED"); _;
    }

    /**
     * Authorize address. Owner only
     */
    function authorize(address adr) public onlyOwner {
        authorizations[adr] = true;
    }

    /**
     * Remove address' authorization. Owner only
     */
    function unauthorize(address adr) public onlyOwner {
        authorizations[adr] = false;
    }

    /**
     * Check if address is owner
     */
    function isOwner(address account) public view returns (bool) {
        return account == owner;
    }

    /**
     * Return address' authorization status
     */
    function isAuthorized(address adr) public view returns (bool) {
        return authorizations[adr];
    }

    /**
     * Transfer ownership to new address. Caller must be owner. Leaves old owner authorized
     */
    function transferOwnership(address payable adr) public onlyOwner {
        owner = adr;
        authorizations[adr] = true;
        emit OwnershipTransferred(adr);
    }

    event OwnershipTransferred(address owner);
}

interface IDEXFactory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IDEXRouter {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);

    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

contract CROWCOIN is IBEP20, Auth {
    using SafeMath for uint256;

    address WCRO = 0x5C7F8A570d578ED84E63fdFA7b1eE72dEae1AE23;
    address DEAD = 0x000000000000000000000000000000000000dEaD;
    address ZERO = 0x0000000000000000000000000000000000000000;

    string constant _name = "CrowCoin";
    string constant _symbol = "CROW";
    uint8 constant _decimals = 9;

    uint256 _totalSupply = 1000000000000 * (10 ** _decimals);
    uint256 public _maxTxAmount = (_totalSupply * 1) / 100;  //1% max tx
    uint256 public _maxWalletSize = (_totalSupply * 1) / 100;  //1% max wallet

    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) _allowances;

    mapping (address => bool) isFeeExempt;
    mapping (address => bool) isTxLimitExempt;

    uint256 liquidityFee = 4;
    uint256 teamFee =4;
    uint256 marketingFee = 4;
    uint256 totalFee = 12;
    uint256 feeDenominator = 100;
    
    address private marketingFeeReceiver = 0xCcab97c471E5620973EF8a54344Ea45B4e18C947;
    address private teamFeeReceiver = 0x065a6e03DDa350A4EdA8009Faa4b658aF9024e4e;

    IDEXRouter public router;
    address public pair;

    uint256 public launchedAt;

    bool public swapEnabled = true;
    uint256 public swapThreshold = _totalSupply / 1000 * 3; // 0.3%
    bool inSwap;
    modifier swapping() { inSwap = true; _; inSwap = false; }

    constructor () Auth(msg.sender) {
        router = IDEXRouter(0x145677FC4d9b8F19B5D56d1820c48e0443049a30);
        pair = IDEXFactory(router.factory()).createPair(WCRO, address(this));
        _allowances[address(this)][address(router)] = type(uint256).max;

        address _owner = owner;
        isFeeExempt[_owner] = true;
        isTxLimitExempt[_owner] = true;

        _balances[_owner] = _totalSupply;
        emit Transfer(address(0), _owner, _totalSupply);
    }

    receive() external payable { }

    function totalSupply() external view override returns (uint256) { return _totalSupply; }
    function decimals() external pure override returns (uint8) { return _decimals; }
    function symbol() external pure override returns (string memory) { return _symbol; }
    function name() external pure override returns (string memory) { return _name; }
    function getOwner() external view override returns (address) { return owner; }
    function balanceOf(address account) public view override returns (uint256) { return _balances[account]; }
    function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _allowances[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    function approveMax(address spender) external returns (bool) {
        return approve(spender, type(uint256).max);
    }

    function transfer(address recipient, uint256 amount) external override returns (bool) {
        return _transferFrom(msg.sender, recipient, amount);
    }

    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        if(_allowances[sender][msg.sender] != type(uint256).max){
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance");
        }

        return _transferFrom(sender, recipient, amount);
    }

    function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
        if(inSwap){ return _basicTransfer(sender, recipient, amount); }
        
        checkTxLimit(sender, amount);
        
        if (recipient != pair && recipient != DEAD) {
            require(isTxLimitExempt[recipient] || _balances[recipient] + amount <= _maxWalletSize, "Transfer amount exceeds the bag size.");
        }
        
        if(shouldSwapBack()){ swapBack(); }

        if(!launched() && recipient == pair){ require(_balances[sender] > 0); launch(); }

        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");

        uint256 amountReceived = shouldTakeFee(sender) ? takeFee(sender, recipient, amount) : amount;
        _balances[recipient] = _balances[recipient].add(amountReceived);

        emit Transfer(sender, recipient, amountReceived);
        return true;
    }
    
    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function checkTxLimit(address sender, uint256 amount) internal view {
        require(amount <= _maxTxAmount || isTxLimitExempt[sender], "TX Limit Exceeded");
    }
    
    function shouldTakeFee(address sender) internal view returns (bool) {
        return !isFeeExempt[sender];
    }

    function getTotalFee(bool selling) public view returns (uint256) {
        if(launchedAt + 1 >= block.number){ return feeDenominator.sub(1); }
        if(selling) { return totalFee.add(1); }
        return totalFee;
    }

    function takeFee(address sender, address receiver, uint256 amount) internal returns (uint256) {
        uint256 feeAmount = amount.mul(getTotalFee(receiver == pair)).div(feeDenominator);

        _balances[address(this)] = _balances[address(this)].add(feeAmount);
        emit Transfer(sender, address(this), feeAmount);

        return amount.sub(feeAmount);
    }

    function shouldSwapBack() internal view returns (bool) {
        return msg.sender != pair
        && !inSwap
        && swapEnabled
        && _balances[address(this)] >= swapThreshold;
    }

    function swapBack() internal swapping {
        uint256 contractTokenBalance = balanceOf(address(this));
        uint256 amountToLiquify = contractTokenBalance.mul(liquidityFee).div(totalFee).div(2);
        uint256 amountToSwap = contractTokenBalance.sub(amountToLiquify);

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = WCRO;

        uint256 balanceBefore = address(this).balance;

        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amountToSwap,
            0,
            path,
            address(this),
            block.timestamp
        );
        uint256 amountBNB = address(this).balance.sub(balanceBefore);
        uint256 totalBNBFee = totalFee.sub(liquidityFee.div(2));
        uint256 amountBNBLiquidity = amountBNB.mul(liquidityFee).div(totalBNBFee).div(2);
        uint256 amountBNBdevelopment = amountBNB.mul(teamFee).div(totalBNBFee);
        uint256 amountBNBMarketing = amountBNB.mul(marketingFee).div(totalBNBFee);


        (bool MarketingSuccess, /* bytes memory data */) = payable(marketingFeeReceiver).call{value: amountBNBMarketing, gas: 30000}("");
        require(MarketingSuccess, "receiver rejected ETH transfer");
        (bool developmentSuccess, /* bytes memory data */) = payable(teamFeeReceiver).call{value: amountBNBdevelopment, gas: 30000}("");
        require(developmentSuccess, "receiver rejected ETH transfer");

        if(amountToLiquify > 0){
            router.addLiquidityETH{value: amountBNBLiquidity}(
                address(this),
                amountToLiquify,
                0,
                0,
                marketingFeeReceiver,
                block.timestamp
            );
            emit AutoLiquify(amountBNBLiquidity, amountToLiquify);
        }
    }

    function buyTokens(uint256 amount, address to) internal swapping {
        address[] memory path = new address[](2);
        path[0] = WCRO;
        path[1] = address(this);

        router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(
            0,
            path,
            to,
            block.timestamp
        );
    }

    function launched() internal view returns (bool) {
        return launchedAt != 0;
    }

    function launch() internal {
        launchedAt = block.number;
    }

    function setTxLimit(uint256 amount) external authorized {
        require(amount >= _totalSupply / 1000);
        _maxTxAmount = amount;
    }

   function setMaxWallet(uint256 amount) external onlyOwner() {
        require(amount >= _totalSupply / 1000 );
        _maxWalletSize = amount;
    }    

    function setIsFeeExempt(address holder, bool exempt) external authorized {
        isFeeExempt[holder] = exempt;
    }

    function setIsTxLimitExempt(address holder, bool exempt) external authorized {
        isTxLimitExempt[holder] = exempt;
    }

    function setFees(uint256 _liquidityFee, uint256 _teamFee, uint256 _marketingFee, uint256 _feeDenominator) external authorized {
        liquidityFee = _liquidityFee;
        teamFee = _teamFee;
        marketingFee = _marketingFee;
        totalFee = _liquidityFee.add(_teamFee).add(_marketingFee);
        feeDenominator = _feeDenominator;
    }

    function setFeeReceiver(address _marketingFeeReceiver, address _teamFeeReceiver) external authorized {
        marketingFeeReceiver = _marketingFeeReceiver;
        teamFeeReceiver = _teamFeeReceiver;
    }

    function setSwapBackSettings(bool _enabled, uint256 _amount) external authorized {
        swapEnabled = _enabled;
        swapThreshold = _amount;
    }

    function manualSend() external authorized {
        uint256 contractETHBalance = address(this).balance;
        payable(marketingFeeReceiver).transfer(contractETHBalance);
    }

    function transferForeignToken(address _token) public authorized {
        require(_token != address(this), "Can't let you take all native token");
        uint256 _contractBalance = IBEP20(_token).balanceOf(address(this));
        payable(marketingFeeReceiver).transfer(_contractBalance);
    }
        
    function getCirculatingSupply() public view returns (uint256) {
        return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO));
    }

    function getLiquidityBacking(uint256 accuracy) public view returns (uint256) {
        return accuracy.mul(balanceOf(pair).mul(2)).div(getCirculatingSupply());
    }

    function isOverLiquified(uint256 target, uint256 accuracy) public view returns (bool) {
        return getLiquidityBacking(accuracy) > target;
    }
    
    event AutoLiquify(uint256 amountBNB, uint256 amountBOG);
}

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountBNB","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","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":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"authorize","outputs":[],"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":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"getLiquidityBacking","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"selling","type":"bool"}],"name":"getTotalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"isAuthorized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"target","type":"uint256"},{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"isOverLiquified","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingFeeReceiver","type":"address"},{"internalType":"address","name":"_teamFeeReceiver","type":"address"}],"name":"setFeeReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_teamFee","type":"uint256"},{"internalType":"uint256","name":"_marketingFee","type":"uint256"},{"internalType":"uint256","name":"_feeDenominator","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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":"_token","type":"address"}],"name":"transferForeignToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"adr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"unauthorize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052735c7f8a570d578ed84e63fdfa7b1ee72deae1ae23600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a620000ee919062000874565b64e8d4a51000620001009190620009b1565b60055560646001600554620001169190620009b1565b620001229190620007e1565b60065560646001600554620001389190620009b1565b620001449190620007e1565b6007556004600c556004600d556004600e55600c600f55606460105573ccab97c471e5620973ef8a54344ea45b4e18c947601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073065a6e03dda350a4eda8009faa4b658af9024e4e601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601660006101000a81548160ff02191690831515021790555060036103e8600554620002399190620007e1565b620002459190620009b1565b6017553480156200025557600080fd5b5033806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505073145677fc4d9b8f19b5d56d1820c48e0443049a30601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620003ad57600080fd5b505afa158015620003c2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003e8919062000743565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16306040518363ffffffff1660e01b81526004016200044692919062000797565b602060405180830381600087803b1580156200046157600080fd5b505af115801562000476573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200049c919062000743565b601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506001600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600554600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6005546040516200071d9190620007c4565b60405180910390a35062000ae7565b6000815190506200073d8162000acd565b92915050565b6000602082840312156200075c576200075b62000abb565b5b60006200076c848285016200072c565b91505092915050565b620007808162000a12565b82525050565b620007918162000a46565b82525050565b6000604082019050620007ae600083018562000775565b620007bd602083018462000775565b9392505050565b6000602082019050620007db600083018462000786565b92915050565b6000620007ee8262000a46565b9150620007fb8362000a46565b9250826200080e576200080d62000a8c565b5b828204905092915050565b6000808291508390505b60018511156200086b5780860481111562000843576200084262000a5d565b5b6001851615620008535780820291505b8081029050620008638562000ac0565b945062000823565b94509492505050565b6000620008818262000a46565b91506200088e8362000a50565b9250620008bd7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620008c5565b905092915050565b600082620008d75760019050620009aa565b81620008e75760009050620009aa565b81600181146200090057600281146200090b5762000941565b6001915050620009aa565b60ff84111562000920576200091f62000a5d565b5b8360020a9150848211156200093a576200093962000a5d565b5b50620009aa565b5060208310610133831016604e8410600b84101617156200097b5782820a90508381111562000975576200097462000a5d565b5b620009aa565b6200098a848484600162000819565b92509050818404811115620009a457620009a362000a5d565b5b81810290505b9392505050565b6000620009be8262000a46565b9150620009cb8362000a46565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000a075762000a0662000a5d565b5b828202905092915050565b600062000a1f8262000a26565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600080fd5b60008160011c9050919050565b62000ad88162000a12565b811462000ae457600080fd5b50565b6139168062000af76000396000f3fe6080604052600436106102135760003560e01c80638f9a55c011610118578063df20fd49116100a0578063f2fde38b1161006f578063f2fde38b146107f6578063f42938901461081f578063f84ba65d14610836578063f887ea401461085f578063fe9fbb801461088a5761021a565b8063df20fd491461073e578063e66db25e14610767578063f0b37c0414610790578063f1f3bca3146107b95761021a565b8063b6a5d7de116100e7578063b6a5d7de14610647578063bf56b37114610670578063d51ed1c81461069b578063dc93cf70146106d8578063dd62ed3e146107015761021a565b80638f9a55c01461058957806395d89b41146105b4578063a8aa1b31146105df578063a9059cbb1461060a5761021a565b8063571ac8b01161019b5780636ddd17131161016a5780636ddd1713146104a25780636fcba377146104cd57806370a08231146104f65780637d1db4a514610533578063893d20e81461055e5761021a565b8063571ac8b0146103ea5780635c85974f146104275780635d0044ca14610450578063658d4b7f146104795761021a565b806318160ddd116101e257806318160ddd146102ef57806323b872dd1461031a5780632b112e49146103575780632f54bf6e14610382578063313ce567146103bf5761021a565b80630445b6671461021f57806306fdde031461024a578063095ea7b3146102755780631161ae39146102b25761021a565b3661021a57005b600080fd5b34801561022b57600080fd5b506102346108c7565b60405161024191906132d3565b60405180910390f35b34801561025657600080fd5b5061025f6108cd565b60405161026c91906131b1565b60405180910390f35b34801561028157600080fd5b5061029c60048036038101906102979190612c6c565b61090a565b6040516102a9919061317b565b60405180910390f35b3480156102be57600080fd5b506102d960048036038101906102d49190612d73565b6109fc565b6040516102e6919061317b565b60405180910390f35b3480156102fb57600080fd5b50610304610a11565b60405161031191906132d3565b60405180910390f35b34801561032657600080fd5b50610341600480360381019061033c9190612bd9565b610a1b565b60405161034e919061317b565b60405180910390f35b34801561036357600080fd5b5061036c610c1b565b60405161037991906132d3565b60405180910390f35b34801561038e57600080fd5b506103a960048036038101906103a49190612b3f565b610c9d565b6040516103b6919061317b565b60405180910390f35b3480156103cb57600080fd5b506103d4610cf6565b6040516103e19190613371565b60405180910390f35b3480156103f657600080fd5b50610411600480360381019061040c9190612b3f565b610cff565b60405161041e919061317b565b60405180910390f35b34801561043357600080fd5b5061044e60048036038101906104499190612d19565b610d32565b005b34801561045c57600080fd5b5061047760048036038101906104729190612d19565b610da0565b005b34801561048557600080fd5b506104a0600480360381019061049b9190612c2c565b610e0e565b005b3480156104ae57600080fd5b506104b7610eb1565b6040516104c4919061317b565b60405180910390f35b3480156104d957600080fd5b506104f460048036038101906104ef9190612e06565b610ec4565b005b34801561050257600080fd5b5061051d60048036038101906105189190612b3f565b610f59565b60405161052a91906132d3565b60405180910390f35b34801561053f57600080fd5b50610548610fa2565b60405161055591906132d3565b60405180910390f35b34801561056a57600080fd5b50610573610fa8565b60405161058091906130e4565b60405180910390f35b34801561059557600080fd5b5061059e610fd1565b6040516105ab91906132d3565b60405180910390f35b3480156105c057600080fd5b506105c9610fd7565b6040516105d691906131b1565b60405180910390f35b3480156105eb57600080fd5b506105f4611014565b60405161060191906130e4565b60405180910390f35b34801561061657600080fd5b50610631600480360381019061062c9190612c6c565b61103a565b60405161063e919061317b565b60405180910390f35b34801561065357600080fd5b5061066e60048036038101906106699190612b3f565b61104f565b005b34801561067c57600080fd5b506106856110f1565b60405161069291906132d3565b60405180910390f35b3480156106a757600080fd5b506106c260048036038101906106bd9190612d19565b6110f7565b6040516106cf91906132d3565b60405180910390f35b3480156106e457600080fd5b506106ff60048036038101906106fa9190612b3f565b611169565b005b34801561070d57600080fd5b5061072860048036038101906107239190612b99565b61131a565b60405161073591906132d3565b60405180910390f35b34801561074a57600080fd5b5061076560048036038101906107609190612cd9565b6113a1565b005b34801561077357600080fd5b5061078e60048036038101906107899190612b99565b61140e565b005b34801561079c57600080fd5b506107b760048036038101906107b29190612b3f565b6114dc565b005b3480156107c557600080fd5b506107e060048036038101906107db9190612cac565b61157f565b6040516107ed91906132d3565b60405180910390f35b34801561080257600080fd5b5061081d60048036038101906108189190612b6c565b6115e1565b005b34801561082b57600080fd5b506108346116fa565b005b34801561084257600080fd5b5061085d60048036038101906108589190612c2c565b6117b3565b005b34801561086b57600080fd5b50610874611856565b6040516108819190613196565b60405180910390f35b34801561089657600080fd5b506108b160048036038101906108ac9190612b3f565b61187c565b6040516108be919061317b565b60405180910390f35b60175481565b60606040518060400160405280600881526020017f43726f77436f696e000000000000000000000000000000000000000000000000815250905090565b600081600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516109ea91906132d3565b60405180910390a36001905092915050565b600082610a08836110f7565b11905092915050565b6000600554905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610c0757610b86826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118d29092919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610c12848484611936565b90509392505050565b6000610c98610c4b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610f59565b610c8a610c79600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610f59565b600554611dc690919063ffffffff16565b611dc690919063ffffffff16565b905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006009905090565b6000610d2b827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61090a565b9050919050565b610d3b3361187c565b610d7a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d71906132b3565b60405180910390fd5b6103e8600554610d8a9190613442565b811015610d9657600080fd5b8060068190555050565b610da933610c9d565b610de8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ddf90613293565b60405180910390fd5b6103e8600554610df89190613442565b811015610e0457600080fd5b8060078190555050565b610e173361187c565b610e56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4d906132b3565b60405180910390fd5b80600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b601660009054906101000a900460ff1681565b610ecd3361187c565b610f0c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f03906132b3565b60405180910390fd5b83600c8190555082600d8190555081600e81905550610f4682610f388587611e1090919063ffffffff16565b611e1090919063ffffffff16565b600f819055508060108190555050505050565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60065481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60075481565b60606040518060400160405280600481526020017f43524f5700000000000000000000000000000000000000000000000000000000815250905090565b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000611047338484611936565b905092915050565b61105833610c9d565b611097576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161108e90613293565b60405180910390fd5b60018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60155481565b6000611162611104610c1b565b6111546111456002611137601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610f59565b611e6e90919063ffffffff16565b85611e6e90919063ffffffff16565b611ee990919063ffffffff16565b9050919050565b6111723361187c565b6111b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a8906132b3565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611220576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121790613213565b60405180910390fd5b60008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161125b91906130e4565b60206040518083038186803b15801561127357600080fd5b505afa158015611287573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112ab9190612d46565b9050601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611315573d6000803e3d6000fd5b505050565b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6113aa3361187c565b6113e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113e0906132b3565b60405180910390fd5b81601660006101000a81548160ff021916908315150217905550806017819055505050565b6114173361187c565b611456576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144d906132b3565b60405180910390fd5b81601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6114e533610c9d565b611524576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151b90613293565b60405180910390fd5b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600043600160155461159191906133ec565b106115b3576115ac6001601054611dc690919063ffffffff16565b90506115dc565b81156115d6576115cf6001600f54611e1090919063ffffffff16565b90506115dc565b600f5490505b919050565b6115ea33610c9d565b611629576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162090613293565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163816040516116ef91906130ff565b60405180910390a150565b6117033361187c565b611742576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611739906132b3565b60405180910390fd5b6000479050601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156117af573d6000803e3d6000fd5b5050565b6117bc3361187c565b6117fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f2906132b3565b60405180910390fd5b80600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600083831115829061191a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191191906131b1565b60405180910390fd5b506000838561192991906134cd565b9050809150509392505050565b6000601860009054906101000a900460ff161561195f57611958848484611f33565b9050611dbf565b6119698483612106565b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611a155750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611afe57600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611abe575060075482600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611abb91906133ec565b11155b611afd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af4906131d3565b60405180910390fd5b5b611b066121a3565b15611b1457611b1361227a565b5b611b1c61286b565b158015611b765750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b15611bd0576000600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411611bc757600080fd5b611bcf612878565b5b611c59826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118d29092919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000611ca785612881565b611cb15782611cbd565b611cbc8585856128d8565b5b9050611d1181600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e1090919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611db191906132d3565b60405180910390a360019150505b9392505050565b6000611e0883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118d2565b905092915050565b6000808284611e1f91906133ec565b905083811015611e64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e5b90613233565b60405180910390fd5b8091505092915050565b600080831415611e815760009050611ee3565b60008284611e8f9190613473565b9050828482611e9e9190613442565b14611ede576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ed590613273565b60405180910390fd5b809150505b92915050565b6000611f2b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612a73565b905092915050565b6000611fbe826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118d29092919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061205382600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e1090919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516120f391906132d3565b60405180910390a3600190509392505050565b600654811115806121605750600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61219f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612196906131f3565b60405180910390fd5b5050565b6000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156122105750601860009054906101000a900460ff16155b80156122285750601660009054906101000a900460ff165b80156122755750601754600860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001601860006101000a81548160ff02191690831515021790555060006122a030610f59565b905060006122e060026122d2600f546122c4600c5487611e6e90919063ffffffff16565b611ee990919063ffffffff16565b611ee990919063ffffffff16565b905060006122f78284611dc690919063ffffffff16565b90506000600267ffffffffffffffff81111561231657612315613682565b5b6040519080825280602002602001820160405280156123445781602001602082028036833780820191505090505b509050308160008151811061235c5761235b613653565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16816001815181106123cd576123cc613653565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000479050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008530426040518663ffffffff1660e01b81526004016124709594939291906132ee565b600060405180830381600087803b15801561248a57600080fd5b505af115801561249e573d6000803e3d6000fd5b5050505060006124b78247611dc690919063ffffffff16565b905060006124e56124d46002600c54611ee990919063ffffffff16565b600f54611dc690919063ffffffff16565b90506000612523600261251584612507600c5488611e6e90919063ffffffff16565b611ee990919063ffffffff16565b611ee990919063ffffffff16565b9050600061254e83612540600d5487611e6e90919063ffffffff16565b611ee990919063ffffffff16565b905060006125798461256b600e5488611e6e90919063ffffffff16565b611ee990919063ffffffff16565b90506000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682617530906040516125c7906130cf565b600060405180830381858888f193505050503d8060008114612605576040519150601f19603f3d011682016040523d82523d6000602084013e61260a565b606091505b505090508061264e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161264590613253565b60405180910390fd5b6000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16846175309060405161269a906130cf565b600060405180830381858888f193505050503d80600081146126d8576040519150601f19603f3d011682016040523d82523d6000602084013e6126dd565b606091505b5050905080612721576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161271890613253565b60405180910390fd5b60008b111561284257601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71986308e600080601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518863ffffffff1660e01b81526004016127b39695949392919061311a565b6060604051808303818588803b1580156127cc57600080fd5b505af11580156127e0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906128059190612db3565b5050507f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506858c604051612839929190613348565b60405180910390a15b5050505050505050505050506000601860006101000a81548160ff021916908315150217905550565b6000806015541415905090565b43601581905550565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b60008061295a60105461294c61293d601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff161461157f565b86611e6e90919063ffffffff16565b611ee990919063ffffffff16565b90506129ae81600860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e1090919063ffffffff16565b600860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612a4e91906132d3565b60405180910390a3612a698184611dc690919063ffffffff16565b9150509392505050565b60008083118290612aba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ab191906131b1565b60405180910390fd5b5060008385612ac99190613442565b9050809150509392505050565b600081359050612ae581613884565b92915050565b600081359050612afa8161389b565b92915050565b600081359050612b0f816138b2565b92915050565b600081359050612b24816138c9565b92915050565b600081519050612b39816138c9565b92915050565b600060208284031215612b5557612b546136b1565b5b6000612b6384828501612ad6565b91505092915050565b600060208284031215612b8257612b816136b1565b5b6000612b9084828501612aeb565b91505092915050565b60008060408385031215612bb057612baf6136b1565b5b6000612bbe85828601612ad6565b9250506020612bcf85828601612ad6565b9150509250929050565b600080600060608486031215612bf257612bf16136b1565b5b6000612c0086828701612ad6565b9350506020612c1186828701612ad6565b9250506040612c2286828701612b15565b9150509250925092565b60008060408385031215612c4357612c426136b1565b5b6000612c5185828601612ad6565b9250506020612c6285828601612b00565b9150509250929050565b60008060408385031215612c8357612c826136b1565b5b6000612c9185828601612ad6565b9250506020612ca285828601612b15565b9150509250929050565b600060208284031215612cc257612cc16136b1565b5b6000612cd084828501612b00565b91505092915050565b60008060408385031215612cf057612cef6136b1565b5b6000612cfe85828601612b00565b9250506020612d0f85828601612b15565b9150509250929050565b600060208284031215612d2f57612d2e6136b1565b5b6000612d3d84828501612b15565b91505092915050565b600060208284031215612d5c57612d5b6136b1565b5b6000612d6a84828501612b2a565b91505092915050565b60008060408385031215612d8a57612d896136b1565b5b6000612d9885828601612b15565b9250506020612da985828601612b15565b9150509250929050565b600080600060608486031215612dcc57612dcb6136b1565b5b6000612dda86828701612b2a565b9350506020612deb86828701612b2a565b9250506040612dfc86828701612b2a565b9150509250925092565b60008060008060808587031215612e2057612e1f6136b1565b5b6000612e2e87828801612b15565b9450506020612e3f87828801612b15565b9350506040612e5087828801612b15565b9250506060612e6187828801612b15565b91505092959194509250565b6000612e798383612e94565b60208301905092915050565b612e8e81613568565b82525050565b612e9d81613501565b82525050565b612eac81613501565b82525050565b6000612ebd8261339c565b612ec781856133bf565b9350612ed28361338c565b8060005b83811015612f03578151612eea8882612e6d565b9750612ef5836133b2565b925050600181019050612ed6565b5085935050505092915050565b612f1981613525565b82525050565b612f288161357a565b82525050565b612f378161358c565b82525050565b6000612f48826133a7565b612f5281856133db565b9350612f628185602086016135c2565b612f6b816136b6565b840191505092915050565b6000612f836025836133db565b9150612f8e826136c7565b604082019050919050565b6000612fa66011836133db565b9150612fb182613716565b602082019050919050565b6000612fc96023836133db565b9150612fd48261373f565b604082019050919050565b6000612fec601b836133db565b9150612ff78261378e565b602082019050919050565b600061300f601e836133db565b915061301a826137b7565b602082019050919050565b60006130326021836133db565b915061303d826137e0565b604082019050919050565b60006130556006836133db565b91506130608261382f565b602082019050919050565b60006130786000836133d0565b915061308382613858565b600082019050919050565b600061309b600b836133db565b91506130a68261385b565b602082019050919050565b6130ba81613551565b82525050565b6130c98161355b565b82525050565b60006130da8261306b565b9150819050919050565b60006020820190506130f96000830184612ea3565b92915050565b60006020820190506131146000830184612e85565b92915050565b600060c08201905061312f6000830189612ea3565b61313c60208301886130b1565b6131496040830187612f2e565b6131566060830186612f2e565b6131636080830185612ea3565b61317060a08301846130b1565b979650505050505050565b60006020820190506131906000830184612f10565b92915050565b60006020820190506131ab6000830184612f1f565b92915050565b600060208201905081810360008301526131cb8184612f3d565b905092915050565b600060208201905081810360008301526131ec81612f76565b9050919050565b6000602082019050818103600083015261320c81612f99565b9050919050565b6000602082019050818103600083015261322c81612fbc565b9050919050565b6000602082019050818103600083015261324c81612fdf565b9050919050565b6000602082019050818103600083015261326c81613002565b9050919050565b6000602082019050818103600083015261328c81613025565b9050919050565b600060208201905081810360008301526132ac81613048565b9050919050565b600060208201905081810360008301526132cc8161308e565b9050919050565b60006020820190506132e860008301846130b1565b92915050565b600060a08201905061330360008301886130b1565b6133106020830187612f2e565b81810360408301526133228186612eb2565b90506133316060830185612ea3565b61333e60808301846130b1565b9695505050505050565b600060408201905061335d60008301856130b1565b61336a60208301846130b1565b9392505050565b600060208201905061338660008301846130c0565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b60006133f782613551565b915061340283613551565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613437576134366135f5565b5b828201905092915050565b600061344d82613551565b915061345883613551565b92508261346857613467613624565b5b828204905092915050565b600061347e82613551565b915061348983613551565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156134c2576134c16135f5565b5b828202905092915050565b60006134d882613551565b91506134e383613551565b9250828210156134f6576134f56135f5565b5b828203905092915050565b600061350c82613531565b9050919050565b600061351e82613531565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006135738261359e565b9050919050565b60006135858261359e565b9050919050565b600061359782613551565b9050919050565b60006135a9826135b0565b9050919050565b60006135bb82613531565b9050919050565b60005b838110156135e05780820151818401526020810190506135c5565b838111156135ef576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f5472616e7366657220616d6f756e74206578636565647320746865206261672060008201527f73697a652e000000000000000000000000000000000000000000000000000000602082015250565b7f5458204c696d6974204578636565646564000000000000000000000000000000600082015250565b7f43616e2774206c657420796f752074616b6520616c6c206e617469766520746f60008201527f6b656e0000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f72656365697665722072656a656374656420455448207472616e736665720000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b50565b7f21415554484f52495a4544000000000000000000000000000000000000000000600082015250565b61388d81613501565b811461389857600080fd5b50565b6138a481613513565b81146138af57600080fd5b50565b6138bb81613525565b81146138c657600080fd5b50565b6138d281613551565b81146138dd57600080fd5b5056fea264697066735822122084b773b608c1776815df7cf2679b2c443da68a7b1221ee6b3d3202d461816d1e64736f6c63430008070033

Deployed ByteCode Sourcemap

5460:10718:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6734:54;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7685:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8107:216;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15957:150;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7415:88;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8625:370;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15632:142;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3355:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7509:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8331:122;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13810:145;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13962:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14125:120;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6697:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14389:352;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7855:105;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5910:54;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7771:78;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5984:56;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7595:84;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6635:19;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8461:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3028:94;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6663:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15782:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15318:298;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7966:133;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14966:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14749:209;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3198:97;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10595:225;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3755:173;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15130:180;;;;;;;;;;;;;:::i;:::-;;14253:128;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6604:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3529:107;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6734:54;;;;:::o;7685:80::-;7733:13;7757:5;;;;;;;;;;;;;;;;;7750:12;;7685:80;:::o;8107:216::-;8182:4;8234:6;8199:11;:23;8211:10;8199:23;;;;;;;;;;;;;;;:32;8223:7;8199:32;;;;;;;;;;;;;;;:41;;;;8277:7;8256:37;;8265:10;8256:37;;;8286:6;8256:37;;;;;;:::i;:::-;;;;;;;;8311:4;8304:11;;8107:216;;;;:::o;15957:150::-;16037:4;16093:6;16061:29;16081:8;16061:19;:29::i;:::-;:38;16054:45;;15957:150;;;;:::o;7415:88::-;7470:7;7488:12;;7481:19;;7415:88;:::o;8625:370::-;8725:4;8780:17;8745:11;:19;8757:6;8745:19;;;;;;;;;;;;;;;:31;8765:10;8745:31;;;;;;;;;;;;;;;;:52;8742:186;;8847:69;8883:6;8847:69;;;;;;;;;;;;;;;;;:11;:19;8859:6;8847:19;;;;;;;;;;;;;;;:31;8867:10;8847:31;;;;;;;;;;;;;;;;:35;;:69;;;;;:::i;:::-;8813:11;:19;8825:6;8813:19;;;;;;;;;;;;;;;:31;8833:10;8813:31;;;;;;;;;;;;;;;:103;;;;8742:186;8947:40;8961:6;8969:9;8980:6;8947:13;:40::i;:::-;8940:47;;8625:370;;;;;:::o;15632:142::-;15685:7;15712:54;15750:15;15760:4;;;;;;;;;;;15750:9;:15::i;:::-;15712:33;15729:15;15739:4;;;;;;;;;;;15729:9;:15::i;:::-;15712:12;;:16;;:33;;;;:::i;:::-;:37;;:54;;;;:::i;:::-;15705:61;;15632:142;:::o;3355:103::-;3410:4;3445:5;;;;;;;;;;;3434:16;;:7;:16;;;3427:23;;3355:103;;;:::o;7509:80::-;7561:5;5837:1;7570:16;;7509:80;:::o;8331:122::-;8386:4;8410:35;8418:7;8427:17;8410:7;:35::i;:::-;8403:42;;8331:122;;;:::o;13810:145::-;2913:24;2926:10;2913:12;:24::i;:::-;2905:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;13910:4:::1;13895:12;;:19;;;;:::i;:::-;13885:6;:29;;13877:38;;;::::0;::::1;;13941:6;13926:12;:21;;;;13810:145:::0;:::o;13962:151::-;2744:19;2752:10;2744:7;:19::i;:::-;2736:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;14065:4:::1;14050:12;;:19;;;;:::i;:::-;14040:6;:29;;14032:39;;;::::0;::::1;;14099:6;14082:14;:23;;;;13962:151:::0;:::o;14125:120::-;2913:24;2926:10;2913:12;:24::i;:::-;2905:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;14231:6:::1;14209:11;:19;14221:6;14209:19;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;;;;;;;14125:120:::0;;:::o;6697:30::-;;;;;;;;;;;;;:::o;14389:352::-;2913:24;2926:10;2913:12;:24::i;:::-;2905:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;14541:13:::1;14526:12;:28;;;;14575:8;14565:7;:18;;;;14609:13;14594:12;:28;;;;14644:46;14676:13;14644:27;14662:8;14644:13;:17;;:27;;;;:::i;:::-;:31;;:46;;;;:::i;:::-;14633:8;:57;;;;14718:15;14701:14;:32;;;;14389:352:::0;;;;:::o;7855:105::-;7921:7;7939:9;:18;7949:7;7939:18;;;;;;;;;;;;;;;;7932:25;;7855:105;;;:::o;5910:54::-;;;;:::o;7771:78::-;7823:7;7841:5;;;;;;;;;;;7834:12;;7771:78;:::o;5984:56::-;;;;:::o;7595:84::-;7645:13;7669:7;;;;;;;;;;;;;;;;;7662:14;;7595:84;:::o;6635:19::-;;;;;;;;;;;;;:::o;8461:156::-;8541:4;8565:44;8579:10;8591:9;8602:6;8565:13;:44::i;:::-;8558:51;;8461:156;;;;:::o;3028:94::-;2744:19;2752:10;2744:7;:19::i;:::-;2736:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;3110:4:::1;3088:14:::0;:19:::1;3103:3;3088:19;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;3028:94:::0;:::o;6663:25::-;;;;:::o;15782:167::-;15850:7;15877:64;15918:22;:20;:22::i;:::-;15877:36;15890:22;15910:1;15890:15;15900:4;;;;;;;;;;;15890:9;:15::i;:::-;:19;;:22;;;;:::i;:::-;15877:8;:12;;:36;;;;:::i;:::-;:40;;:64;;;;:::i;:::-;15870:71;;15782:167;;;:::o;15318:298::-;2913:24;2926:10;2913:12;:24::i;:::-;2905:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;15419:4:::1;15401:23;;:6;:23;;;;15393:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;15475:24;15509:6;15502:24;;;15535:4;15502:39;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15475:66;;15560:20;;;;;;;;;;;15552:38;;:56;15591:16;15552:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;15382:234;15318:298:::0;:::o;7966:133::-;8050:7;8068:11;:19;8080:6;8068:19;;;;;;;;;;;;;;;:28;8088:7;8068:28;;;;;;;;;;;;;;;;8061:35;;7966:133;;;;:::o;14966:156::-;2913:24;2926:10;2913:12;:24::i;:::-;2905:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;15072:8:::1;15058:11;;:22;;;;;;;;;;;;;;;;;;15107:7;15091:13;:23;;;;14966:156:::0;;:::o;14749:209::-;2913:24;2926:10;2913:12;:24::i;:::-;2905:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;14884:21:::1;14861:20;;:44;;;;;;;;;;;;;;;;;;14934:16;14916:15;;:34;;;;;;;;;;;;;;;;;;14749:209:::0;;:::o;3198:97::-;2744:19;2752:10;2744:7;:19::i;:::-;2736:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;3282:5:::1;3260:14;:19;3275:3;3260:19;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;3198:97:::0;:::o;10595:225::-;10651:7;10692:12;10687:1;10674:10;;:14;;;;:::i;:::-;:30;10671:67;;10714:21;10733:1;10714:14;;:18;;:21;;;;:::i;:::-;10707:28;;;;10671:67;10751:7;10748:39;;;10769:15;10782:1;10769:8;;:12;;:15;;;;:::i;:::-;10762:22;;;;10748:39;10804:8;;10797:15;;10595:225;;;;:::o;3755:173::-;2744:19;2752:10;2744:7;:19::i;:::-;2736:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;3839:3:::1;3831:5;::::0;:11:::1;;;;;;;;;;;;;;;;;;3875:4;3853:14:::0;:19:::1;3868:3;3853:19;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;3895:25;3916:3;3895:25;;;;;;:::i;:::-;;;;;;;;3755:173:::0;:::o;15130:180::-;2913:24;2926:10;2913:12;:24::i;:::-;2905:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;15183:26:::1;15212:21;15183:50;;15252:20;;;;;;;;;;;15244:38;;:58;15283:18;15244:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;15172:138;15130:180::o:0;14253:128::-;2913:24;2926:10;2913:12;:24::i;:::-;2905:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;14367:6:::1;14341:15;:23;14357:6;14341:23;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;;;;;;;14253:128:::0;;:::o;6604:24::-;;;;;;;;;;;;;:::o;3529:107::-;3585:4;3609:14;:19;3624:3;3609:19;;;;;;;;;;;;;;;;;;;;;;;;;3602:26;;3529:107;;;:::o;412:192::-;498:7;531:1;526;:6;;534:12;518:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;558:9;574:1;570;:5;;;;:::i;:::-;558:17;;595:1;588:8;;;412:192;;;;;:::o;9003:942::-;9095:4;9115:6;;;;;;;;;;;9112:63;;;9131:41;9146:6;9154:9;9165:6;9131:14;:41::i;:::-;9124:48;;;;9112:63;9195:28;9208:6;9216;9195:12;:28::i;:::-;9261:4;;;;;;;;;;;9248:17;;:9;:17;;;;:38;;;;;9282:4;;;;;;;;;;;9269:17;;:9;:17;;;;9248:38;9244:198;;;9311:15;:26;9327:9;9311:26;;;;;;;;;;;;;;;;;;;;;;;;;:77;;;;9374:14;;9364:6;9341:9;:20;9351:9;9341:20;;;;;;;;;;;;;;;;:29;;;;:::i;:::-;:47;;9311:77;9303:127;;;;;;;;;;;;:::i;:::-;;;;;;;;;9244:198;9465:16;:14;:16::i;:::-;9462:35;;;9484:10;:8;:10::i;:::-;9462:35;9513:10;:8;:10::i;:::-;9512:11;:32;;;;;9540:4;;;;;;;;;;;9527:17;;:9;:17;;;9512:32;9509:81;;;9575:1;9555:9;:17;9565:6;9555:17;;;;;;;;;;;;;;;;:21;9547:30;;;;;;9579:8;:6;:8::i;:::-;9509:81;9622:53;9644:6;9622:53;;;;;;;;;;;;;;;;;:9;:17;9632:6;9622:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;9602:9;:17;9612:6;9602:17;;;;;;;;;;;;;;;:73;;;;9688:22;9713:21;9727:6;9713:13;:21::i;:::-;:67;;9774:6;9713:67;;;9737:34;9745:6;9753:9;9764:6;9737:7;:34::i;:::-;9713:67;9688:92;;9814:40;9839:14;9814:9;:20;9824:9;9814:20;;;;;;;;;;;;;;;;:24;;:40;;;;:::i;:::-;9791:9;:20;9801:9;9791:20;;;;;;;;;;;;;;;:63;;;;9889:9;9872:43;;9881:6;9872:43;;;9900:14;9872:43;;;;;;:::i;:::-;;;;;;;;9933:4;9926:11;;;9003:942;;;;;;:::o;270:136::-;328:7;355:43;359:1;362;355:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;348:50;;270:136;;;;:::o;83:181::-;141:7;161:9;177:1;173;:5;;;;:::i;:::-;161:17;;202:1;197;:6;;189:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;255:1;248:8;;;83:181;;;;:::o;610:250::-;668:7;697:1;692;:6;688:47;;;722:1;715:8;;;;688:47;747:9;763:1;759;:5;;;;:::i;:::-;747:17;;792:1;787;783;:5;;;;:::i;:::-;:10;775:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;851:1;844:8;;;610:250;;;;;:::o;866:132::-;924:7;951:39;955:1;958;951:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;944:46;;866:132;;;;:::o;9957:330::-;10050:4;10087:53;10109:6;10087:53;;;;;;;;;;;;;;;;;:9;:17;10097:6;10087:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;10067:9;:17;10077:6;10067:17;;;;;;;;;;;;;;;:73;;;;10174:32;10199:6;10174:9;:20;10184:9;10174:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;10151:9;:20;10161:9;10151:20;;;;;;;;;;;;;;;:55;;;;10239:9;10222:35;;10231:6;10222:35;;;10250:6;10222:35;;;;;;:::i;:::-;;;;;;;;10275:4;10268:11;;9957:330;;;;;:::o;10295:166::-;10392:12;;10382:6;:22;;:49;;;;10408:15;:23;10424:6;10408:23;;;;;;;;;;;;;;;;;;;;;;;;;10382:49;10374:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;10295:166;;:::o;11208:197::-;11257:4;11295;;;;;;;;;;;11281:18;;:10;:18;;;;:38;;;;;11313:6;;;;;;;;;;;11312:7;11281:38;:62;;;;;11332:11;;;;;;;;;;;11281:62;:116;;;;;11384:13;;11356:9;:24;11374:4;11356:24;;;;;;;;;;;;;;;;:41;;11281:116;11274:123;;11208:197;:::o;11413:1843::-;6852:4;6843:6;;:13;;;;;;;;;;;;;;;;;;11462:28:::1;11493:24;11511:4;11493:9;:24::i;:::-;11462:55;;11528:23;11554:59;11611:1;11554:52;11597:8;;11554:38;11579:12;;11554:20;:24;;:38;;;;:::i;:::-;:42;;:52;;;;:::i;:::-;:56;;:59;;;;:::i;:::-;11528:85;;11624:20;11647:41;11672:15;11647:20;:24;;:41;;;;:::i;:::-;11624:64;;11701:21;11739:1;11725:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11701:40;;11770:4;11752;11757:1;11752:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;11796:4;;;;;;;;;;;11786;11791:1;11786:7;;;;;;;;:::i;:::-;;;;;;;:14;;;;;;;;;::::0;::::1;11813:21;11837;11813:45;;11871:6;;;;;;;;;;;:57;;;11943:12;11970:1;11986:4;12013;12033:15;11871:188;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;12070:17;12090:40;12116:13;12090:21;:25;;:40;;;;:::i;:::-;12070:60;;12141:19;12163:33;12176:19;12193:1;12176:12;;:16;;:19;;;;:::i;:::-;12163:8;;:12;;:33;;;;:::i;:::-;12141:55;;12207:26;12236:51;12285:1;12236:44;12268:11;12236:27;12250:12;;12236:9;:13;;:27;;;;:::i;:::-;:31;;:44;;;;:::i;:::-;:48;;:51;;;;:::i;:::-;12207:80;;12298:28;12329:39;12356:11;12329:22;12343:7;;12329:9;:13;;:22;;;;:::i;:::-;:26;;:39;;;;:::i;:::-;12298:70;;12379:26;12408:44;12440:11;12408:27;12422:12;;12408:9;:13;;:27;;;;:::i;:::-;:31;;:44;;;;:::i;:::-;12379:73;;12468:21;12526:20;;;;;;;;;;;12518:34;;12560:18;12585:5;12518:77;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12467:128;;;12614:16;12606:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;12677:23;12737:15;;;;;;;;;;;12729:29;;12766:20;12793:5;12729:74;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12676:127;;;12822:18;12814:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;12909:1;12891:15;:19;12888:361;;;12926:6;;;;;;;;;;;:22;;;12956:18;13002:4;13026:15;13060:1;13080::::0;13100:20:::1;;;;;;;;;;;13139:15;12926:243;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;13189:48;13201:18;13221:15;13189:48;;;;;;;:::i;:::-;;;;;;;;12888:361;11451:1805;;;;;;;;;;;;6870:5:::0;6861:6;;:14;;;;;;;;;;;;;;;;;;11413:1843::o;13633:90::-;13676:4;13714:1;13700:10;;:15;;13693:22;;13633:90;:::o;13731:71::-;13782:12;13769:10;:25;;;;13731:71::o;10473:114::-;10535:4;10560:11;:19;10572:6;10560:19;;;;;;;;;;;;;;;;;;;;;;;;;10559:20;10552:27;;10473:114;;;:::o;10828:372::-;10913:7;10933:17;10953:61;10999:14;;10953:41;10964:29;10988:4;;;;;;;;;;;10976:16;;:8;:16;;;10964:11;:29::i;:::-;10953:6;:10;;:41;;;;:::i;:::-;:45;;:61;;;;:::i;:::-;10933:81;;11054:39;11083:9;11054;:24;11072:4;11054:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;11027:9;:24;11045:4;11027:24;;;;;;;;;;;;;;;:66;;;;11134:4;11109:42;;11118:6;11109:42;;;11141:9;11109:42;;;;;;:::i;:::-;;;;;;;;11171:21;11182:9;11171:6;:10;;:21;;;;:::i;:::-;11164:28;;;10828:372;;;;;:::o;1004:345::-;1090:7;1189:1;1185;:5;1192:12;1177:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1216:9;1232:1;1228;:5;;;;:::i;:::-;1216:17;;1340:1;1333:8;;;1004:345;;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:155::-;206:5;244:6;231:20;222:29;;260:41;295:5;260:41;:::i;:::-;152:155;;;;:::o;313:133::-;356:5;394:6;381:20;372:29;;410:30;434:5;410:30;:::i;:::-;313:133;;;;:::o;452:139::-;498:5;536:6;523:20;514:29;;552:33;579:5;552:33;:::i;:::-;452:139;;;;:::o;597:143::-;654:5;685:6;679:13;670:22;;701:33;728:5;701:33;:::i;:::-;597:143;;;;:::o;746:329::-;805:6;854:2;842:9;833:7;829:23;825:32;822:119;;;860:79;;:::i;:::-;822:119;980:1;1005:53;1050:7;1041:6;1030:9;1026:22;1005:53;:::i;:::-;995:63;;951:117;746:329;;;;:::o;1081:345::-;1148:6;1197:2;1185:9;1176:7;1172:23;1168:32;1165:119;;;1203:79;;:::i;:::-;1165:119;1323:1;1348:61;1401:7;1392:6;1381:9;1377:22;1348:61;:::i;:::-;1338:71;;1294:125;1081:345;;;;:::o;1432:474::-;1500:6;1508;1557:2;1545:9;1536:7;1532:23;1528:32;1525:119;;;1563:79;;:::i;:::-;1525:119;1683:1;1708:53;1753:7;1744:6;1733:9;1729:22;1708:53;:::i;:::-;1698:63;;1654:117;1810:2;1836:53;1881:7;1872:6;1861:9;1857:22;1836:53;:::i;:::-;1826:63;;1781:118;1432:474;;;;;:::o;1912:619::-;1989:6;1997;2005;2054:2;2042:9;2033:7;2029:23;2025:32;2022:119;;;2060:79;;:::i;:::-;2022:119;2180:1;2205:53;2250:7;2241:6;2230:9;2226:22;2205:53;:::i;:::-;2195:63;;2151:117;2307:2;2333:53;2378:7;2369:6;2358:9;2354:22;2333:53;:::i;:::-;2323:63;;2278:118;2435:2;2461:53;2506:7;2497:6;2486:9;2482:22;2461:53;:::i;:::-;2451:63;;2406:118;1912:619;;;;;:::o;2537:468::-;2602:6;2610;2659:2;2647:9;2638:7;2634:23;2630:32;2627:119;;;2665:79;;:::i;:::-;2627:119;2785:1;2810:53;2855:7;2846:6;2835:9;2831:22;2810:53;:::i;:::-;2800:63;;2756:117;2912:2;2938:50;2980:7;2971:6;2960:9;2956:22;2938:50;:::i;:::-;2928:60;;2883:115;2537:468;;;;;:::o;3011:474::-;3079:6;3087;3136:2;3124:9;3115:7;3111:23;3107:32;3104:119;;;3142:79;;:::i;:::-;3104:119;3262:1;3287:53;3332:7;3323:6;3312:9;3308:22;3287:53;:::i;:::-;3277:63;;3233:117;3389:2;3415:53;3460:7;3451:6;3440:9;3436:22;3415:53;:::i;:::-;3405:63;;3360:118;3011:474;;;;;:::o;3491:323::-;3547:6;3596:2;3584:9;3575:7;3571:23;3567:32;3564:119;;;3602:79;;:::i;:::-;3564:119;3722:1;3747:50;3789:7;3780:6;3769:9;3765:22;3747:50;:::i;:::-;3737:60;;3693:114;3491:323;;;;:::o;3820:468::-;3885:6;3893;3942:2;3930:9;3921:7;3917:23;3913:32;3910:119;;;3948:79;;:::i;:::-;3910:119;4068:1;4093:50;4135:7;4126:6;4115:9;4111:22;4093:50;:::i;:::-;4083:60;;4039:114;4192:2;4218:53;4263:7;4254:6;4243:9;4239:22;4218:53;:::i;:::-;4208:63;;4163:118;3820:468;;;;;:::o;4294:329::-;4353:6;4402:2;4390:9;4381:7;4377:23;4373:32;4370:119;;;4408:79;;:::i;:::-;4370:119;4528:1;4553:53;4598:7;4589:6;4578:9;4574:22;4553:53;:::i;:::-;4543:63;;4499:117;4294:329;;;;:::o;4629:351::-;4699:6;4748:2;4736:9;4727:7;4723:23;4719:32;4716:119;;;4754:79;;:::i;:::-;4716:119;4874:1;4899:64;4955:7;4946:6;4935:9;4931:22;4899:64;:::i;:::-;4889:74;;4845:128;4629:351;;;;:::o;4986:474::-;5054:6;5062;5111:2;5099:9;5090:7;5086:23;5082:32;5079:119;;;5117:79;;:::i;:::-;5079:119;5237:1;5262:53;5307:7;5298:6;5287:9;5283:22;5262:53;:::i;:::-;5252:63;;5208:117;5364:2;5390:53;5435:7;5426:6;5415:9;5411:22;5390:53;:::i;:::-;5380:63;;5335:118;4986:474;;;;;:::o;5466:663::-;5554:6;5562;5570;5619:2;5607:9;5598:7;5594:23;5590:32;5587:119;;;5625:79;;:::i;:::-;5587:119;5745:1;5770:64;5826:7;5817:6;5806:9;5802:22;5770:64;:::i;:::-;5760:74;;5716:128;5883:2;5909:64;5965:7;5956:6;5945:9;5941:22;5909:64;:::i;:::-;5899:74;;5854:129;6022:2;6048:64;6104:7;6095:6;6084:9;6080:22;6048:64;:::i;:::-;6038:74;;5993:129;5466:663;;;;;:::o;6135:765::-;6221:6;6229;6237;6245;6294:3;6282:9;6273:7;6269:23;6265:33;6262:120;;;6301:79;;:::i;:::-;6262:120;6421:1;6446:53;6491:7;6482:6;6471:9;6467:22;6446:53;:::i;:::-;6436:63;;6392:117;6548:2;6574:53;6619:7;6610:6;6599:9;6595:22;6574:53;:::i;:::-;6564:63;;6519:118;6676:2;6702:53;6747:7;6738:6;6727:9;6723:22;6702:53;:::i;:::-;6692:63;;6647:118;6804:2;6830:53;6875:7;6866:6;6855:9;6851:22;6830:53;:::i;:::-;6820:63;;6775:118;6135:765;;;;;;;:::o;6906:179::-;6975:10;6996:46;7038:3;7030:6;6996:46;:::i;:::-;7074:4;7069:3;7065:14;7051:28;;6906:179;;;;:::o;7091:147::-;7186:45;7225:5;7186:45;:::i;:::-;7181:3;7174:58;7091:147;;:::o;7244:108::-;7321:24;7339:5;7321:24;:::i;:::-;7316:3;7309:37;7244:108;;:::o;7358:118::-;7445:24;7463:5;7445:24;:::i;:::-;7440:3;7433:37;7358:118;;:::o;7512:732::-;7631:3;7660:54;7708:5;7660:54;:::i;:::-;7730:86;7809:6;7804:3;7730:86;:::i;:::-;7723:93;;7840:56;7890:5;7840:56;:::i;:::-;7919:7;7950:1;7935:284;7960:6;7957:1;7954:13;7935:284;;;8036:6;8030:13;8063:63;8122:3;8107:13;8063:63;:::i;:::-;8056:70;;8149:60;8202:6;8149:60;:::i;:::-;8139:70;;7995:224;7982:1;7979;7975:9;7970:14;;7935:284;;;7939:14;8235:3;8228:10;;7636:608;;;7512:732;;;;:::o;8250:109::-;8331:21;8346:5;8331:21;:::i;:::-;8326:3;8319:34;8250:109;;:::o;8365:167::-;8470:55;8519:5;8470:55;:::i;:::-;8465:3;8458:68;8365:167;;:::o;8538:147::-;8633:45;8672:5;8633:45;:::i;:::-;8628:3;8621:58;8538:147;;:::o;8691:364::-;8779:3;8807:39;8840:5;8807:39;:::i;:::-;8862:71;8926:6;8921:3;8862:71;:::i;:::-;8855:78;;8942:52;8987:6;8982:3;8975:4;8968:5;8964:16;8942:52;:::i;:::-;9019:29;9041:6;9019:29;:::i;:::-;9014:3;9010:39;9003:46;;8783:272;8691:364;;;;:::o;9061:366::-;9203:3;9224:67;9288:2;9283:3;9224:67;:::i;:::-;9217:74;;9300:93;9389:3;9300:93;:::i;:::-;9418:2;9413:3;9409:12;9402:19;;9061:366;;;:::o;9433:::-;9575:3;9596:67;9660:2;9655:3;9596:67;:::i;:::-;9589:74;;9672:93;9761:3;9672:93;:::i;:::-;9790:2;9785:3;9781:12;9774:19;;9433:366;;;:::o;9805:::-;9947:3;9968:67;10032:2;10027:3;9968:67;:::i;:::-;9961:74;;10044:93;10133:3;10044:93;:::i;:::-;10162:2;10157:3;10153:12;10146:19;;9805:366;;;:::o;10177:::-;10319:3;10340:67;10404:2;10399:3;10340:67;:::i;:::-;10333:74;;10416:93;10505:3;10416:93;:::i;:::-;10534:2;10529:3;10525:12;10518:19;;10177:366;;;:::o;10549:::-;10691:3;10712:67;10776:2;10771:3;10712:67;:::i;:::-;10705:74;;10788:93;10877:3;10788:93;:::i;:::-;10906:2;10901:3;10897:12;10890:19;;10549:366;;;:::o;10921:::-;11063:3;11084:67;11148:2;11143:3;11084:67;:::i;:::-;11077:74;;11160:93;11249:3;11160:93;:::i;:::-;11278:2;11273:3;11269:12;11262:19;;10921:366;;;:::o;11293:365::-;11435:3;11456:66;11520:1;11515:3;11456:66;:::i;:::-;11449:73;;11531:93;11620:3;11531:93;:::i;:::-;11649:2;11644:3;11640:12;11633:19;;11293:365;;;:::o;11664:398::-;11823:3;11844:83;11925:1;11920:3;11844:83;:::i;:::-;11837:90;;11936:93;12025:3;11936:93;:::i;:::-;12054:1;12049:3;12045:11;12038:18;;11664:398;;;:::o;12068:366::-;12210:3;12231:67;12295:2;12290:3;12231:67;:::i;:::-;12224:74;;12307:93;12396:3;12307:93;:::i;:::-;12425:2;12420:3;12416:12;12409:19;;12068:366;;;:::o;12440:118::-;12527:24;12545:5;12527:24;:::i;:::-;12522:3;12515:37;12440:118;;:::o;12564:112::-;12647:22;12663:5;12647:22;:::i;:::-;12642:3;12635:35;12564:112;;:::o;12682:379::-;12866:3;12888:147;13031:3;12888:147;:::i;:::-;12881:154;;13052:3;13045:10;;12682:379;;;:::o;13067:222::-;13160:4;13198:2;13187:9;13183:18;13175:26;;13211:71;13279:1;13268:9;13264:17;13255:6;13211:71;:::i;:::-;13067:222;;;;:::o;13295:238::-;13396:4;13434:2;13423:9;13419:18;13411:26;;13447:79;13523:1;13512:9;13508:17;13499:6;13447:79;:::i;:::-;13295:238;;;;:::o;13539:807::-;13788:4;13826:3;13815:9;13811:19;13803:27;;13840:71;13908:1;13897:9;13893:17;13884:6;13840:71;:::i;:::-;13921:72;13989:2;13978:9;13974:18;13965:6;13921:72;:::i;:::-;14003:80;14079:2;14068:9;14064:18;14055:6;14003:80;:::i;:::-;14093;14169:2;14158:9;14154:18;14145:6;14093:80;:::i;:::-;14183:73;14251:3;14240:9;14236:19;14227:6;14183:73;:::i;:::-;14266;14334:3;14323:9;14319:19;14310:6;14266:73;:::i;:::-;13539:807;;;;;;;;;:::o;14352:210::-;14439:4;14477:2;14466:9;14462:18;14454:26;;14490:65;14552:1;14541:9;14537:17;14528:6;14490:65;:::i;:::-;14352:210;;;;:::o;14568:258::-;14679:4;14717:2;14706:9;14702:18;14694:26;;14730:89;14816:1;14805:9;14801:17;14792:6;14730:89;:::i;:::-;14568:258;;;;:::o;14832:313::-;14945:4;14983:2;14972:9;14968:18;14960:26;;15032:9;15026:4;15022:20;15018:1;15007:9;15003:17;14996:47;15060:78;15133:4;15124:6;15060:78;:::i;:::-;15052:86;;14832:313;;;;:::o;15151:419::-;15317:4;15355:2;15344:9;15340:18;15332:26;;15404:9;15398:4;15394:20;15390:1;15379:9;15375:17;15368:47;15432:131;15558:4;15432:131;:::i;:::-;15424:139;;15151:419;;;:::o;15576:::-;15742:4;15780:2;15769:9;15765:18;15757:26;;15829:9;15823:4;15819:20;15815:1;15804:9;15800:17;15793:47;15857:131;15983:4;15857:131;:::i;:::-;15849:139;;15576:419;;;:::o;16001:::-;16167:4;16205:2;16194:9;16190:18;16182:26;;16254:9;16248:4;16244:20;16240:1;16229:9;16225:17;16218:47;16282:131;16408:4;16282:131;:::i;:::-;16274:139;;16001:419;;;:::o;16426:::-;16592:4;16630:2;16619:9;16615:18;16607:26;;16679:9;16673:4;16669:20;16665:1;16654:9;16650:17;16643:47;16707:131;16833:4;16707:131;:::i;:::-;16699:139;;16426:419;;;:::o;16851:::-;17017:4;17055:2;17044:9;17040:18;17032:26;;17104:9;17098:4;17094:20;17090:1;17079:9;17075:17;17068:47;17132:131;17258:4;17132:131;:::i;:::-;17124:139;;16851:419;;;:::o;17276:::-;17442:4;17480:2;17469:9;17465:18;17457:26;;17529:9;17523:4;17519:20;17515:1;17504:9;17500:17;17493:47;17557:131;17683:4;17557:131;:::i;:::-;17549:139;;17276:419;;;:::o;17701:::-;17867:4;17905:2;17894:9;17890:18;17882:26;;17954:9;17948:4;17944:20;17940:1;17929:9;17925:17;17918:47;17982:131;18108:4;17982:131;:::i;:::-;17974:139;;17701:419;;;:::o;18126:::-;18292:4;18330:2;18319:9;18315:18;18307:26;;18379:9;18373:4;18369:20;18365:1;18354:9;18350:17;18343:47;18407:131;18533:4;18407:131;:::i;:::-;18399:139;;18126:419;;;:::o;18551:222::-;18644:4;18682:2;18671:9;18667:18;18659:26;;18695:71;18763:1;18752:9;18748:17;18739:6;18695:71;:::i;:::-;18551:222;;;;:::o;18779:831::-;19042:4;19080:3;19069:9;19065:19;19057:27;;19094:71;19162:1;19151:9;19147:17;19138:6;19094:71;:::i;:::-;19175:80;19251:2;19240:9;19236:18;19227:6;19175:80;:::i;:::-;19302:9;19296:4;19292:20;19287:2;19276:9;19272:18;19265:48;19330:108;19433:4;19424:6;19330:108;:::i;:::-;19322:116;;19448:72;19516:2;19505:9;19501:18;19492:6;19448:72;:::i;:::-;19530:73;19598:3;19587:9;19583:19;19574:6;19530:73;:::i;:::-;18779:831;;;;;;;;:::o;19616:332::-;19737:4;19775:2;19764:9;19760:18;19752:26;;19788:71;19856:1;19845:9;19841:17;19832:6;19788:71;:::i;:::-;19869:72;19937:2;19926:9;19922:18;19913:6;19869:72;:::i;:::-;19616:332;;;;;:::o;19954:214::-;20043:4;20081:2;20070:9;20066:18;20058:26;;20094:67;20158:1;20147:9;20143:17;20134:6;20094:67;:::i;:::-;19954:214;;;;:::o;20255:132::-;20322:4;20345:3;20337:11;;20375:4;20370:3;20366:14;20358:22;;20255:132;;;:::o;20393:114::-;20460:6;20494:5;20488:12;20478:22;;20393:114;;;:::o;20513:99::-;20565:6;20599:5;20593:12;20583:22;;20513:99;;;:::o;20618:113::-;20688:4;20720;20715:3;20711:14;20703:22;;20618:113;;;:::o;20737:184::-;20836:11;20870:6;20865:3;20858:19;20910:4;20905:3;20901:14;20886:29;;20737:184;;;;:::o;20927:147::-;21028:11;21065:3;21050:18;;20927:147;;;;:::o;21080:169::-;21164:11;21198:6;21193:3;21186:19;21238:4;21233:3;21229:14;21214:29;;21080:169;;;;:::o;21255:305::-;21295:3;21314:20;21332:1;21314:20;:::i;:::-;21309:25;;21348:20;21366:1;21348:20;:::i;:::-;21343:25;;21502:1;21434:66;21430:74;21427:1;21424:81;21421:107;;;21508:18;;:::i;:::-;21421:107;21552:1;21549;21545:9;21538:16;;21255:305;;;;:::o;21566:185::-;21606:1;21623:20;21641:1;21623:20;:::i;:::-;21618:25;;21657:20;21675:1;21657:20;:::i;:::-;21652:25;;21696:1;21686:35;;21701:18;;:::i;:::-;21686:35;21743:1;21740;21736:9;21731:14;;21566:185;;;;:::o;21757:348::-;21797:7;21820:20;21838:1;21820:20;:::i;:::-;21815:25;;21854:20;21872:1;21854:20;:::i;:::-;21849:25;;22042:1;21974:66;21970:74;21967:1;21964:81;21959:1;21952:9;21945:17;21941:105;21938:131;;;22049:18;;:::i;:::-;21938:131;22097:1;22094;22090:9;22079:20;;21757:348;;;;:::o;22111:191::-;22151:4;22171:20;22189:1;22171:20;:::i;:::-;22166:25;;22205:20;22223:1;22205:20;:::i;:::-;22200:25;;22244:1;22241;22238:8;22235:34;;;22249:18;;:::i;:::-;22235:34;22294:1;22291;22287:9;22279:17;;22111:191;;;;:::o;22308:96::-;22345:7;22374:24;22392:5;22374:24;:::i;:::-;22363:35;;22308:96;;;:::o;22410:104::-;22455:7;22484:24;22502:5;22484:24;:::i;:::-;22473:35;;22410:104;;;:::o;22520:90::-;22554:7;22597:5;22590:13;22583:21;22572:32;;22520:90;;;:::o;22616:126::-;22653:7;22693:42;22686:5;22682:54;22671:65;;22616:126;;;:::o;22748:77::-;22785:7;22814:5;22803:16;;22748:77;;;:::o;22831:86::-;22866:7;22906:4;22899:5;22895:16;22884:27;;22831:86;;;:::o;22923:134::-;22981:9;23014:37;23045:5;23014:37;:::i;:::-;23001:50;;22923:134;;;:::o;23063:144::-;23131:9;23164:37;23195:5;23164:37;:::i;:::-;23151:50;;23063:144;;;:::o;23213:121::-;23271:9;23304:24;23322:5;23304:24;:::i;:::-;23291:37;;23213:121;;;:::o;23340:126::-;23390:9;23423:37;23454:5;23423:37;:::i;:::-;23410:50;;23340:126;;;:::o;23472:113::-;23522:9;23555:24;23573:5;23555:24;:::i;:::-;23542:37;;23472:113;;;:::o;23591:307::-;23659:1;23669:113;23683:6;23680:1;23677:13;23669:113;;;23768:1;23763:3;23759:11;23753:18;23749:1;23744:3;23740:11;23733:39;23705:2;23702:1;23698:10;23693:15;;23669:113;;;23800:6;23797:1;23794:13;23791:101;;;23880:1;23871:6;23866:3;23862:16;23855:27;23791:101;23640:258;23591:307;;;:::o;23904:180::-;23952:77;23949:1;23942:88;24049:4;24046:1;24039:15;24073:4;24070:1;24063:15;24090:180;24138:77;24135:1;24128:88;24235:4;24232:1;24225:15;24259:4;24256:1;24249:15;24276:180;24324:77;24321:1;24314:88;24421:4;24418:1;24411:15;24445:4;24442:1;24435:15;24462:180;24510:77;24507:1;24500:88;24607:4;24604:1;24597:15;24631:4;24628:1;24621:15;24771:117;24880:1;24877;24870:12;24894:102;24935:6;24986:2;24982:7;24977:2;24970:5;24966:14;24962:28;24952:38;;24894:102;;;:::o;25002:224::-;25142:34;25138:1;25130:6;25126:14;25119:58;25211:7;25206:2;25198:6;25194:15;25187:32;25002:224;:::o;25232:167::-;25372:19;25368:1;25360:6;25356:14;25349:43;25232:167;:::o;25405:222::-;25545:34;25541:1;25533:6;25529:14;25522:58;25614:5;25609:2;25601:6;25597:15;25590:30;25405:222;:::o;25633:177::-;25773:29;25769:1;25761:6;25757:14;25750:53;25633:177;:::o;25816:180::-;25956:32;25952:1;25944:6;25940:14;25933:56;25816:180;:::o;26002:220::-;26142:34;26138:1;26130:6;26126:14;26119:58;26211:3;26206:2;26198:6;26194:15;26187:28;26002:220;:::o;26228:156::-;26368:8;26364:1;26356:6;26352:14;26345:32;26228:156;:::o;26390:114::-;;:::o;26510:161::-;26650:13;26646:1;26638:6;26634:14;26627:37;26510:161;:::o;26677:122::-;26750:24;26768:5;26750:24;:::i;:::-;26743:5;26740:35;26730:63;;26789:1;26786;26779:12;26730:63;26677:122;:::o;26805:138::-;26886:32;26912:5;26886:32;:::i;:::-;26879:5;26876:43;26866:71;;26933:1;26930;26923:12;26866:71;26805:138;:::o;26949:116::-;27019:21;27034:5;27019:21;:::i;:::-;27012:5;27009:32;26999:60;;27055:1;27052;27045:12;26999:60;26949:116;:::o;27071:122::-;27144:24;27162:5;27144:24;:::i;:::-;27137:5;27134:35;27124:63;;27183:1;27180;27173:12;27124:63;27071:122;:::o

Swarm Source

ipfs://84b773b608c1776815df7cf2679b2c443da68a7b1221ee6b3d3202d461816d1e
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.