Contract 0x2d415bd832A37Dd332a9B58c6a7Ab209A2d1286c

 

Contract Overview

Balance:
0.034490197941400898 Ether

EtherValue:
$145.46 (@ $4,217.45/ETH)

Token:
Txn Hash Method
Block
From
To
Value
0x60768108dd45f401820aa4d6393a4be791b351b062e5f5d0401a99224516b1cdApprove134928242021-10-26 11:50:356 hrs 20 mins ago0xa42c72f006127e6a97e7d57c5b060675ff22affc IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.00324431403468.712174568
0x4e109fe89d86c24c890607398c78b608eaf5525c625eefbc04a2b11f96a58e01Approve134764672021-10-23 22:19:522 days 19 hrs ago0x64cb8f4d3e860c8b4328c4415106d6b1022a09f5 IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.00297623642863.034488905
0x9d2df72b887ff56938efca7c93c02df0b29bc85053064525c02574ec49f8e18dApprove134756322021-10-23 19:11:282 days 22 hrs ago0x0a15844f2670d9dfc44b28b4e28284750f321a79 IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.00317476710167.239221908
0x19ea28dccfdad214f12ab97780d1a538158dca788f199b18924ba11e0de5919aApprove134738592021-10-23 12:49:533 days 5 hrs ago0x44f1e5a34ba7a00da94ef9b260740742e6ccb9d3 IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.001610065634.1
0x31158fdb3de60ddc8fbdc6837a93e70494e691f4138a2a688a5784c91f95d5dfTransfer134603572021-10-21 10:09:135 days 8 hrs agoGemini IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0.0344901979414 Ether0.00165569839278.636826995
0xcacd49a524cad33919f7077590c13272a081f90ea65901b35397cc2ba66f29b4Approve134290182021-10-16 12:26:2510 days 5 hrs ago0xdda1d4a51a0f8ffd1040779e688e5f1939f7a612 IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.003088877489 65.420143375
0x7026581844edee31c9442940dc5091eadef918784b2d7603d362450938052119Approve134182022021-10-14 19:36:4511 days 22 hrs ago0xf4c4e8c410a84398ab5e057afb7770e6ff50a5db IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.006964877307 147.510956186
0x33f9556c2ae0a7310c7634aeb9282bce37d9b2908b1a9087895725683210d0b3Approve134066312021-10-12 23:36:4713 days 18 hrs ago0xa3673f6855179363791b427db9b8312896a60f73 IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.00299929361763.522823142
0x1ab48c6fdca05363350761c8d652fd207a6c0f6e90a4fa1c59b179ed527a9e1aTransfer133896512021-10-10 7:43:5716 days 10 hrs ago0xed018fd77aafabe4fa7145ec7d19438b160a95aa IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.01641052371568.307451626
0x1c04ab73f3af92e34752152c0567f16f8062571ad031b88222d6d0f1cadd4b76Approve133574612021-10-05 6:36:0321 days 11 hrs ago0xe97b3791a03706c58f5c6bc3554213c3e6eb8550 IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.003033953129 64.256886011
0x94e400abb50d7c471fa6d33741fc07bd28baa4fd278ccb9a50b8979c91fc9e84Approve133141282021-09-28 12:03:0028 days 6 hrs ago0x5bbe0e3126ff981d80850ff931465e9fdfee5a98 IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.003012380863.8
0xf0701619d03b1c11666db5fd9e74eeb65c05d85fb47cbb70ae47a758942f7c16Approve133096032021-09-27 19:02:1128 days 23 hrs ago0x38d115a476ac9e51a58f70ae320b46483004b2d4 IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.004466633694.6
0x9a48cf220cded36d892674731c11c76a7913a8218b165acda2c1b5c84bc83d49Approve132944242021-09-25 10:26:5531 days 7 hrs ago0x37fd2c394df92591e7f078161c033dc2eb91822c IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.000993349202 36.365104794
0x0a68783f8e81269c72e12cb1ad33e3b710a87a9d730a1b85fa68aa10a2677ba2Approve132944222021-09-25 10:26:4731 days 7 hrs ago0x37fd2c394df92591e7f078161c033dc2eb91822c IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.001707822493 36.170418785
0xadd8565c9b85bb35ce8d8c99ee00eb5e20dfdf7918aa2c99a42392ffdb629997Approve132884552021-09-24 12:18:2132 days 5 hrs ago0x8d261c2472ced299595ec9d0813bb7ba694ae727 IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.00366637661777.651148285
0x1d89974b8fc792d09ce5d96c5f3365f28a38e4c77c5e62ffd9ed691b632e412eApprove132330682021-09-15 22:42:2740 days 19 hrs ago0x6bf958f2623191796ec105de30c16597a52d4980 IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.003855115217 81.648492397
0xabd93f20caa455b2b8f747b65c5463a622fc3658c9b1a9fc4db01c8fca82fb63Approve132243382021-09-14 14:17:3442 days 3 hrs ago0xd37eef0f8776c349fe8ede14d342426dbb788f12 IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.003300871928 69.910028988
0xc377f27d9d0366d4beb2c3b4e7b3d1e876072be0f4a9ed26845e2acc259f9fbfApprove132223502021-09-14 6:59:5242 days 11 hrs ago0xc1216edf40d2da9574f12029dea9055ab178251d IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.001970798986 41.740066637
0x231bdd0514154aed422c395508ff732d178815589670192532cc1b41402c2de9Approve132112752021-09-12 13:38:1344 days 4 hrs ago0xcc4e8da7c0ba70037d60d298570e2eba5564d4ce IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.00244018015351.681213002
0x839f7ae3b4f2a8b7cefc2ff52687739c5d5d489b825aea11d1bff0f07e180ae4Approve132087122021-09-12 4:12:1144 days 13 hrs ago0x3905a9d4132fa2ea978cf748c6c116c32da50a2f IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.002580936007 54.662318027
0xc2392f8f5715d9c0176b6c5e8b05c9441ac422eb99e3bfecefc61962badb788fApprove132082902021-09-12 2:38:5244 days 15 hrs ago0x3905a9d4132fa2ea978cf748c6c116c32da50a2f IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.002111638931 44.722952638
0x4d6bbecd5668ee21af46e8db63b2a98d1f05b4ad2fa9d0de784756e840787bd2Approve132053152021-09-11 15:42:0145 days 2 hrs ago0x3c9f50c9d4be35c734290b95f563d4dd621e240c IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.001523335101 61.099594956
0x17ecefed876b402c0b3d020b93688250fa1b637120f4467efff88500204c757aApprove131971612021-09-10 9:23:5946 days 8 hrs ago0xc1216edf40d2da9574f12029dea9055ab178251d IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.006654896561 140.945792983
0xe17b18fe682e05e4a2174a0f87193463f638af0c27d729255cb2b60445984010Approve131943762021-09-09 22:52:2946 days 19 hrs ago0xb95e39bcfc8791dc41260e0b569eba219c5338a8 IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.00368626409578.072350381
0x26beafd342abfd99fa827fbc92cbecb57760d200f612689525f65aeb457034eeApprove131943512021-09-09 22:47:3246 days 19 hrs ago0xb95e39bcfc8791dc41260e0b569eba219c5338a8 IN  0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0 Ether0.00415500888
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0xd7a22a3a266e0a0cdbf554c6e42c72c608bbf4c713e468798bcd964592cedf55134290572021-10-16 12:35:0110 days 5 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xf68cf520d5c2758b1cd4d635c51842aa0dcfe8ac0.000908214957808543 Ether
0xd7a22a3a266e0a0cdbf554c6e42c72c608bbf4c713e468798bcd964592cedf55134290572021-10-16 12:35:0110 days 5 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xe8a8dc7d043bb0bf53dea967e680f210dd2218ad0.000908214957808543 Ether
0xd7a22a3a266e0a0cdbf554c6e42c72c608bbf4c713e468798bcd964592cedf55134290572021-10-16 12:35:0110 days 5 hrs ago Uniswap V2: Router 2 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0.001816429915617086 Ether
0x1ab48c6fdca05363350761c8d652fd207a6c0f6e90a4fa1c59b179ed527a9e1a133896512021-10-10 7:43:5716 days 10 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xf68cf520d5c2758b1cd4d635c51842aa0dcfe8ac0.004537134340775928 Ether
0x1ab48c6fdca05363350761c8d652fd207a6c0f6e90a4fa1c59b179ed527a9e1a133896512021-10-10 7:43:5716 days 10 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xe8a8dc7d043bb0bf53dea967e680f210dd2218ad0.004537134340775928 Ether
0x1ab48c6fdca05363350761c8d652fd207a6c0f6e90a4fa1c59b179ed527a9e1a133896512021-10-10 7:43:5716 days 10 hrs ago Uniswap V2: Router 2 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0.009074268681551857 Ether
0xd6ff4e30d9643bfae785d07793a849e5bd2eb62003d9d2df25cef30aa4888052133574662021-10-05 6:37:3121 days 11 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xf68cf520d5c2758b1cd4d635c51842aa0dcfe8ac0.008830289915592678 Ether
0xd6ff4e30d9643bfae785d07793a849e5bd2eb62003d9d2df25cef30aa4888052133574662021-10-05 6:37:3121 days 11 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xe8a8dc7d043bb0bf53dea967e680f210dd2218ad0.008830289915592678 Ether
0xd6ff4e30d9643bfae785d07793a849e5bd2eb62003d9d2df25cef30aa4888052133574662021-10-05 6:37:3121 days 11 hrs ago Uniswap V2: Router 2 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0.017660579831185356 Ether
0xf015e1fb338d06901f80cc81a776c9b8a66463f536ce0ae178921b4eb571e7ce133402332021-10-02 13:56:1724 days 4 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xf68cf520d5c2758b1cd4d635c51842aa0dcfe8ac0.010660217984594151 Ether
0xf015e1fb338d06901f80cc81a776c9b8a66463f536ce0ae178921b4eb571e7ce133402332021-10-02 13:56:1724 days 4 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xe8a8dc7d043bb0bf53dea967e680f210dd2218ad0.010660217984594151 Ether
0xf015e1fb338d06901f80cc81a776c9b8a66463f536ce0ae178921b4eb571e7ce133402332021-10-02 13:56:1724 days 4 hrs ago Uniswap V2: Router 2 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0.021320435969188301 Ether
0xf3b51ab653cc0d6e690465031ebb317ba0b8689d6a5389f47f7542f8f7d14f1b133112182021-09-28 0:49:2928 days 17 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xf68cf520d5c2758b1cd4d635c51842aa0dcfe8ac0.000999377748227365 Ether
0xf3b51ab653cc0d6e690465031ebb317ba0b8689d6a5389f47f7542f8f7d14f1b133112182021-09-28 0:49:2928 days 17 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xe8a8dc7d043bb0bf53dea967e680f210dd2218ad0.000999377748227365 Ether
0xf3b51ab653cc0d6e690465031ebb317ba0b8689d6a5389f47f7542f8f7d14f1b133112182021-09-28 0:49:2928 days 17 hrs ago Uniswap V2: Router 2 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0.00199875549645473 Ether
0x00059f12ec4b2a745a1881c82ba5b2066bce9214fb34cf584a61c1da220af403133072372021-09-27 10:24:3829 days 7 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xf68cf520d5c2758b1cd4d635c51842aa0dcfe8ac0.010011594685699833 Ether
0x00059f12ec4b2a745a1881c82ba5b2066bce9214fb34cf584a61c1da220af403133072372021-09-27 10:24:3829 days 7 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xe8a8dc7d043bb0bf53dea967e680f210dd2218ad0.010011594685699833 Ether
0x00059f12ec4b2a745a1881c82ba5b2066bce9214fb34cf584a61c1da220af403133072372021-09-27 10:24:3829 days 7 hrs ago Uniswap V2: Router 2 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0.020023189371399666 Ether
0x6164100db41dbd27884b29657fbefe807b3c5d7bc158bdfe04c6c8a528ef747b132951772021-09-25 13:14:0131 days 4 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xf68cf520d5c2758b1cd4d635c51842aa0dcfe8ac0.008420267812215124 Ether
0x6164100db41dbd27884b29657fbefe807b3c5d7bc158bdfe04c6c8a528ef747b132951772021-09-25 13:14:0131 days 4 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xe8a8dc7d043bb0bf53dea967e680f210dd2218ad0.008420267812215124 Ether
0x6164100db41dbd27884b29657fbefe807b3c5d7bc158bdfe04c6c8a528ef747b132951772021-09-25 13:14:0131 days 4 hrs ago Uniswap V2: Router 2 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0.016840535624430249 Ether
0xfcade74d135640db64eef3fc1f194f40d4cb974d85ada0e0dae77ba5bfabc20f132940502021-09-25 9:03:4831 days 9 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xf68cf520d5c2758b1cd4d635c51842aa0dcfe8ac0.003060369702505174 Ether
0xfcade74d135640db64eef3fc1f194f40d4cb974d85ada0e0dae77ba5bfabc20f132940502021-09-25 9:03:4831 days 9 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xe8a8dc7d043bb0bf53dea967e680f210dd2218ad0.003060369702505174 Ether
0xfcade74d135640db64eef3fc1f194f40d4cb974d85ada0e0dae77ba5bfabc20f132940502021-09-25 9:03:4831 days 9 hrs ago Uniswap V2: Router 2 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0.006120739405010347 Ether
0x8a523584e1c365293118fd53078471d3a8c8e76579c37376bcf9ccf328ed61a1132749212021-09-22 9:59:5234 days 8 hrs ago 0x2d415bd832a37dd332a9b58c6a7ab209a2d1286c0xf68cf520d5c2758b1cd4d635c51842aa0dcfe8ac0.005719987355138886 Ether
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ShibAsia

Compiler Version
v0.8.6+commit.11564f7e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-07-13
*/

/*
 ______________________________________________________________________

  Shiba Asia ($ShibAsia)
  
  (◠﹏◠) 
  
  t.me/ShibAsia
  
  (◠﹏◠)

  
      |>     |>
`-====++=====++===='\
      |'     |'
    |>  |>    |>
`-==++==++====++==='\
    ||  ||    ||
    ||  ||====||
    ||==========='\
  
  // No dev-wallets
  // Locked liquidity
  // Renounced ownership!
  // No tx modifiers
  // Community-Driven
  
  // Famous ambassadors on board
  // Chinese community
  
  // Official developers of shibmerican (https://www.coingecko.com/en/coins/shibmerican)
 ______________________________________________________________________
  
*/



// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.8.4;

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

interface IERC20 {
    function totalSupply() external view returns (uint256);
    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);
}

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) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }

}

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

}  

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract ShibAsia is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    mapping (address => uint) private cooldown;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1000000000000000000 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    
    uint256 private _feeAddr1;
    uint256 private _feeAddr2;
    address payable private _feeAddrWallet1;
    address payable private _feeAddrWallet2;
    
    string private constant _name = "ShibAsia | t.me/ShibAsia";
    string private constant _symbol = "ShibAsia";
    uint8 private constant _decimals = 9;
    
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    bool private cooldownEnabled = false;
    uint256 private _maxTxAmount = _tTotal;
    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    constructor () {
        _feeAddrWallet1 = payable(0xE8A8DC7d043bB0bf53deA967e680f210dd2218Ad);
        _feeAddrWallet2 = payable(0xF68CF520d5C2758B1cD4d635c51842AA0DCFE8ac);
        _rOwned[_msgSender()] = _rTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_feeAddrWallet1] = true;
        _isExcludedFromFee[_feeAddrWallet2] = true;
        emit Transfer(address(0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B), _msgSender(), _tTotal);
    }

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

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

    function decimals() public pure returns (uint8) {
        return _decimals;
    }

    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return tokenFromReflection(_rOwned[account]);
    }

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

    function setCooldownEnabled(bool onoff) external onlyOwner() {
        cooldownEnabled = onoff;
    }

    function tokenFromReflection(uint256 rAmount) private view returns(uint256) {
        require(rAmount <= _rTotal, "Amount must be less than total reflections");
        uint256 currentRate =  _getRate();
        return rAmount.div(currentRate);
    }

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

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        _feeAddr1 = 5;
        _feeAddr2 = 10;
        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to]);
            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] && cooldownEnabled) {
                // Cooldown
                require(amount <= _maxTxAmount);
                require(cooldown[to] < block.timestamp);
                cooldown[to] = block.timestamp + (30 seconds);
            }
            
            
            if (to == uniswapV2Pair && from != address(uniswapV2Router) && ! _isExcludedFromFee[from]) {
                _feeAddr1 = 5;
                _feeAddr2 = 20;
            }
            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && from != uniswapV2Pair && swapEnabled) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
		
        _tokenTransfer(from,to,amount);
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }
        
    function sendETHToFee(uint256 amount) private {
        _feeAddrWallet1.transfer(amount.div(2));
        _feeAddrWallet2.transfer(amount.div(2));
    }
    
    function openTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        swapEnabled = true;
        cooldownEnabled = true;
        _maxTxAmount = 100000000000000000 * 10**9;
        tradingOpen = true;
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }
    
    function setBots(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }
    
    function delBot(address notbot) public onlyOwner {
        bots[notbot] = false;
    }
        
    function _tokenTransfer(address sender, address recipient, uint256 amount) private {
        _transferStandard(sender, recipient, amount);
    }

    function _transferStandard(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); 
        _takeTeam(tTeam);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _takeTeam(uint256 tTeam) private {
        uint256 currentRate =  _getRate();
        uint256 rTeam = tTeam.mul(currentRate);
        _rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
    }

    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }

    receive() external payable {}
    
    function manualswap() external {
        require(_msgSender() == _feeAddrWallet1);
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }
    
    function manualsend() external {
        require(_msgSender() == _feeAddrWallet1);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }
    

    function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _feeAddr1, _feeAddr2);
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate);
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
    }

    function _getTValues(uint256 tAmount, uint256 taxFee, uint256 TeamFee) private pure returns (uint256, uint256, uint256) {
        uint256 tFee = tAmount.mul(taxFee).div(100);
        uint256 tTeam = tAmount.mul(TeamFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);
        return (tTransferAmount, tFee, tTeam);
    }

    function _getRValues(uint256 tAmount, uint256 tFee, uint256 tTeam, uint256 currentRate) private pure returns (uint256, uint256, uint256) {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);
        return (rAmount, rTransferAmount, rFee);
    }

	function _getRate() private view returns(uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);
    }

    function _getCurrentSupply() private view returns(uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;      
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }
}

Contract Security Audit

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":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"delBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"setBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setCooldownEnabled","outputs":[],"stateMutability":"nonpayable","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":"pure","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":"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"},{"stateMutability":"payable","type":"receive"}]

60806040526b033b2e3c9fd0803ce800000060001962000020919062000543565b6000196200002f9190620004fe565b6008556000600f60156101000a81548160ff0219169083151502179055506000600f60166101000a81548160ff0219169083151502179055506000600f60176101000a81548160ff0219169083151502179055506b033b2e3c9fd0803ce8000000601055348015620000a057600080fd5b506000620000b36200049f60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35073e8a8dc7d043bb0bf53dea967e680f210dd2218ad600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073f68cf520d5c2758b1cd4d635c51842aa0dcfe8ac600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060085460026000620002126200049f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060016005600062000266620004a760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620004136200049f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ab5801a7d398351b8be11c439e05c5b3259aec9b73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6b033b2e3c9fd0803ce8000000604051620004919190620004e1565b60405180910390a3620005d9565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b620004db8162000539565b82525050565b6000602082019050620004f86000830184620004d0565b92915050565b60006200050b8262000539565b9150620005188362000539565b9250828210156200052e576200052d6200057b565b5b828203905092915050565b6000819050919050565b6000620005508262000539565b91506200055d8362000539565b92508262000570576200056f620005aa565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b61336b80620005e96000396000f3fe6080604052600436106101025760003560e01c806370a0823111610095578063a9059cbb11610064578063a9059cbb1461031c578063b515566a14610359578063c3c8cd8014610382578063c9567bf914610399578063dd62ed3e146103b057610109565b806370a0823114610272578063715018a6146102af5780638da5cb5b146102c657806395d89b41146102f157610109565b8063273123b7116100d1578063273123b7146101de578063313ce567146102075780635932ead1146102325780636fc3eaec1461025b57610109565b806306fdde031461010e578063095ea7b31461013957806318160ddd1461017657806323b872dd146101a157610109565b3661010957005b600080fd5b34801561011a57600080fd5b506101236103ed565b6040516101309190612a82565b60405180910390f35b34801561014557600080fd5b50610160600480360381019061015b91906125fc565b61042a565b60405161016d9190612a67565b60405180910390f35b34801561018257600080fd5b5061018b610448565b6040516101989190612be4565b60405180910390f35b3480156101ad57600080fd5b506101c860048036038101906101c391906125a9565b61045c565b6040516101d59190612a67565b60405180910390f35b3480156101ea57600080fd5b506102056004803603810190610200919061250f565b610535565b005b34801561021357600080fd5b5061021c610625565b6040516102299190612c59565b60405180910390f35b34801561023e57600080fd5b5061025960048036038101906102549190612685565b61062e565b005b34801561026757600080fd5b506102706106e0565b005b34801561027e57600080fd5b506102996004803603810190610294919061250f565b610752565b6040516102a69190612be4565b60405180910390f35b3480156102bb57600080fd5b506102c46107a3565b005b3480156102d257600080fd5b506102db6108f6565b6040516102e89190612999565b60405180910390f35b3480156102fd57600080fd5b5061030661091f565b6040516103139190612a82565b60405180910390f35b34801561032857600080fd5b50610343600480360381019061033e91906125fc565b61095c565b6040516103509190612a67565b60405180910390f35b34801561036557600080fd5b50610380600480360381019061037b919061263c565b61097a565b005b34801561038e57600080fd5b50610397610aa4565b005b3480156103a557600080fd5b506103ae610b1e565b005b3480156103bc57600080fd5b506103d760048036038101906103d29190612569565b611080565b6040516103e49190612be4565b60405180910390f35b60606040518060400160405280601881526020017f5368696241736961207c20742e6d652f53686962417369610000000000000000815250905090565b600061043e610437611107565b848461110f565b6001905092915050565b60006b033b2e3c9fd0803ce8000000905090565b60006104698484846112da565b61052a84610475611107565b6105258560405180606001604052806028815260200161330e60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006104db611107565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118df9092919063ffffffff16565b61110f565b600190509392505050565b61053d611107565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c190612b44565b60405180910390fd5b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006009905090565b610636611107565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ba90612b44565b60405180910390fd5b80600f60176101000a81548160ff02191690831515021790555050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610721611107565b73ffffffffffffffffffffffffffffffffffffffff161461074157600080fd5b600047905061074f81611943565b50565b600061079c600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a3e565b9050919050565b6107ab611107565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610838576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082f90612b44565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600881526020017f5368696241736961000000000000000000000000000000000000000000000000815250905090565b6000610970610969611107565b84846112da565b6001905092915050565b610982611107565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0690612b44565b60405180910390fd5b60005b8151811015610aa057600160066000848481518110610a3457610a33612fa1565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610a9890612efa565b915050610a12565b5050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ae5611107565b73ffffffffffffffffffffffffffffffffffffffff1614610b0557600080fd5b6000610b1030610752565b9050610b1b81611aac565b50565b610b26611107565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bb3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610baa90612b44565b60405180910390fd5b600f60149054906101000a900460ff1615610c03576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bfa90612bc4565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610c9630600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166b033b2e3c9fd0803ce800000061110f565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610cdc57600080fd5b505afa158015610cf0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d14919061253c565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610d7657600080fd5b505afa158015610d8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dae919061253c565b6040518363ffffffff1660e01b8152600401610dcb9291906129b4565b602060405180830381600087803b158015610de557600080fd5b505af1158015610df9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e1d919061253c565b600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610ea630610752565b600080610eb16108f6565b426040518863ffffffff1660e01b8152600401610ed396959493929190612a06565b6060604051808303818588803b158015610eec57600080fd5b505af1158015610f00573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f2591906126df565b5050506001600f60166101000a81548160ff0219169083151502179055506001600f60176101000a81548160ff0219169083151502179055506a52b7d2dcc80cd2e40000006010819055506001600f60146101000a81548160ff021916908315150217905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161102a9291906129dd565b602060405180830381600087803b15801561104457600080fd5b505af1158015611058573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061107c91906126b2565b5050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561117f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117690612ba4565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e690612ae4565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112cd9190612be4565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561134a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134190612b84565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156113ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b190612aa4565b60405180910390fd5b600081116113fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113f490612b64565b60405180910390fd5b6005600a81905550600a600b819055506114156108f6565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561148357506114536108f6565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156118cf57600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561152c5750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b61153557600080fd5b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156115e05750600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156116365750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561164e5750600f60179054906101000a900460ff165b156116fe5760105481111561166257600080fd5b42600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054106116ad57600080fd5b601e426116ba9190612d1a565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480156117a95750600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156117ff5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611815576005600a819055506014600b819055505b600061182030610752565b9050600f60159054906101000a900460ff1615801561188d5750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156118a55750600f60169054906101000a900460ff165b156118cd576118b381611aac565b600047905060008111156118cb576118ca47611943565b5b505b505b6118da838383611d34565b505050565b6000838311158290611927576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191e9190612a82565b60405180910390fd5b50600083856119369190612dfb565b9050809150509392505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611993600284611d4490919063ffffffff16565b9081150290604051600060405180830381858888f193505050501580156119be573d6000803e3d6000fd5b50600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611a0f600284611d4490919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611a3a573d6000803e3d6000fd5b5050565b6000600854821115611a85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7c90612ac4565b60405180910390fd5b6000611a8f611d8e565b9050611aa48184611d4490919063ffffffff16565b915050919050565b6001600f60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611ae457611ae3612fd0565b5b604051908082528060200260200182016040528015611b125781602001602082028036833780820191505090505b5090503081600081518110611b2a57611b29612fa1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611bcc57600080fd5b505afa158015611be0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c04919061253c565b81600181518110611c1857611c17612fa1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611c7f30600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461110f565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611ce3959493929190612bff565b600060405180830381600087803b158015611cfd57600080fd5b505af1158015611d11573d6000803e3d6000fd5b50505050506000600f60156101000a81548160ff02191690831515021790555050565b611d3f838383611db9565b505050565b6000611d8683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611f84565b905092915050565b6000806000611d9b611fe7565b91509150611db28183611d4490919063ffffffff16565b9250505090565b600080600080600080611dcb87612052565b955095509550955095509550611e2986600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120ba90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ebe85600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461210490919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f0a81612162565b611f14848361221f565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611f719190612be4565b60405180910390a3505050505050505050565b60008083118290611fcb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fc29190612a82565b60405180910390fd5b5060008385611fda9190612d70565b9050809150509392505050565b6000806000600854905060006b033b2e3c9fd0803ce800000090506120236b033b2e3c9fd0803ce8000000600854611d4490919063ffffffff16565b821015612045576008546b033b2e3c9fd0803ce800000093509350505061204e565b81819350935050505b9091565b600080600080600080600080600061206f8a600a54600b54612259565b925092509250600061207f611d8e565b905060008060006120928e8787876122ef565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b60006120fc83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118df565b905092915050565b60008082846121139190612d1a565b905083811015612158576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161214f90612b04565b60405180910390fd5b8091505092915050565b600061216c611d8e565b90506000612183828461237890919063ffffffff16565b90506121d781600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461210490919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b612234826008546120ba90919063ffffffff16565b60088190555061224f8160095461210490919063ffffffff16565b6009819055505050565b6000806000806122856064612277888a61237890919063ffffffff16565b611d4490919063ffffffff16565b905060006122af60646122a1888b61237890919063ffffffff16565b611d4490919063ffffffff16565b905060006122d8826122ca858c6120ba90919063ffffffff16565b6120ba90919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080612308858961237890919063ffffffff16565b9050600061231f868961237890919063ffffffff16565b90506000612336878961237890919063ffffffff16565b9050600061235f8261235185876120ba90919063ffffffff16565b6120ba90919063ffffffff16565b9050838184965096509650505050509450945094915050565b60008083141561238b57600090506123ed565b600082846123999190612da1565b90508284826123a89190612d70565b146123e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123df90612b24565b60405180910390fd5b809150505b92915050565b600061240661240184612c99565b612c74565b9050808382526020820190508285602086028201111561242957612428613004565b5b60005b85811015612459578161243f8882612463565b84526020840193506020830192505060018101905061242c565b5050509392505050565b600081359050612472816132c8565b92915050565b600081519050612487816132c8565b92915050565b600082601f8301126124a2576124a1612fff565b5b81356124b28482602086016123f3565b91505092915050565b6000813590506124ca816132df565b92915050565b6000815190506124df816132df565b92915050565b6000813590506124f4816132f6565b92915050565b600081519050612509816132f6565b92915050565b6000602082840312156125255761252461300e565b5b600061253384828501612463565b91505092915050565b6000602082840312156125525761255161300e565b5b600061256084828501612478565b91505092915050565b600080604083850312156125805761257f61300e565b5b600061258e85828601612463565b925050602061259f85828601612463565b9150509250929050565b6000806000606084860312156125c2576125c161300e565b5b60006125d086828701612463565b93505060206125e186828701612463565b92505060406125f2868287016124e5565b9150509250925092565b600080604083850312156126135761261261300e565b5b600061262185828601612463565b9250506020612632858286016124e5565b9150509250929050565b6000602082840312156126525761265161300e565b5b600082013567ffffffffffffffff8111156126705761266f613009565b5b61267c8482850161248d565b91505092915050565b60006020828403121561269b5761269a61300e565b5b60006126a9848285016124bb565b91505092915050565b6000602082840312156126c8576126c761300e565b5b60006126d6848285016124d0565b91505092915050565b6000806000606084860312156126f8576126f761300e565b5b6000612706868287016124fa565b9350506020612717868287016124fa565b9250506040612728868287016124fa565b9150509250925092565b600061273e838361274a565b60208301905092915050565b61275381612e2f565b82525050565b61276281612e2f565b82525050565b600061277382612cd5565b61277d8185612cf8565b935061278883612cc5565b8060005b838110156127b95781516127a08882612732565b97506127ab83612ceb565b92505060018101905061278c565b5085935050505092915050565b6127cf81612e41565b82525050565b6127de81612e84565b82525050565b60006127ef82612ce0565b6127f98185612d09565b9350612809818560208601612e96565b61281281613013565b840191505092915050565b600061282a602383612d09565b915061283582613024565b604082019050919050565b600061284d602a83612d09565b915061285882613073565b604082019050919050565b6000612870602283612d09565b915061287b826130c2565b604082019050919050565b6000612893601b83612d09565b915061289e82613111565b602082019050919050565b60006128b6602183612d09565b91506128c18261313a565b604082019050919050565b60006128d9602083612d09565b91506128e482613189565b602082019050919050565b60006128fc602983612d09565b9150612907826131b2565b604082019050919050565b600061291f602583612d09565b915061292a82613201565b604082019050919050565b6000612942602483612d09565b915061294d82613250565b604082019050919050565b6000612965601783612d09565b91506129708261329f565b602082019050919050565b61298481612e6d565b82525050565b61299381612e77565b82525050565b60006020820190506129ae6000830184612759565b92915050565b60006040820190506129c96000830185612759565b6129d66020830184612759565b9392505050565b60006040820190506129f26000830185612759565b6129ff602083018461297b565b9392505050565b600060c082019050612a1b6000830189612759565b612a28602083018861297b565b612a3560408301876127d5565b612a4260608301866127d5565b612a4f6080830185612759565b612a5c60a083018461297b565b979650505050505050565b6000602082019050612a7c60008301846127c6565b92915050565b60006020820190508181036000830152612a9c81846127e4565b905092915050565b60006020820190508181036000830152612abd8161281d565b9050919050565b60006020820190508181036000830152612add81612840565b9050919050565b60006020820190508181036000830152612afd81612863565b9050919050565b60006020820190508181036000830152612b1d81612886565b9050919050565b60006020820190508181036000830152612b3d816128a9565b9050919050565b60006020820190508181036000830152612b5d816128cc565b9050919050565b60006020820190508181036000830152612b7d816128ef565b9050919050565b60006020820190508181036000830152612b9d81612912565b9050919050565b60006020820190508181036000830152612bbd81612935565b9050919050565b60006020820190508181036000830152612bdd81612958565b9050919050565b6000602082019050612bf9600083018461297b565b92915050565b600060a082019050612c14600083018861297b565b612c2160208301876127d5565b8181036040830152612c338186612768565b9050612c426060830185612759565b612c4f608083018461297b565b9695505050505050565b6000602082019050612c6e600083018461298a565b92915050565b6000612c7e612c8f565b9050612c8a8282612ec9565b919050565b6000604051905090565b600067ffffffffffffffff821115612cb457612cb3612fd0565b5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612d2582612e6d565b9150612d3083612e6d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612d6557612d64612f43565b5b828201905092915050565b6000612d7b82612e6d565b9150612d8683612e6d565b925082612d9657612d95612f72565b5b828204905092915050565b6000612dac82612e6d565b9150612db783612e6d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612df057612def612f43565b5b828202905092915050565b6000612e0682612e6d565b9150612e1183612e6d565b925082821015612e2457612e23612f43565b5b828203905092915050565b6000612e3a82612e4d565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000612e8f82612e6d565b9050919050565b60005b83811015612eb4578082015181840152602081019050612e99565b83811115612ec3576000848401525b50505050565b612ed282613013565b810181811067ffffffffffffffff82111715612ef157612ef0612fd0565b5b80604052505050565b6000612f0582612e6d565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612f3857612f37612f43565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6132d181612e2f565b81146132dc57600080fd5b50565b6132e881612e41565b81146132f357600080fd5b50565b6132ff81612e6d565b811461330a57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212208157b4c7495875b6a4017db8f0f2c594dd0f74da5c7b315aa3d74b5a2045b41464736f6c63430008060033

Deployed ByteCode Sourcemap

4208:10393:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6123:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6975:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6400:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7144:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11328:88;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6309:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7465:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12705:194;;;;;;;;;;;;;:::i;:::-;;6503:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3287:148;;;;;;;;;;;;;:::i;:::-;;3073:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6214:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6649:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11152:164;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12498:195;;;;;;;;;;;;;:::i;:::-;;10317:823;;;;;;;;;;;;;:::i;:::-;;6824:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6123:83;6160:13;6193:5;;;;;;;;;;;;;;;;;6186:12;;6123:83;:::o;6975:161::-;7050:4;7067:39;7076:12;:10;:12::i;:::-;7090:7;7099:6;7067:8;:39::i;:::-;7124:4;7117:11;;6975:161;;;;:::o;6400:95::-;6453:7;4709:27;6473:14;;6400:95;:::o;7144:313::-;7242:4;7259:36;7269:6;7277:9;7288:6;7259:9;:36::i;:::-;7306:121;7315:6;7323:12;:10;:12::i;:::-;7337:89;7375:6;7337:89;;;;;;;;;;;;;;;;;:11;:19;7349:6;7337:19;;;;;;;;;;;;;;;:33;7357:12;:10;:12::i;:::-;7337:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;7306:8;:121::i;:::-;7445:4;7438:11;;7144:313;;;;;:::o;11328:88::-;3210:12;:10;:12::i;:::-;3200:22;;:6;;;;;;;;;;:22;;;3192:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11403:5:::1;11388:4;:12;11393:6;11388:12;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;11328:88:::0;:::o;6309:83::-;6350:5;5151:1;6368:16;;6309:83;:::o;7465:103::-;3210:12;:10;:12::i;:::-;3200:22;;:6;;;;;;;;;;:22;;;3192:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7555:5:::1;7537:15;;:23;;;;;;;;;;;;;;;;;;7465:103:::0;:::o;12705:194::-;12771:15;;;;;;;;;;;12755:31;;:12;:10;:12::i;:::-;:31;;;12747:40;;;;;;12798:26;12827:21;12798:50;;12859:32;12872:18;12859:12;:32::i;:::-;12736:163;12705:194::o;6503:138::-;6569:7;6596:37;6616:7;:16;6624:7;6616:16;;;;;;;;;;;;;;;;6596:19;:37::i;:::-;6589:44;;6503:138;;;:::o;3287:148::-;3210:12;:10;:12::i;:::-;3200:22;;:6;;;;;;;;;;:22;;;3192:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3394:1:::1;3357:40;;3378:6;::::0;::::1;;;;;;;;3357:40;;;;;;;;;;;;3425:1;3408:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3287:148::o:0;3073:79::-;3111:7;3138:6;;;;;;;;;;;3131:13;;3073:79;:::o;6214:87::-;6253:13;6286:7;;;;;;;;;;;;;;;;;6279:14;;6214:87;:::o;6649:167::-;6727:4;6744:42;6754:12;:10;:12::i;:::-;6768:9;6779:6;6744:9;:42::i;:::-;6804:4;6797:11;;6649:167;;;;:::o;11152:164::-;3210:12;:10;:12::i;:::-;3200:22;;:6;;;;;;;;;;:22;;;3192:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11226:6:::1;11221:88;11242:5;:12;11238:1;:16;11221:88;;;11293:4;11276;:14;11281:5;11287:1;11281:8;;;;;;;;:::i;:::-;;;;;;;;11276:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;11256:3;;;;;:::i;:::-;;;;11221:88;;;;11152:164:::0;:::o;12498:195::-;12564:15;;;;;;;;;;;12548:31;;:12;:10;:12::i;:::-;:31;;;12540:40;;;;;;12591:23;12617:24;12635:4;12617:9;:24::i;:::-;12591:50;;12652:33;12669:15;12652:16;:33::i;:::-;12529:164;12498:195::o;10317:823::-;3210:12;:10;:12::i;:::-;3200:22;;:6;;;;;;;;;;:22;;;3192:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10381:11:::1;;;;;;;;;;;10380:12;10372:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;10430:35;10487:42;10430:100;;10559:16;10541:15;;:34;;;;;;;;;;;;;;;;;;10586:58;10603:4;10618:15;;;;;;;;;;;4709:27;10586:8;:58::i;:::-;10689:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10671:56;;;10736:4;10743:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10671:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10655:13;;:112;;;;;;;;;;;;;;;;;;10778:15;;;;;;;;;;;:31;;;10817:21;10848:4;10854:24;10872:4;10854:9;:24::i;:::-;10879:1;10881::::0;10883:7:::1;:5;:7::i;:::-;10891:15;10778:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;10932:4;10918:11;;:18;;;;;;;;;;;;;;;;;;10965:4;10947:15;;:22;;;;;;;;;;;;;;;;;;10995:26;10980:12;:41;;;;11046:4;11032:11;;:18;;;;;;;;;;;;;;;;;;11068:13;;;;;;;;;;;11061:29;;;11099:15;;;;;;;;;;;11117:14;11061:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10361:779;10317:823::o:0;6824:143::-;6905:7;6932:11;:18;6944:5;6932:18;;;;;;;;;;;;;;;:27;6951:7;6932:27;;;;;;;;;;;;;;;;6925:34;;6824:143;;;;:::o;791:98::-;844:7;871:10;864:17;;791:98;:::o;7838:335::-;7948:1;7931:19;;:5;:19;;;;7923:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8029:1;8010:21;;:7;:21;;;;8002:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8111:6;8081:11;:18;8093:5;8081:18;;;;;;;;;;;;;;;:27;8100:7;8081:27;;;;;;;;;;;;;;;:36;;;;8149:7;8133:32;;8142:5;8133:32;;;8158:6;8133:32;;;;;;:::i;:::-;;;;;;;;7838:335;;;:::o;8181:1463::-;8285:1;8269:18;;:4;:18;;;;8261:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8362:1;8348:16;;:2;:16;;;;8340:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8432:1;8423:6;:10;8415:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8502:1;8490:9;:13;;;;8526:2;8514:9;:14;;;;8551:7;:5;:7::i;:::-;8543:15;;:4;:15;;;;:32;;;;;8568:7;:5;:7::i;:::-;8562:13;;:2;:13;;;;8543:32;8539:1053;;;8601:4;:10;8606:4;8601:10;;;;;;;;;;;;;;;;;;;;;;;;;8600:11;:24;;;;;8616:4;:8;8621:2;8616:8;;;;;;;;;;;;;;;;;;;;;;;;;8615:9;8600:24;8592:33;;;;;;8652:13;;;;;;;;;;;8644:21;;:4;:21;;;:55;;;;;8683:15;;;;;;;;;;;8669:30;;:2;:30;;;;8644:55;:83;;;;;8705:18;:22;8724:2;8705:22;;;;;;;;;;;;;;;;;;;;;;;;;8703:24;8644:83;:102;;;;;8731:15;;;;;;;;;;;8644:102;8640:325;;;8814:12;;8804:6;:22;;8796:31;;;;;;8869:15;8854:8;:12;8863:2;8854:12;;;;;;;;;;;;;;;;:30;8846:39;;;;;;8938:10;8919:15;:30;;;;:::i;:::-;8904:8;:12;8913:2;8904:12;;;;;;;;;;;;;;;:45;;;;8640:325;9017:13;;;;;;;;;;;9011:19;;:2;:19;;;:55;;;;;9050:15;;;;;;;;;;;9034:32;;:4;:32;;;;9011:55;:85;;;;;9072:18;:24;9091:4;9072:24;;;;;;;;;;;;;;;;;;;;;;;;;9070:26;9011:85;9007:172;;;9129:1;9117:9;:13;;;;9161:2;9149:9;:14;;;;9007:172;9193:28;9224:24;9242:4;9224:9;:24::i;:::-;9193:55;;9268:6;;;;;;;;;;;9267:7;:32;;;;;9286:13;;;;;;;;;;;9278:21;;:4;:21;;;;9267:32;:47;;;;;9303:11;;;;;;;;;;;9267:47;9263:318;;;9335:38;9352:20;9335:16;:38::i;:::-;9392:26;9421:21;9392:50;;9485:1;9464:18;:22;9461:105;;;9511:35;9524:21;9511:12;:35::i;:::-;9461:105;9316:265;9263:318;8577:1015;8539:1053;9606:30;9621:4;9626:2;9629:6;9606:14;:30::i;:::-;8181:1463;;;:::o;1928:190::-;2014:7;2047:1;2042;:6;;2050:12;2034:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2074:9;2090:1;2086;:5;;;;:::i;:::-;2074:17;;2109:1;2102:8;;;1928:190;;;;;:::o;10151:154::-;10208:15;;;;;;;;;;;:24;;:39;10233:13;10244:1;10233:6;:10;;:13;;;;:::i;:::-;10208:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10258:15;;;;;;;;;;;:24;;:39;10283:13;10294:1;10283:6;:10;;:13;;;;:::i;:::-;10258:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10151:154;:::o;7576:254::-;7643:7;7682;;7671;:18;;7663:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;7747:19;7770:10;:8;:10::i;:::-;7747:33;;7798:24;7810:11;7798:7;:11;;:24;;;;:::i;:::-;7791:31;;;7576:254;;;:::o;9652:483::-;5533:4;5524:6;;:13;;;;;;;;;;;;;;;;;;9730:21:::1;9768:1;9754:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9730:40;;9799:4;9781;9786:1;9781:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;9825:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9815:4;9820:1;9815:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;9858:62;9875:4;9890:15;;;;;;;;;;;9908:11;9858:8;:62::i;:::-;9931:15;;;;;;;;;;;:66;;;10012:11;10038:1;10054:4;10081;10101:15;9931:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;9719:416;5569:5:::0;5560:6;;:14;;;;;;;;;;;;;;;;;;9652:483;:::o;11432:146::-;11526:44;11544:6;11552:9;11563:6;11526:17;:44::i;:::-;11432:146;;;:::o;2380:132::-;2438:7;2465:39;2469:1;2472;2465:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2458:46;;2380:132;;;;:::o;14165:163::-;14206:7;14227:15;14244;14263:19;:17;:19::i;:::-;14226:56;;;;14300:20;14312:7;14300;:11;;:20;;;;:::i;:::-;14293:27;;;;14165:163;:::o;11586:488::-;11685:15;11702:23;11727:12;11741:23;11766:12;11780:13;11797:19;11808:7;11797:10;:19::i;:::-;11684:132;;;;;;;;;;;;11845:28;11865:7;11845;:15;11853:6;11845:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;11827:7;:15;11835:6;11827:15;;;;;;;;;;;;;;;:46;;;;11905:39;11928:15;11905:7;:18;11913:9;11905:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;11884:7;:18;11892:9;11884:18;;;;;;;;;;;;;;;:60;;;;11956:16;11966:5;11956:9;:16::i;:::-;11983:23;11995:4;12001;11983:11;:23::i;:::-;12039:9;12022:44;;12031:6;12022:44;;;12050:15;12022:44;;;;;;:::i;:::-;;;;;;;;11673:401;;;;;;11586:488;;;:::o;2520:189::-;2606:7;2638:1;2634;:5;2641:12;2626:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2665:9;2681:1;2677;:5;;;;:::i;:::-;2665:17;;2700:1;2693:8;;;2520:189;;;;;:::o;14336:262::-;14386:7;14395;14415:15;14433:7;;14415:25;;14451:15;4709:27;14451:25;;14507:20;4709:27;14507:7;;:11;;:20;;;;:::i;:::-;14497:7;:30;14493:61;;;14537:7;;4709:27;14529:25;;;;;;;;14493:61;14573:7;14582;14565:25;;;;;;14336:262;;;:::o;12913:471::-;12972:7;12981;12990;12999;13008;13017;13038:23;13063:12;13077:13;13094:42;13106:7;13115:9;;13126;;13094:11;:42::i;:::-;13037:99;;;;;;13147:19;13170:10;:8;:10::i;:::-;13147:33;;13192:15;13209:23;13234:12;13250:46;13262:7;13271:4;13277:5;13284:11;13250;:46::i;:::-;13191:105;;;;;;13315:7;13324:15;13341:4;13347:15;13364:4;13370:5;13307:69;;;;;;;;;;;;;;;;;;;12913:471;;;;;;;:::o;1784:136::-;1842:7;1869:43;1873:1;1876;1869:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1862:50;;1784:136;;;;:::o;1597:179::-;1655:7;1675:9;1691:1;1687;:5;;;;:::i;:::-;1675:17;;1716:1;1711;:6;;1703:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1767:1;1760:8;;;1597:179;;;;:::o;12082:212::-;12135:19;12158:10;:8;:10::i;:::-;12135:33;;12179:13;12195:22;12205:11;12195:5;:9;;:22;;;;:::i;:::-;12179:38;;12253:33;12280:5;12253:7;:22;12269:4;12253:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;12228:7;:22;12244:4;12228:22;;;;;;;;;;;;;;;:58;;;;12124:170;;12082:212;:::o;12302:147::-;12380:17;12392:4;12380:7;;:11;;:17;;;;:::i;:::-;12370:7;:27;;;;12421:20;12436:4;12421:10;;:14;;:20;;;;:::i;:::-;12408:10;:33;;;;12302:147;;:::o;13392:351::-;13485:7;13494;13503;13523:12;13538:28;13562:3;13538:19;13550:6;13538:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;13523:43;;13577:13;13593:29;13618:3;13593:20;13605:7;13593;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;13577:45;;13633:23;13659:28;13681:5;13659:17;13671:4;13659:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;13633:54;;13706:15;13723:4;13729:5;13698:37;;;;;;;;;13392:351;;;;;;;:::o;13751:409::-;13861:7;13870;13879;13899:15;13917:24;13929:11;13917:7;:11;;:24;;;;:::i;:::-;13899:42;;13952:12;13967:21;13976:11;13967:4;:8;;:21;;;;:::i;:::-;13952:36;;13999:13;14015:22;14025:11;14015:5;:9;;:22;;;;:::i;:::-;13999:38;;14048:23;14074:28;14096:5;14074:17;14086:4;14074:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;14048:54;;14121:7;14130:15;14147:4;14113:39;;;;;;;;;;13751:409;;;;;;;;:::o;2126:246::-;2184:7;2213:1;2208;:6;2204:47;;;2238:1;2231:8;;;;2204:47;2261:9;2277:1;2273;:5;;;;:::i;:::-;2261:17;;2306:1;2301;2297;:5;;;;:::i;:::-;:10;2289:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2363:1;2356:8;;;2126:246;;;;;:::o;24:722:1:-;120:5;145:81;161:64;218:6;161:64;:::i;:::-;145:81;:::i;:::-;136:90;;246:5;275:6;268:5;261:21;309:4;302:5;298:16;291:23;;335:6;385:3;377:4;369:6;365:17;360:3;356:27;353:36;350:2;;;404:79;;:::i;:::-;350:2;517:1;502:238;527:6;524:1;521:13;502:238;;;595:3;624:37;657:3;645:10;624:37;:::i;:::-;619:3;612:50;691:4;686:3;682:14;675:21;;725:4;720:3;716:14;709:21;;562:178;549:1;546;542:9;537:14;;502:238;;;506:14;126:620;;;;;;;:::o;752:139::-;798:5;836:6;823:20;814:29;;852:33;879:5;852:33;:::i;:::-;804:87;;;;:::o;897:143::-;954:5;985:6;979:13;970:22;;1001:33;1028:5;1001:33;:::i;:::-;960:80;;;;:::o;1063:370::-;1134:5;1183:3;1176:4;1168:6;1164:17;1160:27;1150:2;;1191:79;;:::i;:::-;1150:2;1308:6;1295:20;1333:94;1423:3;1415:6;1408:4;1400:6;1396:17;1333:94;:::i;:::-;1324:103;;1140:293;;;;;:::o;1439:133::-;1482:5;1520:6;1507:20;1498:29;;1536:30;1560:5;1536:30;:::i;:::-;1488:84;;;;:::o;1578:137::-;1632:5;1663:6;1657:13;1648:22;;1679:30;1703:5;1679:30;:::i;:::-;1638:77;;;;:::o;1721:139::-;1767:5;1805:6;1792:20;1783:29;;1821:33;1848:5;1821:33;:::i;:::-;1773:87;;;;:::o;1866:143::-;1923:5;1954:6;1948:13;1939:22;;1970:33;1997:5;1970:33;:::i;:::-;1929:80;;;;:::o;2015:329::-;2074:6;2123:2;2111:9;2102:7;2098:23;2094:32;2091:2;;;2129:79;;:::i;:::-;2091:2;2249:1;2274:53;2319:7;2310:6;2299:9;2295:22;2274:53;:::i;:::-;2264:63;;2220:117;2081:263;;;;:::o;2350:351::-;2420:6;2469:2;2457:9;2448:7;2444:23;2440:32;2437:2;;;2475:79;;:::i;:::-;2437:2;2595:1;2620:64;2676:7;2667:6;2656:9;2652:22;2620:64;:::i;:::-;2610:74;;2566:128;2427:274;;;;:::o;2707:474::-;2775:6;2783;2832:2;2820:9;2811:7;2807:23;2803:32;2800:2;;;2838:79;;:::i;:::-;2800:2;2958:1;2983:53;3028:7;3019:6;3008:9;3004:22;2983:53;:::i;:::-;2973:63;;2929:117;3085:2;3111:53;3156:7;3147:6;3136:9;3132:22;3111:53;:::i;:::-;3101:63;;3056:118;2790:391;;;;;:::o;3187:619::-;3264:6;3272;3280;3329:2;3317:9;3308:7;3304:23;3300:32;3297:2;;;3335:79;;:::i;:::-;3297:2;3455:1;3480:53;3525:7;3516:6;3505:9;3501:22;3480:53;:::i;:::-;3470:63;;3426:117;3582:2;3608:53;3653:7;3644:6;3633:9;3629:22;3608:53;:::i;:::-;3598:63;;3553:118;3710:2;3736:53;3781:7;3772:6;3761:9;3757:22;3736:53;:::i;:::-;3726:63;;3681:118;3287:519;;;;;:::o;3812:474::-;3880:6;3888;3937:2;3925:9;3916:7;3912:23;3908:32;3905:2;;;3943:79;;:::i;:::-;3905:2;4063:1;4088:53;4133:7;4124:6;4113:9;4109:22;4088:53;:::i;:::-;4078:63;;4034:117;4190:2;4216:53;4261:7;4252:6;4241:9;4237:22;4216:53;:::i;:::-;4206:63;;4161:118;3895:391;;;;;:::o;4292:539::-;4376:6;4425:2;4413:9;4404:7;4400:23;4396:32;4393:2;;;4431:79;;:::i;:::-;4393:2;4579:1;4568:9;4564:17;4551:31;4609:18;4601:6;4598:30;4595:2;;;4631:79;;:::i;:::-;4595:2;4736:78;4806:7;4797:6;4786:9;4782:22;4736:78;:::i;:::-;4726:88;;4522:302;4383:448;;;;:::o;4837:323::-;4893:6;4942:2;4930:9;4921:7;4917:23;4913:32;4910:2;;;4948:79;;:::i;:::-;4910:2;5068:1;5093:50;5135:7;5126:6;5115:9;5111:22;5093:50;:::i;:::-;5083:60;;5039:114;4900:260;;;;:::o;5166:345::-;5233:6;5282:2;5270:9;5261:7;5257:23;5253:32;5250:2;;;5288:79;;:::i;:::-;5250:2;5408:1;5433:61;5486:7;5477:6;5466:9;5462:22;5433:61;:::i;:::-;5423:71;;5379:125;5240:271;;;;:::o;5517:663::-;5605:6;5613;5621;5670:2;5658:9;5649:7;5645:23;5641:32;5638:2;;;5676:79;;:::i;:::-;5638:2;5796:1;5821:64;5877:7;5868:6;5857:9;5853:22;5821:64;:::i;:::-;5811:74;;5767:128;5934:2;5960:64;6016:7;6007:6;5996:9;5992:22;5960:64;:::i;:::-;5950:74;;5905:129;6073:2;6099:64;6155:7;6146:6;6135:9;6131:22;6099:64;:::i;:::-;6089:74;;6044:129;5628:552;;;;;:::o;6186:179::-;6255:10;6276:46;6318:3;6310:6;6276:46;:::i;:::-;6354:4;6349:3;6345:14;6331:28;;6266:99;;;;:::o;6371:108::-;6448:24;6466:5;6448:24;:::i;:::-;6443:3;6436:37;6426:53;;:::o;6485:118::-;6572:24;6590:5;6572:24;:::i;:::-;6567:3;6560:37;6550:53;;:::o;6639:732::-;6758:3;6787:54;6835:5;6787:54;:::i;:::-;6857:86;6936:6;6931:3;6857:86;:::i;:::-;6850:93;;6967:56;7017:5;6967:56;:::i;:::-;7046:7;7077:1;7062:284;7087:6;7084:1;7081:13;7062:284;;;7163:6;7157:13;7190:63;7249:3;7234:13;7190:63;:::i;:::-;7183:70;;7276:60;7329:6;7276:60;:::i;:::-;7266:70;;7122:224;7109:1;7106;7102:9;7097:14;;7062:284;;;7066:14;7362:3;7355:10;;6763:608;;;;;;;:::o;7377:109::-;7458:21;7473:5;7458:21;:::i;:::-;7453:3;7446:34;7436:50;;:::o;7492:147::-;7587:45;7626:5;7587:45;:::i;:::-;7582:3;7575:58;7565:74;;:::o;7645:364::-;7733:3;7761:39;7794:5;7761:39;:::i;:::-;7816:71;7880:6;7875:3;7816:71;:::i;:::-;7809:78;;7896:52;7941:6;7936:3;7929:4;7922:5;7918:16;7896:52;:::i;:::-;7973:29;7995:6;7973:29;:::i;:::-;7968:3;7964:39;7957:46;;7737:272;;;;;:::o;8015:366::-;8157:3;8178:67;8242:2;8237:3;8178:67;:::i;:::-;8171:74;;8254:93;8343:3;8254:93;:::i;:::-;8372:2;8367:3;8363:12;8356:19;;8161:220;;;:::o;8387:366::-;8529:3;8550:67;8614:2;8609:3;8550:67;:::i;:::-;8543:74;;8626:93;8715:3;8626:93;:::i;:::-;8744:2;8739:3;8735:12;8728:19;;8533:220;;;:::o;8759:366::-;8901:3;8922:67;8986:2;8981:3;8922:67;:::i;:::-;8915:74;;8998:93;9087:3;8998:93;:::i;:::-;9116:2;9111:3;9107:12;9100:19;;8905:220;;;:::o;9131:366::-;9273:3;9294:67;9358:2;9353:3;9294:67;:::i;:::-;9287:74;;9370:93;9459:3;9370:93;:::i;:::-;9488:2;9483:3;9479:12;9472:19;;9277:220;;;:::o;9503:366::-;9645:3;9666:67;9730:2;9725:3;9666:67;:::i;:::-;9659:74;;9742:93;9831:3;9742:93;:::i;:::-;9860:2;9855:3;9851:12;9844:19;;9649:220;;;:::o;9875:366::-;10017:3;10038:67;10102:2;10097:3;10038:67;:::i;:::-;10031:74;;10114:93;10203:3;10114:93;:::i;:::-;10232:2;10227:3;10223:12;10216:19;;10021:220;;;:::o;10247:366::-;10389:3;10410:67;10474:2;10469:3;10410:67;:::i;:::-;10403:74;;10486:93;10575:3;10486:93;:::i;:::-;10604:2;10599:3;10595:12;10588:19;;10393:220;;;:::o;10619:366::-;10761:3;10782:67;10846:2;10841:3;10782:67;:::i;:::-;10775:74;;10858:93;10947:3;10858:93;:::i;:::-;10976:2;10971:3;10967:12;10960:19;;10765:220;;;:::o;10991:366::-;11133:3;11154:67;11218:2;11213:3;11154:67;:::i;:::-;11147:74;;11230:93;11319:3;11230:93;:::i;:::-;11348:2;11343:3;11339:12;11332:19;;11137:220;;;:::o;11363:366::-;11505:3;11526:67;11590:2;11585:3;11526:67;:::i;:::-;11519:74;;11602:93;11691:3;11602:93;:::i;:::-;11720:2;11715:3;11711:12;11704:19;;11509:220;;;:::o;11735:118::-;11822:24;11840:5;11822:24;:::i;:::-;11817:3;11810:37;11800:53;;:::o;11859:112::-;11942:22;11958:5;11942:22;:::i;:::-;11937:3;11930:35;11920:51;;:::o;11977:222::-;12070:4;12108:2;12097:9;12093:18;12085:26;;12121:71;12189:1;12178:9;12174:17;12165:6;12121:71;:::i;:::-;12075:124;;;;:::o;12205:332::-;12326:4;12364:2;12353:9;12349:18;12341:26;;12377:71;12445:1;12434:9;12430:17;12421:6;12377:71;:::i;:::-;12458:72;12526:2;12515:9;12511:18;12502:6;12458:72;:::i;:::-;12331:206;;;;;:::o;12543:332::-;12664:4;12702:2;12691:9;12687:18;12679:26;;12715:71;12783:1;12772:9;12768:17;12759:6;12715:71;:::i;:::-;12796:72;12864:2;12853:9;12849:18;12840:6;12796:72;:::i;:::-;12669:206;;;;;:::o;12881:807::-;13130:4;13168:3;13157:9;13153:19;13145:27;;13182:71;13250:1;13239:9;13235:17;13226:6;13182:71;:::i;:::-;13263:72;13331:2;13320:9;13316:18;13307:6;13263:72;:::i;:::-;13345:80;13421:2;13410:9;13406:18;13397:6;13345:80;:::i;:::-;13435;13511:2;13500:9;13496:18;13487:6;13435:80;:::i;:::-;13525:73;13593:3;13582:9;13578:19;13569:6;13525:73;:::i;:::-;13608;13676:3;13665:9;13661:19;13652:6;13608:73;:::i;:::-;13135:553;;;;;;;;;:::o;13694:210::-;13781:4;13819:2;13808:9;13804:18;13796:26;;13832:65;13894:1;13883:9;13879:17;13870:6;13832:65;:::i;:::-;13786:118;;;;:::o;13910:313::-;14023:4;14061:2;14050:9;14046:18;14038:26;;14110:9;14104:4;14100:20;14096:1;14085:9;14081:17;14074:47;14138:78;14211:4;14202:6;14138:78;:::i;:::-;14130:86;;14028:195;;;;:::o;14229:419::-;14395:4;14433:2;14422:9;14418:18;14410:26;;14482:9;14476:4;14472:20;14468:1;14457:9;14453:17;14446:47;14510:131;14636:4;14510:131;:::i;:::-;14502:139;;14400:248;;;:::o;14654:419::-;14820:4;14858:2;14847:9;14843:18;14835:26;;14907:9;14901:4;14897:20;14893:1;14882:9;14878:17;14871:47;14935:131;15061:4;14935:131;:::i;:::-;14927:139;;14825:248;;;:::o;15079:419::-;15245:4;15283:2;15272:9;15268:18;15260:26;;15332:9;15326:4;15322:20;15318:1;15307:9;15303:17;15296:47;15360:131;15486:4;15360:131;:::i;:::-;15352:139;;15250:248;;;:::o;15504:419::-;15670:4;15708:2;15697:9;15693:18;15685:26;;15757:9;15751:4;15747:20;15743:1;15732:9;15728:17;15721:47;15785:131;15911:4;15785:131;:::i;:::-;15777:139;;15675:248;;;:::o;15929:419::-;16095:4;16133:2;16122:9;16118:18;16110:26;;16182:9;16176:4;16172:20;16168:1;16157:9;16153:17;16146:47;16210:131;16336:4;16210:131;:::i;:::-;16202:139;;16100:248;;;:::o;16354:419::-;16520:4;16558:2;16547:9;16543:18;16535:26;;16607:9;16601:4;16597:20;16593:1;16582:9;16578:17;16571:47;16635:131;16761:4;16635:131;:::i;:::-;16627:139;;16525:248;;;:::o;16779:419::-;16945:4;16983:2;16972:9;16968:18;16960:26;;17032:9;17026:4;17022:20;17018:1;17007:9;17003:17;16996:47;17060:131;17186:4;17060:131;:::i;:::-;17052:139;;16950:248;;;:::o;17204:419::-;17370:4;17408:2;17397:9;17393:18;17385:26;;17457:9;17451:4;17447:20;17443:1;17432:9;17428:17;17421:47;17485:131;17611:4;17485:131;:::i;:::-;17477:139;;17375:248;;;:::o;17629:419::-;17795:4;17833:2;17822:9;17818:18;17810:26;;17882:9;17876:4;17872:20;17868:1;17857:9;17853:17;17846:47;17910:131;18036:4;17910:131;:::i;:::-;17902:139;;17800:248;;;:::o;18054:419::-;18220:4;18258:2;18247:9;18243:18;18235:26;;18307:9;18301:4;18297:20;18293:1;18282:9;18278:17;18271:47;18335:131;18461:4;18335:131;:::i;:::-;18327:139;;18225:248;;;:::o;18479:222::-;18572:4;18610:2;18599:9;18595:18;18587:26;;18623:71;18691:1;18680:9;18676:17;18667:6;18623:71;:::i;:::-;18577:124;;;;:::o;18707:831::-;18970:4;19008:3;18997:9;18993:19;18985:27;;19022:71;19090:1;19079:9;19075:17;19066:6;19022:71;:::i;:::-;19103:80;19179:2;19168:9;19164:18;19155:6;19103:80;:::i;:::-;19230:9;19224:4;19220:20;19215:2;19204:9;19200:18;19193:48;19258:108;19361:4;19352:6;19258:108;:::i;:::-;19250:116;;19376:72;19444:2;19433:9;19429:18;19420:6;19376:72;:::i;:::-;19458:73;19526:3;19515:9;19511:19;19502:6;19458:73;:::i;:::-;18975:563;;;;;;;;:::o;19544:214::-;19633:4;19671:2;19660:9;19656:18;19648:26;;19684:67;19748:1;19737:9;19733:17;19724:6;19684:67;:::i;:::-;19638:120;;;;:::o;19764:129::-;19798:6;19825:20;;:::i;:::-;19815:30;;19854:33;19882:4;19874:6;19854:33;:::i;:::-;19805:88;;;:::o;19899:75::-;19932:6;19965:2;19959:9;19949:19;;19939:35;:::o;19980:311::-;20057:4;20147:18;20139:6;20136:30;20133:2;;;20169:18;;:::i;:::-;20133:2;20219:4;20211:6;20207:17;20199:25;;20279:4;20273;20269:15;20261:23;;20062:229;;;:::o;20297:132::-;20364:4;20387:3;20379:11;;20417:4;20412:3;20408:14;20400:22;;20369:60;;;:::o;20435:114::-;20502:6;20536:5;20530:12;20520:22;;20509:40;;;:::o;20555:99::-;20607:6;20641:5;20635:12;20625:22;;20614:40;;;:::o;20660:113::-;20730:4;20762;20757:3;20753:14;20745:22;;20735:38;;;:::o;20779:184::-;20878:11;20912:6;20907:3;20900:19;20952:4;20947:3;20943:14;20928:29;;20890:73;;;;:::o;20969:169::-;21053:11;21087:6;21082:3;21075:19;21127:4;21122:3;21118:14;21103:29;;21065:73;;;;:::o;21144:305::-;21184:3;21203:20;21221:1;21203:20;:::i;:::-;21198:25;;21237:20;21255:1;21237:20;:::i;:::-;21232:25;;21391:1;21323:66;21319:74;21316:1;21313:81;21310:2;;;21397:18;;:::i;:::-;21310:2;21441:1;21438;21434:9;21427:16;;21188:261;;;;:::o;21455:185::-;21495:1;21512:20;21530:1;21512:20;:::i;:::-;21507:25;;21546:20;21564:1;21546:20;:::i;:::-;21541:25;;21585:1;21575:2;;21590:18;;:::i;:::-;21575:2;21632:1;21629;21625:9;21620:14;;21497:143;;;;:::o;21646:348::-;21686:7;21709:20;21727:1;21709:20;:::i;:::-;21704:25;;21743:20;21761:1;21743:20;:::i;:::-;21738:25;;21931:1;21863:66;21859:74;21856:1;21853:81;21848:1;21841:9;21834:17;21830:105;21827:2;;;21938:18;;:::i;:::-;21827:2;21986:1;21983;21979:9;21968:20;;21694:300;;;;:::o;22000:191::-;22040:4;22060:20;22078:1;22060:20;:::i;:::-;22055:25;;22094:20;22112:1;22094:20;:::i;:::-;22089:25;;22133:1;22130;22127:8;22124:2;;;22138:18;;:::i;:::-;22124:2;22183:1;22180;22176:9;22168:17;;22045:146;;;;:::o;22197:96::-;22234:7;22263:24;22281:5;22263:24;:::i;:::-;22252:35;;22242:51;;;:::o;22299:90::-;22333:7;22376:5;22369:13;22362:21;22351:32;;22341:48;;;:::o;22395:126::-;22432:7;22472:42;22465:5;22461:54;22450:65;;22440:81;;;:::o;22527:77::-;22564:7;22593:5;22582:16;;22572:32;;;:::o;22610:86::-;22645:7;22685:4;22678:5;22674:16;22663:27;;22653:43;;;:::o;22702:121::-;22760:9;22793:24;22811:5;22793:24;:::i;:::-;22780:37;;22770:53;;;:::o;22829:307::-;22897:1;22907:113;22921:6;22918:1;22915:13;22907:113;;;23006:1;23001:3;22997:11;22991:18;22987:1;22982:3;22978:11;22971:39;22943:2;22940:1;22936:10;22931:15;;22907:113;;;23038:6;23035:1;23032:13;23029:2;;;23118:1;23109:6;23104:3;23100:16;23093:27;23029:2;22878:258;;;;:::o;23142:281::-;23225:27;23247:4;23225:27;:::i;:::-;23217:6;23213:40;23355:6;23343:10;23340:22;23319:18;23307:10;23304:34;23301:62;23298:2;;;23366:18;;:::i;:::-;23298:2;23406:10;23402:2;23395:22;23185:238;;;:::o;23429:233::-;23468:3;23491:24;23509:5;23491:24;:::i;:::-;23482:33;;23537:66;23530:5;23527:77;23524:2;;;23607:18;;:::i;:::-;23524:2;23654:1;23647:5;23643:13;23636:20;;23472:190;;;:::o;23668:180::-;23716:77;23713:1;23706:88;23813:4;23810:1;23803:15;23837:4;23834:1;23827:15;23854:180;23902:77;23899:1;23892:88;23999:4;23996:1;23989:15;24023:4;24020:1;24013:15;24040:180;24088:77;24085:1;24078:88;24185:4;24182:1;24175:15;24209:4;24206:1;24199:15;24226:180;24274:77;24271:1;24264:88;24371:4;24368:1;24361:15;24395:4;24392:1;24385:15;24412:117;24521:1;24518;24511:12;24535:117;24644:1;24641;24634:12;24658:117;24767:1;24764;24757:12;24781:117;24890:1;24887;24880:12;24904:102;24945:6;24996:2;24992:7;24987:2;24980:5;24976:14;24972:28;24962:38;;24952:54;;;:::o;25012:222::-;25152:34;25148:1;25140:6;25136:14;25129:58;25221:5;25216:2;25208:6;25204:15;25197:30;25118:116;:::o;25240:229::-;25380:34;25376:1;25368:6;25364:14;25357:58;25449:12;25444:2;25436:6;25432:15;25425:37;25346:123;:::o;25475:221::-;25615:34;25611:1;25603:6;25599:14;25592:58;25684:4;25679:2;25671:6;25667:15;25660:29;25581:115;:::o;25702:177::-;25842:29;25838:1;25830:6;25826:14;25819:53;25808:71;:::o;25885:220::-;26025:34;26021:1;26013:6;26009:14;26002:58;26094:3;26089:2;26081:6;26077:15;26070:28;25991:114;:::o;26111:182::-;26251:34;26247:1;26239:6;26235:14;26228:58;26217:76;:::o;26299:228::-;26439:34;26435:1;26427:6;26423:14;26416:58;26508:11;26503:2;26495:6;26491:15;26484:36;26405:122;:::o;26533:224::-;26673:34;26669:1;26661:6;26657:14;26650:58;26742:7;26737:2;26729:6;26725:15;26718:32;26639:118;:::o;26763:223::-;26903:34;26899:1;26891:6;26887:14;26880:58;26972:6;26967:2;26959:6;26955:15;26948:31;26869:117;:::o;26992:173::-;27132:25;27128:1;27120:6;27116:14;27109:49;27098:67;:::o;27171:122::-;27244:24;27262:5;27244:24;:::i;:::-;27237:5;27234:35;27224:2;;27283:1;27280;27273:12;27224:2;27214:79;:::o;27299:116::-;27369:21;27384:5;27369:21;:::i;:::-;27362:5;27359:32;27349:2;;27405:1;27402;27395:12;27349:2;27339:76;:::o;27421:122::-;27494:24;27512:5;27494:24;:::i;:::-;27487:5;27484:35;27474:2;;27533:1;27530;27523:12;27474:2;27464:79;:::o

Swarm Source

ipfs://8157b4c7495875b6a4017db8f0f2c594dd0f74da5c7b315aa3d74b5a2045b414
Block Transaction Difficulty Gas Used Reward
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.