Contract 0x9358a2c091444b5a319c4b966dcecb561ae9f2d9

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x60fbeb42d4334cb87284a07736db8c2fdd77cd8df3490673db2e31b45940af40Approve121407612021-10-27 17:13:1015 hrs 23 mins ago0x2a1725715ce87637fe00e429887478ee819d8957 IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.0002926176
0x7375785b8843f9e7e4203c4513659391ba44ad4acb4259d30d488df85700a932Approve121332162021-10-27 10:39:0021 hrs 57 mins ago0x38d4f4ae8fd1dfaf0373580c8ae9c309912b140e IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.000150816
0x58f379f98e377ff568a7b78875713aa33868d64f0c376733637e30e5b0822f39Approve121332022021-10-27 10:38:1721 hrs 58 mins ago0x38d4f4ae8fd1dfaf0373580c8ae9c309912b140e IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.000266016
0x162066d83e639f33cd0a90bee9ef69367dd1e8c842253c3df76d23ba53268144Approve121183262021-10-26 22:06:021 day 10 hrs ago0xbfdeffb199fd6f20c52627f9d5852b55166aec55 IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0x066075b179b1380183b83ff1c562ca9b6e3563436324709eb2be733f74cbe87fApprove121178652021-10-26 21:42:541 day 10 hrs ago0xc429251b5c93620dbe938c1f04c0d6d8990babee IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00007238
0xdfdfc5ea4b8a455179c59fced441dbae84e604c9ea3da77a17a136a5a29d6fe3Transfer121071382021-10-26 12:38:201 day 19 hrs ago0x87930fb34540f2b61d19dd6af8d9a4d216ed4ba2 IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.002695685
0x2b3abbf3bae98ef159dc7436b94fba35c78572491f5dd9d608033a738515fb81Approve120977872021-10-26 4:48:482 days 3 hrs ago0x97c2814e85628ac70878371b88511ec890b2be1e IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0x623385579e0b4c29aa3d0292a5a33adf12c51e576e34413a2cb501c6f7ab6cb8Approve120863922021-10-25 19:17:542 days 13 hrs ago0x140e7aab562241ff022e3a366d27ac007ab51124 IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0x97be8736650358a522843248fc0fd29554567ebbd2f47467083ca2809844d996Approve120648152021-10-25 1:12:293 days 7 hrs ago0x7a9ede920ab18c8ed408da2aef097aa70936240c IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.000266016
0x48c97ab355fa409fd202ef339240a3692a686ca59fd4b4b6420fe91eefd099fdApprove120233152021-10-23 14:10:304 days 18 hrs ago0x283365b8ad838b1a92e2163f32cfe83b72fbabc4 IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.0000738276
0xe241e4b5a566b83a1cc712f3815a6ab4f4bdb1799870264b99c33bbe76244f08Approve120197592021-10-23 11:11:224 days 21 hrs ago0xda7ea868880d112a667138dd029b5ae088df5a32 IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0xc7c244e2659e34e87edcbfe9f0a64f640357ae65b686ac115342ab7d2623c11cApprove120090362021-10-23 2:09:555 days 6 hrs ago0x4407c6fdcb98ba0fc5894da03677ab1dea62d75c IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.0000738276
0x0e783d96a0863fc8d87f0e131efea442b559dcebb89af0c5164fb9f85e20f92cApprove119997152021-10-22 18:18:465 days 14 hrs ago0x19111db028b9f2ad82100cfc9647533b35c76304 IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0x487a1f121ce439d723c417e9bcd95e8db1e9ed19f5d0b981302161deb40e7280Approve119994302021-10-22 18:04:295 days 14 hrs ago0xa3d6000560a275881e241f9f2fb7c82ba0020d1b IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00007238
0xb2c92c0a2a2dc45af02594e98935c3d5c847645b3156dad7e9064fe00da7a852Approve119962752021-10-22 15:25:135 days 17 hrs ago0x22fa0d5f6266b46b43124850cba16ce8825c6bd0 IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0xbd5eaa3e6a78b2d993ae622172c3e3d867ac0f60c141049e410dd708cce71723Approve119780832021-10-21 23:46:256 days 8 hrs ago0x2f2e58af9338d7e94078160169d7fed09616f82e IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0x7326b930ad583e37d8764848af9948c4c72db52838fbb52d25e08d390d5b5f58Approve119750462021-10-21 21:14:316 days 11 hrs ago0x52c3ea74c79351cf990bd358ace9f1cb1165a31e IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0xfbfc8b4f7b2945c1ad84290b8ce53d1bcc851a24b5b502d1577a4fda55fa9328Approve119748072021-10-21 21:02:346 days 11 hrs ago0xbacb44ef894218f410fcad40270742824bd5f1fb IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0x7e7871f4e6bf86a13c30cb6225badd9f95089448fa6b2cd4f1889b0853a68459Approve119656572021-10-21 13:12:076 days 19 hrs ago0xdf0e50292b25038f26684d589c26ba5d994d34e5 IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0x7388d04fb64362d4ec6a45b8544b554e6d2d901d2de6cb605dcb3cb908808b0bApprove119526092021-10-21 2:06:057 days 6 hrs ago0xb85b278de89eb30a66d445b395d6880384fa8f4c IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0xb2c0e1ea6c98ca2b50f09b44d21f1de34b39bd6b5227d0c99c90e0211321c65cApprove119418932021-10-20 17:04:357 days 15 hrs ago0xb2c66834f79545f842ad74dceaa72066bc6a93aa IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0x4c43fa8e6e25f63064b5ff0841d9ec54e50df45d076f8bea21147e26677b06c4Approve119362162021-10-20 12:19:587 days 20 hrs ago0x75b123e16232a883f8168968282f89d73b341fef IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0xf1d57bc65127eb2692e31957558767c69a73d41c9405d60780bf3c4dd121d158Approve119265102021-10-20 4:10:568 days 4 hrs ago0xf3c7bbf425dbd4c58e638a531a980e106eb4dcb8 IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0x3efe1c3a781b32bc7bfa2fe1dd58dc68b33326eeb2b0c45f5e7f10729da19fedApprove119238532021-10-20 1:58:048 days 6 hrs ago0xf2dc085f0a4e4a45bfae1604cf0609aa33c24e09 IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00022168
0xa9bdf445d3247cff32475d0400b19ee55ba2aecf277daaf1c81a82de0445b8b6Approve119162622021-10-19 19:20:528 days 13 hrs ago0x6c3081de599e651298da358738d67af93e1c5d43 IN  0x9358a2c091444b5a319c4b966dcecb561ae9f2d90 BNB0.00007238
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0xe555b3937178b33c3c449fbf956bc2ec39da40078370d3a02a8797d484572f34108334382021-09-11 23:11:1546 days 9 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90x046332fc25363f4e8e60ff5c9a80c1ab21386e3d1.923246157415234321 BNB
0x33fe570515808c3dd028de17efec54561ba9d127abd51b20603977793d9ea9df107667282021-09-09 14:59:0748 days 17 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90x046332fc25363f4e8e60ff5c9a80c1ab21386e3d1.923246157415234321 BNB
0x2b0df94c74abc7481db8a3015eecf6877b907c9d65d034435ad16dfb408bc516105677412021-09-02 15:30:4455 days 17 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90x046332fc25363f4e8e60ff5c9a80c1ab21386e3d21.796789784039322304 BNB
0x6909ac27801084f105f9b0612250c1f78c5474c3980d7029633e71ec4e28957a105377672021-09-01 14:16:5956 days 18 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90x046332fc25363f4e8e60ff5c9a80c1ab21386e3d0.091523445811103347 BNB
0x6909ac27801084f105f9b0612250c1f78c5474c3980d7029633e71ec4e28957a105377672021-09-01 14:16:5956 days 18 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d9 0x13e379a85728bae7476086db1b808dd5c4f40be40.039224333919044291 BNB
0x6909ac27801084f105f9b0612250c1f78c5474c3980d7029633e71ec4e28957a105377672021-09-01 14:16:5956 days 18 hrs ago PancakeSwap: Router v2 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90.169972113649191931 BNB
0x5b85a964639b697e093fe07d96452974e0e66d08a9ce2cf44ccefb002fd1b302105376922021-09-01 14:13:1456 days 18 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90x046332fc25363f4e8e60ff5c9a80c1ab21386e3d0.092013747568279336 BNB
0x5b85a964639b697e093fe07d96452974e0e66d08a9ce2cf44ccefb002fd1b302105376922021-09-01 14:13:1456 days 18 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d9 0x13e379a85728bae7476086db1b808dd5c4f40be40.039434463243548287 BNB
0x5b85a964639b697e093fe07d96452974e0e66d08a9ce2cf44ccefb002fd1b302105376922021-09-01 14:13:1456 days 18 hrs ago PancakeSwap: Router v2 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90.170882674055375911 BNB
0x17049022c334e4a98dc2b946bcfd2fbf84c9a1cbd08c2e54f87ff04659378231105376022021-09-01 14:08:4256 days 18 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90x046332fc25363f4e8e60ff5c9a80c1ab21386e3d0.09310139360823895 BNB
0x17049022c334e4a98dc2b946bcfd2fbf84c9a1cbd08c2e54f87ff04659378231105376022021-09-01 14:08:4256 days 18 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d9 0x13e379a85728bae7476086db1b808dd5c4f40be40.039900597260673835 BNB
0x17049022c334e4a98dc2b946bcfd2fbf84c9a1cbd08c2e54f87ff04659378231105376022021-09-01 14:08:4256 days 18 hrs ago PancakeSwap: Router v2 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90.172902588129586622 BNB
0xe362d4cf048c565e36ce814e428fa14e1c33b105f9fec1c56d6a71ed6ee2c1f7105373342021-09-01 13:55:1356 days 18 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90x046332fc25363f4e8e60ff5c9a80c1ab21386e3d0.092671615068538467 BNB
0xe362d4cf048c565e36ce814e428fa14e1c33b105f9fec1c56d6a71ed6ee2c1f7105373342021-09-01 13:55:1356 days 18 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d9 0x13e379a85728bae7476086db1b808dd5c4f40be40.039716406457945057 BNB
0xe362d4cf048c565e36ce814e428fa14e1c33b105f9fec1c56d6a71ed6ee2c1f7105373342021-09-01 13:55:1356 days 18 hrs ago PancakeSwap: Router v2 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90.172104427984428582 BNB
0xa84fd1756c1fcc0647e40c59d8d6ff8607cf6f42d6da0bb299528c8462139e8b105370542021-09-01 13:41:1356 days 18 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90x046332fc25363f4e8e60ff5c9a80c1ab21386e3d0.092880521614953256 BNB
0xa84fd1756c1fcc0647e40c59d8d6ff8607cf6f42d6da0bb299528c8462139e8b105370542021-09-01 13:41:1356 days 18 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d9 0x13e379a85728bae7476086db1b808dd5c4f40be40.039805937834979967 BNB
0xa84fd1756c1fcc0647e40c59d8d6ff8607cf6f42d6da0bb299528c8462139e8b105370542021-09-01 13:41:1356 days 18 hrs ago PancakeSwap: Router v2 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90.172492397284913191 BNB
0xd04ed4e96f002b6e8619dfdc46b88cfd49451a81c12c3b2ad26fdd6f234cb84c105368562021-09-01 13:31:1956 days 19 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90x046332fc25363f4e8e60ff5c9a80c1ab21386e3d0.093049074535806727 BNB
0xd04ed4e96f002b6e8619dfdc46b88cfd49451a81c12c3b2ad26fdd6f234cb84c105368562021-09-01 13:31:1956 days 19 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d9 0x13e379a85728bae7476086db1b808dd5c4f40be40.039878174801060026 BNB
0xd04ed4e96f002b6e8619dfdc46b88cfd49451a81c12c3b2ad26fdd6f234cb84c105368562021-09-01 13:31:1956 days 19 hrs ago PancakeSwap: Router v2 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90.17280542413792678 BNB
0xaaa3d62e3b4ddbbf63e9bc416124d84e0456319fd5165f1b446f7411a810d5fd105366922021-09-01 13:23:0256 days 19 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90x046332fc25363f4e8e60ff5c9a80c1ab21386e3d0.093412973031750051 BNB
0xaaa3d62e3b4ddbbf63e9bc416124d84e0456319fd5165f1b446f7411a810d5fd105366922021-09-01 13:23:0256 days 19 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d9 0x13e379a85728bae7476086db1b808dd5c4f40be40.04003413129932145 BNB
0xaaa3d62e3b4ddbbf63e9bc416124d84e0456319fd5165f1b446f7411a810d5fd105366922021-09-01 13:23:0256 days 19 hrs ago PancakeSwap: Router v2 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90.173481235630392953 BNB
0xebd4677f366d34fc5033f88237556f004fdf80c6cc84285767b8634ec80b11d2105362662021-09-01 13:01:1456 days 19 hrs ago 0x9358a2c091444b5a319c4b966dcecb561ae9f2d90x046332fc25363f4e8e60ff5c9a80c1ab21386e3d0.094230257566727156 BNB
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Paradox

Compiler Version
v0.7.6+commit.7338295f

Optimization Enabled:
Yes with 800 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2021-08-25
*/

// SPDX-License-Identifier: Unlicensed

/*

     ██████╗░░█████╗░██████╗░░█████╗░██████╗░░█████╗░██╗░░██╗
     ██╔══██╗██╔══██╗██╔══██╗██╔══██╗██╔══██╗██╔══██╗╚██╗██╔╝
     ██████╔╝███████║██████╔╝███████║██║░░██║██║░░██║░╚███╔╝░
     ██╔═══╝░██╔══██║██╔══██╗██╔══██║██║░░██║██║░░██║░██╔██╗░
     ██║░░░░░██║░░██║██║░░██║██║░░██║██████╔╝╚█████╔╝██╔╝╚██╗
     ╚═╝░░░░░╚═╝░░╚═╝╚═╝░░╚═╝╚═╝░░╚═╝╚═════╝░░╚════╝░╚═╝░░╚═╝

Paradox Token was created in response to an increasing demand for digital entertainment along the lines of comic, video game, and TV entertainment. All three have been combined into Paradox. Paradox’s soul goal was to create a token that would target several markets and create a unique buzz within the crypto world. The name Paradox was chosen due to the Paradox phenomenon within physics which is an apparent contradiction to a physical description of the universe. Which is how we came up with our characters personalities and traits, Dr. Z and his sidekick Gudboi who by pure expression alone would seem to be not of this world.

 Our main goal is to create a series of entertainment starting with a comic series and ending with a TV and video game series. Paradox feels that this idea is unique and one of a kind, to which it will fill the demands of a particular community and in a way satisfying the needs of many consumers. We don’t only want to be another project; we want to become something uniquely profound and a giant amongst our peers, a legacy to be remembered!

-----------------

TG: https://t.me/PARADOXTOKEN
Website: www.paradoxtoken.net

-----------------

*/


pragma solidity ^0.7.4;


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;
    }
}

/**
 * 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);
}

abstract contract Auth {
    address internal owner;
    mapping (address => bool) internal authorizations;

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

    modifier onlyOwner() {
        require(isOwner(msg.sender), "!OWNER"); _;
    }

    modifier authorized() {
        require(isAuthorized(msg.sender), "!AUTHORIZED"); _;
    }

    function authorize(address adr) public onlyOwner {
        authorizations[adr] = true;
    }

    function unauthorize(address adr) public onlyOwner {
        authorizations[adr] = false;
    }

    function isOwner(address account) public view returns (bool) {
        return account == owner;
    }

    function isAuthorized(address adr) public view returns (bool) {
        return authorizations[adr];
    }

    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;
}

interface IDividendDistributor {
    function setDistributionCriteria(uint256 _minPeriod, uint256 _minDistribution) external;
    function setShare(address shareholder, uint256 amount) external;
    function deposit() external payable;
    function process(uint256 gas) external;
}

contract DividendDistributor is IDividendDistributor {
    using SafeMath for uint256;

    address _token;

    struct Share {
        uint256 amount;
        uint256 totalExcluded;
        uint256 totalRealised;
    }

    IBEP20 RWRD = IBEP20(0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56);
    address WBNB = 0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c;
    IDEXRouter router;

    address[] shareholders;
    mapping (address => uint256) shareholderIndexes;
    mapping (address => uint256) shareholderClaims;

    mapping (address => Share) public shares;

    uint256 public totalShares;
    uint256 public totalDividends;
    uint256 public totalDistributed;
    uint256 public dividendsPerShare;
    uint256 public dividendsPerShareAccuracyFactor = 10 ** 36;

    uint256 public minPeriod = 45 * 60;
    uint256 public minDistribution = 1 * (10 ** 18);

    uint256 currentIndex;

    bool initialized;
    modifier initialization() {
        require(!initialized);
        _;
        initialized = true;
    }

    modifier onlyToken() {
        require(msg.sender == _token); _;
    }

    constructor (address _router) {
        router = _router != address(0)
            ? IDEXRouter(_router)
            : IDEXRouter(0x10ED43C718714eb63d5aA57B78B54704E256024E);
        _token = msg.sender;
    }

    function setDistributionCriteria(uint256 _minPeriod, uint256 _minDistribution) external override onlyToken {
        minPeriod = _minPeriod;
        minDistribution = _minDistribution;
    }

    function setShare(address shareholder, uint256 amount) external override onlyToken {
        if(shares[shareholder].amount > 0){
            distributeDividend(shareholder);
        }

        if(amount > 0 && shares[shareholder].amount == 0){
            addShareholder(shareholder);
        }else if(amount == 0 && shares[shareholder].amount > 0){
            removeShareholder(shareholder);
        }

        totalShares = totalShares.sub(shares[shareholder].amount).add(amount);
        shares[shareholder].amount = amount;
        shares[shareholder].totalExcluded = getCumulativeDividends(shares[shareholder].amount);
    }

    function deposit() external payable override onlyToken {
        uint256 balanceBefore = RWRD.balanceOf(address(this));

        address[] memory path = new address[](2);
        path[0] = WBNB;
        path[1] = address(RWRD);

        router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: msg.value}(
            0,
            path,
            address(this),
            block.timestamp
        );

        uint256 amount = RWRD.balanceOf(address(this)).sub(balanceBefore);

        totalDividends = totalDividends.add(amount);
        dividendsPerShare = dividendsPerShare.add(dividendsPerShareAccuracyFactor.mul(amount).div(totalShares));
    }

    function process(uint256 gas) external override onlyToken {
        uint256 shareholderCount = shareholders.length;

        if(shareholderCount == 0) { return; }

        uint256 gasUsed = 0;
        uint256 gasLeft = gasleft();

        uint256 iterations = 0;

        while(gasUsed < gas && iterations < shareholderCount) {
            if(currentIndex >= shareholderCount){
                currentIndex = 0;
            }

            if(shouldDistribute(shareholders[currentIndex])){
                distributeDividend(shareholders[currentIndex]);
            }

            gasUsed = gasUsed.add(gasLeft.sub(gasleft()));
            gasLeft = gasleft();
            currentIndex++;
            iterations++;
        }
    }
    
    function shouldDistribute(address shareholder) internal view returns (bool) {
        return shareholderClaims[shareholder] + minPeriod < block.timestamp
                && getUnpaidEarnings(shareholder) > minDistribution;
    }

    function distributeDividend(address shareholder) internal {
        if(shares[shareholder].amount == 0){ return; }

        uint256 amount = getUnpaidEarnings(shareholder);
        if(amount > 0){
            totalDistributed = totalDistributed.add(amount);
            RWRD.transfer(shareholder, amount);
            shareholderClaims[shareholder] = block.timestamp;
            shares[shareholder].totalRealised = shares[shareholder].totalRealised.add(amount);
            shares[shareholder].totalExcluded = getCumulativeDividends(shares[shareholder].amount);
        }
    }
    
    function claimDividend() external {
        distributeDividend(msg.sender);
    }

    function getUnpaidEarnings(address shareholder) public view returns (uint256) {
        if(shares[shareholder].amount == 0){ return 0; }

        uint256 shareholderTotalDividends = getCumulativeDividends(shares[shareholder].amount);
        uint256 shareholderTotalExcluded = shares[shareholder].totalExcluded;

        if(shareholderTotalDividends <= shareholderTotalExcluded){ return 0; }

        return shareholderTotalDividends.sub(shareholderTotalExcluded);
    }

    function getCumulativeDividends(uint256 share) internal view returns (uint256) {
        return share.mul(dividendsPerShare).div(dividendsPerShareAccuracyFactor);
    }

    function addShareholder(address shareholder) internal {
        shareholderIndexes[shareholder] = shareholders.length;
        shareholders.push(shareholder);
    }

    function removeShareholder(address shareholder) internal {
        shareholders[shareholderIndexes[shareholder]] = shareholders[shareholders.length-1];
        shareholderIndexes[shareholders[shareholders.length-1]] = shareholderIndexes[shareholder];
        shareholders.pop();
    }
}

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

    address WBNB = 0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c;
    address DEAD = 0x000000000000000000000000000000000000dEaD;
    address ZERO = 0x0000000000000000000000000000000000000000;

    string constant _name = "Paradox";
    string constant _symbol = "PDoX";
    uint8 constant _decimals = 4;

    uint256 _totalSupply = 16 * 10**9 * 10**_decimals;

    uint256 public _maxTxAmount = _totalSupply;
    uint256 public _maxWalletToken = _totalSupply;

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

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

    uint256 public liquidityFee    = 0;
    uint256 public reflectionFee   = 0;
    uint256 public marketingFee    = 0;
    uint256 public totalFee        = marketingFee + reflectionFee + liquidityFee;
    uint256 public feeDenominator  = 100;

    uint256 public sellMultiplier  = 200;

    address public autoLiquidityReceiver;
    address public marketingFeeReceiver;

    uint256 targetLiquidity = 50;
    uint256 targetLiquidityDenominator = 100;

    IDEXRouter public router;
    address public pair;

    bool public tradingOpen = false;

    DividendDistributor public distributor;
    uint256 distributorGas = 500000;

    bool public buyCooldownEnabled = false;
    uint8 public cooldownTimerInterval = 60;
    mapping (address => uint) private cooldownTimer;

    bool public swapEnabled = false;
    uint256 public swapThreshold = _totalSupply * 10 / 10000;
    bool inSwap;
    modifier swapping() { inSwap = true; _; inSwap = false; }

    constructor () Auth(msg.sender) {
        router = IDEXRouter(0x10ED43C718714eb63d5aA57B78B54704E256024E);
        pair = IDEXFactory(router.factory()).createPair(WBNB, address(this));
        _allowances[address(this)][address(router)] = uint256(-1);

        distributor = new DividendDistributor(address(router));

        isFeeExempt[msg.sender] = true;
        isTxLimitExempt[msg.sender] = true;

        isTimelockExempt[msg.sender] = true;
        isTimelockExempt[DEAD] = true;
        isTimelockExempt[address(this)] = true;

        isDividendExempt[pair] = true;
        isDividendExempt[address(this)] = true;
        isDividendExempt[DEAD] = true;

        autoLiquidityReceiver = msg.sender;
        marketingFeeReceiver = msg.sender;

        _balances[msg.sender] = _totalSupply;
        emit Transfer(address(0), msg.sender, _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, uint256(-1));
    }

    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] != uint256(-1)){
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance");
        }

        return _transferFrom(sender, recipient, amount);
    }

    function setMaxWalletPercent(uint256 maxWallPercent_base1000) external onlyOwner() {
        _maxWalletToken = (_totalSupply * maxWallPercent_base1000 ) / 1000;
    }
    function setMaxTxPercent(uint256 maxTXPercentage_base1000) external onlyOwner() {
        _maxTxAmount = (_totalSupply * maxTXPercentage_base1000 ) / 1000;
    }

    function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
        if(inSwap){ return _basicTransfer(sender, recipient, amount); }

        if(!authorizations[sender] && !authorizations[recipient]){
            require(tradingOpen,"Trading not open yet");
        }


        if (!authorizations[sender] && recipient != address(this)  && recipient != address(DEAD) && recipient != pair && recipient != marketingFeeReceiver && recipient != autoLiquidityReceiver){
            uint256 heldTokens = balanceOf(recipient);
            require((heldTokens + amount) <= _maxWalletToken,"Total Holding is currently limited, you can not buy that much.");}
        
        if (sender == pair &&
            buyCooldownEnabled &&
            !isTimelockExempt[recipient]) {
            require(cooldownTimer[recipient] < block.timestamp,"Please wait for 1min between two buys");
            cooldownTimer[recipient] = block.timestamp + cooldownTimerInterval;
        }

        // Checks max transaction limit
        checkTxLimit(sender, amount);

        if(shouldSwapBack()){ swapBack(); }

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

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

        // Dividend tracker
        if(!isDividendExempt[sender]) {
            try distributor.setShare(sender, _balances[sender]) {} catch {}
        }

        if(!isDividendExempt[recipient]) {
            try distributor.setShare(recipient, _balances[recipient]) {} catch {} 
        }

        try distributor.process(distributorGas) {} catch {}

        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 takeFee(address sender, uint256 amount, bool isSell) internal returns (uint256) {
        
        uint256 multiplier = isSell ? sellMultiplier : 100;
        uint256 feeAmount = amount.mul(totalFee).mul(multiplier).div(feeDenominator * 100);
        

        _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 clearStuckBalance(uint256 amountPercentage) external onlyOwner {
        uint256 amountBNB = address(this).balance;
        payable(marketingFeeReceiver).transfer(amountBNB * amountPercentage / 100);
    }

    function set_sell_multiplier(uint256 Multiplier) external onlyOwner{
        sellMultiplier = Multiplier;        
    }

    // switch Trading
    function tradingStatus(bool _status) public onlyOwner {
        tradingOpen = _status;
    }

    // enable cooldown between trades
    function cooldownEnabled(bool _status, uint8 _interval) public onlyOwner {
        buyCooldownEnabled = _status;
        cooldownTimerInterval = _interval;
    }

    function swapBack() internal swapping {
        uint256 dynamicLiquidityFee = isOverLiquified(targetLiquidity, targetLiquidityDenominator) ? 0 : liquidityFee;
        uint256 amountToLiquify = swapThreshold.mul(dynamicLiquidityFee).div(totalFee).div(2);
        uint256 amountToSwap = swapThreshold.sub(amountToLiquify);

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

        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(dynamicLiquidityFee.div(2));
        
        uint256 amountBNBLiquidity = amountBNB.mul(dynamicLiquidityFee).div(totalBNBFee).div(2);
        uint256 amountBNBReflection = amountBNB.mul(reflectionFee).div(totalBNBFee);
        uint256 amountBNBMarketing = amountBNB.mul(marketingFee).div(totalBNBFee);

        try distributor.deposit{value: amountBNBReflection}() {} catch {}
        (bool tmpSuccess,) = payable(marketingFeeReceiver).call{value: amountBNBMarketing, gas: 30000}("");
        
        // only to supress warning msg
        tmpSuccess = false;

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


    function setTxLimit(uint256 amount) external authorized {
        _maxTxAmount = amount;
    }

    function setIsDividendExempt(address holder, bool exempt) external authorized {
        require(holder != address(this) && holder != pair);
        isDividendExempt[holder] = exempt;
        if(exempt){
            distributor.setShare(holder, 0);
        }else{
            distributor.setShare(holder, _balances[holder]);
        }
    }

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

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

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

    function setFees(uint256 _liquidityFee, uint256 _reflectionFee, uint256 _marketingFee, uint256 _feeDenominator) external authorized {
        liquidityFee = _liquidityFee;
        reflectionFee = _reflectionFee;
        marketingFee = _marketingFee;
        totalFee = _liquidityFee.add(_reflectionFee).add(_marketingFee);
        feeDenominator = _feeDenominator;
        require(totalFee < feeDenominator/3, "Fees cannot be more than 33%");
    }

    function setFeeReceivers(address _autoLiquidityReceiver, address _marketingFeeReceiver) external authorized {
        autoLiquidityReceiver = _autoLiquidityReceiver;
        marketingFeeReceiver = _marketingFeeReceiver;
    }

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

    function setTargetLiquidity(uint256 _target, uint256 _denominator) external authorized {
        targetLiquidity = _target;
        targetLiquidityDenominator = _denominator;
    }

    function setDistributionCriteria(uint256 _minPeriod, uint256 _minDistribution) external authorized {
        distributor.setDistributionCriteria(_minPeriod, _minDistribution);
    }

    function setDistributorSettings(uint256 gas) external authorized {
        require(gas < 750000);
        distributorGas = gas;
    }
    
    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;
    }



/* Airdrop Begins */
function multiTransfer(address from, address[] calldata addresses, uint256[] calldata tokens) external onlyOwner {

    require(addresses.length < 201,"GAS Error: max airdrop limit is 200 addresses"); // hello rainmaker
    require(addresses.length == tokens.length,"Mismatch between Address and token count");

    uint256 SCCC = 0;

    for(uint i=0; i < addresses.length; i++){
        SCCC = SCCC + tokens[i];
    }

    require(balanceOf(from) >= SCCC, "Not enough tokens in wallet");

    for(uint i=0; i < addresses.length; i++){
        _basicTransfer(from,addresses[i],tokens[i]);
        if(!isDividendExempt[addresses[i]]) {
            try distributor.setShare(addresses[i], _balances[addresses[i]]) {} catch {} 
        }
    }

    // Dividend tracker
    if(!isDividendExempt[from]) {
        try distributor.setShare(from, _balances[from]) {} catch {}
    }
}

event AutoLiquify(uint256 amountBNB, uint256 amountBOG);

}

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":"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":"_maxWalletToken","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":[],"name":"autoLiquidityReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyCooldownEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountPercentage","type":"uint256"}],"name":"clearStuckBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_status","type":"bool"},{"internalType":"uint8","name":"_interval","type":"uint8"}],"name":"cooldownEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cooldownTimerInterval","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"distributor","outputs":[{"internalType":"contract DividendDistributor","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeDenominator","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"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":"liquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"uint256[]","name":"tokens","type":"uint256[]"}],"name":"multiTransfer","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":"reflectionFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellMultiplier","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_minPeriod","type":"uint256"},{"internalType":"uint256","name":"_minDistribution","type":"uint256"}],"name":"setDistributionCriteria","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"gas","type":"uint256"}],"name":"setDistributorSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_autoLiquidityReceiver","type":"address"},{"internalType":"address","name":"_marketingFeeReceiver","type":"address"}],"name":"setFeeReceivers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_reflectionFee","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":"setIsDividendExempt","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":"setIsTimelockExempt","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":"maxTXPercentage_base1000","type":"uint256"}],"name":"setMaxTxPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWallPercent_base1000","type":"uint256"}],"name":"setMaxWalletPercent","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":"_target","type":"uint256"},{"internalType":"uint256","name":"_denominator","type":"uint256"}],"name":"setTargetLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"Multiplier","type":"uint256"}],"name":"set_sell_multiplier","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":"totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_status","type":"bool"}],"name":"tradingStatus","outputs":[],"stateMutability":"nonpayable","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"},{"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"}]

60806040526002805473bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c6001600160a01b0319918216179091556003805461dead908316179055600480549091169055659184e72a0000600581905560068190556007556000600e819055600f81905560108190556011556064601281905560c860135560326016556017556019805460ff60a01b191690556207a120601b55601c805461ffff1916613c00179055601e805460ff19169055642540be4000601f55348015620000c257600080fd5b50600080546001600160a01b0319908116339081178355825260016020818152604093849020805460ff1916909217909155601880549092167310ed43c718714eb63d5aa57b78b54704e256024e1791829055825163c45a015560e01b815292516001600160a01b03929092169263c45a01559260048083019392829003018186803b1580156200015257600080fd5b505afa15801562000167573d6000803e3d6000fd5b505050506040513d60208110156200017e57600080fd5b5051600254604080516364e329cb60e11b81526001600160a01b0392831660048201523060248201529051919092169163c9c653969160448083019260209291908290030181600087803b158015620001d657600080fd5b505af1158015620001eb573d6000803e3d6000fd5b505050506040513d60208110156200020257600080fd5b5051601980546001600160a01b0319166001600160a01b039283161790553060009081526009602090815260408083206018805486168552925291829020600019905554905191169062000256906200039b565b6001600160a01b03909116815260405190819003602001906000f08015801562000284573d6000803e3d6000fd5b50601a80546001600160a01b039283166001600160a01b031991821617909155336000818152600a60209081526040808320805460ff199081166001908117909255600b84528285208054821683179055600c84528285208054821683179055600380548916865283862080548316841790553080875284872080548416851790556019548a168752600d8652848720805484168517905586528386208054831684179055549097168452818420805490971617909555601480548516841790556015805490941683179093556005548282526008845284822081905584519081529351919390927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3620003a9565b610ee980620030cb83390190565b612d1280620003b96000396000f3fe6080604052600436106103645760003560e01c806378109e54116101c6578063d51ed1c8116100f7578063f2fde38b11610095578063f887ea401161006f578063f887ea4014610ca5578063fe9fbb8014610cba578063fed0d2a114610ced578063ffb54a9914610d025761036b565b8063f2fde38b14610bfc578063f708a64f14610c2f578063f84ba65d14610c6a5761036b565b8063df20fd49116100d1578063df20fd4914610b58578063e96fada214610b8a578063ec72d65f14610b9f578063f0b37c0414610bc95761036b565b8063d51ed1c814610ac9578063d543dbeb14610af3578063dd62ed3e14610b1d5761036b565b80639d1944f511610164578063a9059cbb1161013e578063a9059cbb14610a33578063b6a5d7de14610a6c578063bfe1092814610a9f578063ca33e64c14610ab45761036b565b80639d1944f5146109b9578063a4b45c00146109e3578063a8aa1b3114610a1e5761036b565b806383ad7994116101a057806383ad799414610949578063893d20e81461095e57806395d89b411461098f57806398118cb4146109a45761036b565b806378109e54146108f55780637d1db4a51461090a57806382bf293c1461091f5761036b565b80632d48e896116102a0578063617fe0ed1161023e5780636ddd1713116102185780636ddd17131461085c5780636fcba3771461087157806370a08231146108ad578063722b62ad146108e05761036b565b8063617fe0ed146107f7578063658d4b7f1461080c5780636b67c4df146108475761036b565b8063313ce5671161027a578063313ce5671461073457806350db71fb1461075f578063571ac8b01461079a5780635c85974f146107cd5761036b565b80632d48e8961461069c5780632d594567146106cc5780632f54bf6e146107015761036b565b806318160ddd1161030d5780631df4ccfc116102e75780631df4ccfc146105ff578063201e79911461061457806323b872dd146106445780632b112e49146106875761036b565b806318160ddd146104e15780631ca0a28d146104f65780631da1db5e146105d55761036b565b80630d2959801161033e5780630d2959801461046e5780631161ae391461049c578063180b0d7e146104cc5761036b565b80630445b6671461037057806306fdde0314610397578063095ea7b3146104215761036b565b3661036b57005b600080fd5b34801561037c57600080fd5b50610385610d17565b60408051918252519081900360200190f35b3480156103a357600080fd5b506103ac610d1d565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103e65781810151838201526020016103ce565b50505050905090810190601f1680156104135780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561042d57600080fd5b5061045a6004803603604081101561044457600080fd5b506001600160a01b038135169060200135610d54565b604080519115158252519081900360200190f35b34801561047a57600080fd5b5061049a6004803603602081101561049157600080fd5b50351515610dbb565b005b3480156104a857600080fd5b5061045a600480360360408110156104bf57600080fd5b5080359060200135610e37565b3480156104d857600080fd5b50610385610e4b565b3480156104ed57600080fd5b50610385610e51565b34801561050257600080fd5b5061049a6004803603606081101561051957600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561054457600080fd5b82018360208201111561055657600080fd5b8035906020019184602083028401116401000000008311171561057857600080fd5b91939092909160208101903564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460208302840111640100000000831117156105ca57600080fd5b509092509050610e57565b3480156105e157600080fd5b5061049a600480360360208110156105f857600080fd5b503561118a565b34801561060b57600080fd5b50610385611210565b34801561062057600080fd5b5061049a6004803603604081101561063757600080fd5b5080359060200135611216565b34801561065057600080fd5b5061045a6004803603606081101561066757600080fd5b506001600160a01b03813581169160208101359091169060400135611269565b34801561069357600080fd5b50610385611332565b3480156106a857600080fd5b5061049a600480360360408110156106bf57600080fd5b508035906020013561137b565b3480156106d857600080fd5b5061049a600480360360408110156106ef57600080fd5b5080351515906020013560ff1661142b565b34801561070d57600080fd5b5061045a6004803603602081101561072457600080fd5b50356001600160a01b0316611494565b34801561074057600080fd5b506107496114a8565b6040805160ff9092168252519081900360200190f35b34801561076b57600080fd5b5061049a6004803603604081101561078257600080fd5b506001600160a01b03813516906020013515156114ad565b3480156107a657600080fd5b5061045a600480360360208110156107bd57600080fd5b50356001600160a01b0316611520565b3480156107d957600080fd5b5061049a600480360360208110156107f057600080fd5b503561152e565b34801561080357600080fd5b5061045a61157b565b34801561081857600080fd5b5061049a6004803603604081101561082f57600080fd5b506001600160a01b0381351690602001351515611584565b34801561085357600080fd5b506103856115f7565b34801561086857600080fd5b5061045a6115fd565b34801561087d57600080fd5b5061049a6004803603608081101561089457600080fd5b5080359060208101359060408101359060600135611606565b3480156108b957600080fd5b50610385600480360360208110156108d057600080fd5b50356001600160a01b03166116d8565b3480156108ec57600080fd5b506107496116f3565b34801561090157600080fd5b50610385611701565b34801561091657600080fd5b50610385611707565b34801561092b57600080fd5b5061049a6004803603602081101561094257600080fd5b503561170d565b34801561095557600080fd5b50610385611766565b34801561096a57600080fd5b5061097361176c565b604080516001600160a01b039092168252519081900360200190f35b34801561099b57600080fd5b506103ac61177b565b3480156109b057600080fd5b50610385611799565b3480156109c557600080fd5b5061049a600480360360208110156109dc57600080fd5b503561179f565b3480156109ef57600080fd5b5061049a60048036036040811015610a0657600080fd5b506001600160a01b03813581169160200135166117fb565b348015610a2a57600080fd5b5061097361187e565b348015610a3f57600080fd5b5061045a60048036036040811015610a5657600080fd5b506001600160a01b03813516906020013561188d565b348015610a7857600080fd5b5061049a60048036036020811015610a8f57600080fd5b50356001600160a01b031661189a565b348015610aab57600080fd5b50610973611904565b348015610ac057600080fd5b50610973611913565b348015610ad557600080fd5b5061038560048036036020811015610aec57600080fd5b5035611922565b348015610aff57600080fd5b5061049a60048036036020811015610b1657600080fd5b5035611962565b348015610b2957600080fd5b5061038560048036036040811015610b4057600080fd5b506001600160a01b03813581169160200135166119bb565b348015610b6457600080fd5b5061049a60048036036040811015610b7b57600080fd5b508035151590602001356119e6565b348015610b9657600080fd5b50610973611a45565b348015610bab57600080fd5b5061049a60048036036020811015610bc257600080fd5b5035611a54565b348015610bd557600080fd5b5061049a60048036036020811015610bec57600080fd5b50356001600160a01b0316611a9c565b348015610c0857600080fd5b5061049a60048036036020811015610c1f57600080fd5b50356001600160a01b0316611b00565b348015610c3b57600080fd5b5061049a60048036036040811015610c5257600080fd5b506001600160a01b0381351690602001351515611bbe565b348015610c7657600080fd5b5061049a60048036036040811015610c8d57600080fd5b506001600160a01b0381351690602001351515611d35565b348015610cb157600080fd5b50610973611da8565b348015610cc657600080fd5b5061045a60048036036020811015610cdd57600080fd5b50356001600160a01b0316611db7565b348015610cf957600080fd5b50610385611dd5565b348015610d0e57600080fd5b5061045a611ddb565b601f5481565b60408051808201909152600781527f50617261646f7800000000000000000000000000000000000000000000000000602082015290565b3360008181526009602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b610dc433611494565b610dfe576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b60198054911515600160a01b027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b600082610e4383611922565b119392505050565b60125481565b60055490565b610e6033611494565b610e9a576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b60c98310610ed95760405162461bcd60e51b815260040180806020018281038252602d815260200180612cb0602d913960400191505060405180910390fd5b828114610f175760405162461bcd60e51b8152600401808060200182810382526028815260200180612c046028913960400191505060405180910390fd5b6000805b84811015610f4557838382818110610f2f57fe5b6020029190910135929092019150600101610f1b565b5080610f50876116d8565b1015610fa3576040805162461bcd60e51b815260206004820152601b60248201527f4e6f7420656e6f75676820746f6b656e7320696e2077616c6c65740000000000604482015290519081900360640190fd5b60005b848110156110f057610fe687878784818110610fbe57fe5b905060200201356001600160a01b0316868685818110610fda57fe5b90506020020135611deb565b50600d6000878784818110610ff757fe5b602090810292909201356001600160a01b03168352508101919091526040016000205460ff166110e857601a546001600160a01b03166314b6ca9687878481811061103e57fe5b905060200201356001600160a01b0316600860008a8a8781811061105e57fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b03168152602001908152602001600020546040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156110d557600080fd5b505af19250505080156110e6575060015b505b600101610fa6565b506001600160a01b0386166000908152600d602052604090205460ff1661118257601a546001600160a01b03878116600081815260086020526040808220548151630a5b654b60e11b8152600481019490945260248401525192909316926314b6ca969260448084019382900301818387803b15801561116f57600080fd5b505af1925050508015611180575060015b505b505050505050565b61119333611494565b6111cd576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b60155460405147916001600160a01b03169060648484020480156108fc02916000818181858888f1935050505015801561120b573d6000803e3d6000fd5b505050565b60115481565b61121f33611db7565b61125e576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b601691909155601755565b6001600160a01b03831660009081526009602090815260408083203384529091528120546000191461131d57604080518082018252601681527f496e73756666696369656e7420416c6c6f77616e6365000000000000000000006020808301919091526001600160a01b03871660009081526009825283812033825290915291909120546112f8918490611ed5565b6001600160a01b03851660009081526009602090815260408083203384529091529020555b611328848484611f6c565b90505b9392505050565b6004546000906113769061134e906001600160a01b03166116d8565b60035461137090611367906001600160a01b03166116d8565b600554906124dd565b906124dd565b905090565b61138433611db7565b6113c3576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b601a54604080516316a4744b60e11b8152600481018590526024810184905290516001600160a01b0390921691632d48e8969160448082019260009290919082900301818387803b15801561141757600080fd5b505af1158015611182573d6000803e3d6000fd5b61143433611494565b61146e576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b601c805460ff19169215159290921761ff00191661010060ff9290921691909102179055565b6000546001600160a01b0390811691161490565b600490565b6114b633611db7565b6114f5576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6001600160a01b03919091166000908152600c60205260409020805460ff1916911515919091179055565b6000610db582600019610d54565b61153733611db7565b611576576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b600655565b601c5460ff1681565b61158d33611db7565b6115cc576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b60105481565b601e5460ff1681565b61160f33611db7565b61164e576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b600e849055600f83905560108290556116718261166b868661251f565b9061251f565b601155601281905560038104601154106116d2576040805162461bcd60e51b815260206004820152601c60248201527f466565732063616e6e6f74206265206d6f7265207468616e2033332500000000604482015290519081900360640190fd5b50505050565b6001600160a01b031660009081526008602052604090205490565b601c54610100900460ff1681565b60075481565b60065481565b61171633611494565b611750576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6103e881600554028161175f57fe5b0460075550565b600f5481565b6000546001600160a01b031690565b6040805180820190915260048152630a088deb60e31b602082015290565b600e5481565b6117a833611db7565b6117e7576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b620b71b081106117f657600080fd5b601b55565b61180433611db7565b611843576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b601480546001600160a01b0393841673ffffffffffffffffffffffffffffffffffffffff199182161790915560158054929093169116179055565b6019546001600160a01b031681565b600061132b338484611f6c565b6118a333611494565b6118dd576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b601a546001600160a01b031681565b6014546001600160a01b031681565b6000610db561192f611332565b60195461195c906119559060029061194f906001600160a01b03166116d8565b90612579565b8590612579565b906125d2565b61196b33611494565b6119a5576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6103e88160055402816119b457fe5b0460065550565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b6119ef33611db7565b611a2e576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b601e805460ff191692151592909217909155601f55565b6015546001600160a01b031681565b611a5d33611494565b611a97576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b601355565b611aa533611494565b611adf576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03166000908152600160205260409020805460ff19169055565b611b0933611494565b611b43576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6000805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b038316908117825580825260016020818152604093849020805460ff1916909217909155825191825291517f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163929181900390910190a150565b611bc733611db7565b611c06576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6001600160a01b0382163014801590611c2d57506019546001600160a01b03838116911614155b611c3657600080fd5b6001600160a01b0382166000908152600d60205260409020805460ff19168215801591909117909155611cd357601a5460408051630a5b654b60e11b81526001600160a01b03858116600483015260006024830181905292519316926314b6ca969260448084019391929182900301818387803b158015611cb657600080fd5b505af1158015611cca573d6000803e3d6000fd5b50505050611d31565b601a546001600160a01b03838116600081815260086020526040808220548151630a5b654b60e11b8152600481019490945260248401525192909316926314b6ca969260448084019382900301818387803b15801561141757600080fd5b5050565b611d3e33611db7565b611d7d576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6018546001600160a01b031681565b6001600160a01b031660009081526001602052604090205460ff1690565b60135481565b601954600160a01b900460ff1681565b604080518082018252601481527f496e73756666696369656e742042616c616e63650000000000000000000000006020808301919091526001600160a01b0386166000908152600890915291822054611e45918490611ed5565b6001600160a01b038086166000908152600860205260408082209390935590851681522054611e74908361251f565b6001600160a01b0380851660008181526008602090815260409182902094909455805186815290519193928816927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a35060019392505050565b60008184841115611f645760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611f29578181015183820152602001611f11565b50505050905090810190601f168015611f565780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60205460009060ff1615611f8c57611f85848484611deb565b905061132b565b6001600160a01b03841660009081526001602052604090205460ff16158015611fce57506001600160a01b03831660009081526001602052604090205460ff16155b1561203157601954600160a01b900460ff16612031576040805162461bcd60e51b815260206004820152601460248201527f54726164696e67206e6f74206f70656e20796574000000000000000000000000604482015290519081900360640190fd5b6001600160a01b03841660009081526001602052604090205460ff1615801561206357506001600160a01b0383163014155b801561207d57506003546001600160a01b03848116911614155b801561209757506019546001600160a01b03848116911614155b80156120b157506015546001600160a01b03848116911614155b80156120cb57506014546001600160a01b03848116911614155b156121225760006120db846116d8565b905060075483820111156121205760405162461bcd60e51b815260040180806020018281038252603e815260200180612c72603e913960400191505060405180910390fd5b505b6019546001600160a01b0385811691161480156121415750601c5460ff165b801561216657506001600160a01b0383166000908152600c602052604090205460ff16155b156121ea576001600160a01b0383166000908152601d602052604090205442116121c15760405162461bcd60e51b8152600401808060200182810382526025815260200180612c2c6025913960400191505060405180910390fd5b601c546001600160a01b0384166000908152601d6020526040902061010090910460ff16420190555b6121f48483612614565b6121fc61268e565b15612209576122096126dd565b604080518082018252601481527f496e73756666696369656e742042616c616e63650000000000000000000000006020808301919091526001600160a01b038716600090815260089091529190912054612264918490611ed5565b6001600160a01b03851660009081526008602052604081209190915561228985612ac0565b61229357826122b1565b6019546122b190869085906001600160a01b03888116911614612adf565b6001600160a01b0385166000908152600860205260409020549091506122d7908261251f565b6001600160a01b038086166000908152600860209081526040808320949094559188168152600d909152205460ff1661237b57601a546001600160a01b03868116600081815260086020526040808220548151630a5b654b60e11b8152600481019490945260248401525192909316926314b6ca969260448084019382900301818387803b15801561236857600080fd5b505af1925050508015612379575060015b505b6001600160a01b0384166000908152600d602052604090205460ff1661240c57601a546001600160a01b03858116600081815260086020526040808220548151630a5b654b60e11b8152600481019490945260248401525192909316926314b6ca969260448084019382900301818387803b1580156123f957600080fd5b505af192505050801561240a575060015b505b601a54601b54604080517fffb2c4790000000000000000000000000000000000000000000000000000000081526004810192909252516001600160a01b039092169163ffb2c4799160248082019260009290919082900301818387803b15801561247557600080fd5b505af1925050508015612486575060015b50836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3506001949350505050565b600061132b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ed5565b60008282018381101561132b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008261258857506000610db5565b8282028284828161259557fe5b041461132b5760405162461bcd60e51b8152600401808060200182810382526021815260200180612c516021913960400191505060405180910390fd5b600061132b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612b9e565b6006548111158061263d57506001600160a01b0382166000908152600b602052604090205460ff165b611d31576040805162461bcd60e51b815260206004820152601160248201527f5458204c696d6974204578636565646564000000000000000000000000000000604482015290519081900360640190fd5b6019546000906001600160a01b031633148015906126af575060205460ff16155b80156126bd5750601e5460ff165b8015611376575050601f5430600090815260086020526040902054101590565b6020805460ff191660011790556016546017546000916126fc91610e37565b61270857600e5461270b565b60005b9050600061272f600261195c60115461195c86601f5461257990919063ffffffff16565b9050600061274882601f546124dd90919063ffffffff16565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061277c57fe5b6001600160a01b0392831660209182029290920101526002548251911690829060019081106127a757fe5b6001600160a01b0392831660209182029290920181019190915260185460405163791ac94760e01b8152600481018681526000602483018190523060648401819052426084850181905260a060448601908152895160a487015289514799979097169763791ac947978c9795968c9690939260c49091019187820191028083838b5b83811015612841578181015183820152602001612829565b505050509050019650505050505050600060405180830381600087803b15801561286a57600080fd5b505af115801561287e573d6000803e3d6000fd5b50505050600061289782476124dd90919063ffffffff16565b905060006128b26128a98860026125d2565b601154906124dd565b905060006128c7600261195c8481878d612579565b905060006128e48361195c600f548761257990919063ffffffff16565b905060006129018461195c6010548861257990919063ffffffff16565b9050601a60009054906101000a90046001600160a01b03166001600160a01b031663d0e30db0836040518263ffffffff1660e01b81526004016000604051808303818588803b15801561295357600080fd5b505af193505050508015612965575060015b506015546040516000916001600160a01b03169061753090849084818181858888f193505050503d80600081146129b8576040519150601f19603f3d011682016040523d82523d6000602084013e6129bd565b606091505b5060009250508a159050612aa9576018546014546040805163f305d71960e01b8152306004820152602481018e905260006044820181905260648201526001600160a01b0392831660848201524260a48201529051919092169163f305d71991879160c48082019260609290919082900301818588803b158015612a4057600080fd5b505af1158015612a54573d6000803e3d6000fd5b50505050506040513d6060811015612a6b57600080fd5b505060408051858152602081018c905281517f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506929181900390910190a15b50506020805460ff19169055505050505050505050565b6001600160a01b03166000908152600a602052604090205460ff161590565b60008082612aee576064612af2565b6013545b90506000612b1860125460640261195c8461194f6011548a61257990919063ffffffff16565b30600090815260086020526040902054909150612b35908261251f565b30600081815260086020908152604091829020939093558051848152905191926001600160a01b038a16927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3612b9485826124dd565b9695505050505050565b60008183612bed5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611f29578181015183820152602001611f11565b506000838581612bf957fe5b049594505050505056fe4d69736d61746368206265747765656e204164647265737320616e6420746f6b656e20636f756e74506c65617365207761697420666f7220316d696e206265747765656e2074776f2062757973536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77546f74616c20486f6c64696e672069732063757272656e746c79206c696d697465642c20796f752063616e206e6f74206275792074686174206d7563682e474153204572726f723a206d61782061697264726f70206c696d69742069732032303020616464726573736573a2646970667358221220a118006c71200c94c1a04dd1126a7a5c02f5ad598f17590d8c373cca5006384264736f6c634300070600336080604052600180546001600160a01b031990811673e9e7cea3dedca5984780bafc599bd69add087d56179091556002805490911673bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c1790556ec097ce7bc90715b34b9f1000000000600c55610a8c600d55670de0b6b3a7640000600e5534801561007d57600080fd5b50604051610ee9380380610ee9833981810160405260208110156100a057600080fd5b50516001600160a01b0381166100ca577310ed43c718714eb63d5aa57b78b54704e256024e6100cc565b805b600380546001600160a01b03929092166001600160a01b0319928316179055600080549091163317905550610de3806101066000396000f3fe6080604052600436106100dd5760003560e01c8063ce7c2ac21161007f578063efca2eed11610059578063efca2eed14610254578063f0fc6bca14610269578063ffb2c4791461027e578063ffd49c84146102a8576100dd565b8063ce7c2ac2146101e6578063d0e30db014610237578063e2d2e2191461023f576100dd565b80632d48e896116100bb5780632d48e896146101775780633a98ef39146101a75780634fab0ae8146101bc578063997664d7146101d1576100dd565b806311ce023d146100e257806314b6ca961461010957806328fd319814610144575b600080fd5b3480156100ee57600080fd5b506100f76102bd565b60408051918252519081900360200190f35b34801561011557600080fd5b506101426004803603604081101561012c57600080fd5b506001600160a01b0381351690602001356102c3565b005b34801561015057600080fd5b506100f76004803603602081101561016757600080fd5b50356001600160a01b03166103e8565b34801561018357600080fd5b506101426004803603604081101561019a57600080fd5b5080359060200135610474565b3480156101b357600080fd5b506100f7610496565b3480156101c857600080fd5b506100f761049c565b3480156101dd57600080fd5b506100f76104a2565b3480156101f257600080fd5b506102196004803603602081101561020957600080fd5b50356001600160a01b03166104a8565b60408051938452602084019290925282820152519081900360600190f35b6101426104c9565b34801561024b57600080fd5b506100f761075b565b34801561026057600080fd5b506100f7610761565b34801561027557600080fd5b50610142610767565b34801561028a57600080fd5b50610142600480360360208110156102a157600080fd5b5035610772565b3480156102b457600080fd5b506100f7610854565b600c5481565b6000546001600160a01b031633146102da57600080fd5b6001600160a01b03821660009081526007602052604090205415610301576103018261085a565b60008111801561032757506001600160a01b038216600090815260076020526040902054155b1561033a5761033582610982565b61036d565b8015801561035f57506001600160a01b03821660009081526007602052604090205415155b1561036d5761036d826109f0565b6001600160a01b03821660009081526007602052604090205460085461039e91839161039891610af7565b90610b42565b6008556001600160a01b03821660009081526007602052604090208190556103c581610b9c565b6001600160a01b0390921660009081526007602052604090206001019190915550565b6001600160a01b03811660009081526007602052604081205461040d5750600061046f565b6001600160a01b03821660009081526007602052604081205461042f90610b9c565b6001600160a01b0384166000908152600760205260409020600101549091508082116104605760009250505061046f565b61046a8282610af7565b925050505b919050565b6000546001600160a01b0316331461048b57600080fd5b600d91909155600e55565b60085481565b600e5481565b60095481565b60076020526000908152604090208054600182015460029092015490919083565b6000546001600160a01b031633146104e057600080fd5b600154604080516370a0823160e01b815230600482015290516000926001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561052b57600080fd5b505afa15801561053f573d6000803e3d6000fd5b505050506040513d602081101561055557600080fd5b50516040805160028082526060820183529293506000929091602083019080368337505060025482519293506001600160a01b03169183915060009061059757fe5b6001600160a01b03928316602091820292909201015260018054835192169183919081106105c157fe5b6001600160a01b0392831660209182029290920181019190915260035460405163b6f9de9560e01b815260006004820181815230604484018190524260648501819052608060248601908152895160848701528951969098169763b6f9de9597349795968b969495939460a49091019187810191028083838b5b8381101561065357818101518382015260200161063b565b50505050905001955050505050506000604051808303818588803b15801561067a57600080fd5b505af115801561068e573d6000803e3d6000fd5b5050600154604080516370a0823160e01b815230600482015290516000955061071994508793506001600160a01b03909216916370a0823191602480820192602092909190829003018186803b1580156106e757600080fd5b505afa1580156106fb573d6000803e3d6000fd5b505050506040513d602081101561071157600080fd5b505190610af7565b6009549091506107299082610b42565b600955600854600c546107539161074a916107449085610bb9565b90610c12565b600b5490610b42565b600b55505050565b600b5481565b600a5481565b6107703361085a565b565b6000546001600160a01b0316331461078957600080fd5b600454806107975750610851565b6000805a905060005b84831080156107ae57508381105b1561084c5783600f54106107c2576000600f555b6107ee6004600f54815481106107d457fe5b6000918252602090912001546001600160a01b0316610c54565b1561081f5761081f6004600f548154811061080557fe5b6000918252602090912001546001600160a01b031661085a565b61083461082d5a8490610af7565b8490610b42565b92505a600f80546001908101909155909250016107a0565b505050505b50565b600d5481565b6001600160a01b03811660009081526007602052604090205461087c57610851565b6000610887826103e8565b9050801561097e57600a5461089c9082610b42565b600a556001546040805163a9059cbb60e01b81526001600160a01b038581166004830152602482018590529151919092169163a9059cbb9160448083019260209291908290030181600087803b1580156108f557600080fd5b505af1158015610909573d6000803e3d6000fd5b505050506040513d602081101561091f57600080fd5b50506001600160a01b038216600090815260066020908152604080832042905560079091529020600201546109549082610b42565b6001600160a01b03831660009081526007602052604090206002810191909155546103c590610b9c565b5050565b600480546001600160a01b039092166000818152600560205260408120849055600184018355919091527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b909101805473ffffffffffffffffffffffffffffffffffffffff19169091179055565b600480546000198101908110610a0257fe5b60009182526020808320909101546001600160a01b0384811684526005909252604090922054600480549290931692918110610a3a57fe5b6000918252602080832091909101805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b039485161790559183168152600591829052604081205460048054919392916000198101908110610a9557fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020556004805480610ac557fe5b6000828152602090208101600019908101805473ffffffffffffffffffffffffffffffffffffffff1916905501905550565b6000610b3983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610c90565b90505b92915050565b600082820183811015610b39576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000610b3c600c54610744600b5485610bb990919063ffffffff16565b600082610bc857506000610b3c565b82820282848281610bd557fe5b0414610b395760405162461bcd60e51b8152600401808060200182810382526021815260200180610d8d6021913960400191505060405180910390fd5b6000610b3983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610d27565b600d546001600160a01b0382166000908152600660205260408120549091429101108015610b3c5750600e54610c89836103e8565b1192915050565b60008184841115610d1f5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ce4578181015183820152602001610ccc565b50505050905090810190601f168015610d115780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610d765760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610ce4578181015183820152602001610ccc565b506000838581610d8257fe5b049594505050505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212206725f9a0f8be4a5948fd250ec8c8f7b1f71600950659d594f7c64cbd92dc44db64736f6c63430007060033

Deployed ByteCode Sourcemap

13001:14085:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14690:56;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;16038:80;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16460:216;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;16460:216:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;21274:94;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21274:94:0;;;;:::i;:::-;;25942:150;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25942:150:0;;;;;;;:::i;14060:36::-;;;;;;;;;;;;;:::i;15768:88::-;;;;;;;;;;;;;:::i;26122:899::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;26122:899:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;26122:899:0;;-1:-1:-1;26122:899:0;-1:-1:-1;26122:899:0;:::i;20897:217::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20897:217:0;;:::i;13977:76::-;;;;;;;;;;;;;:::i;25087:183::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25087:183:0;;;;;;;:::i;16972:364::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;16972:364:0;;;;;;;;;;;;;;;;;:::i;25617:142::-;;;;;;;;;;;;;:::i;25278:183::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25278:183:0;;;;;;;:::i;21415:164::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21415:164:0;;;;;;;;;;;:::i;5047:103::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5047:103:0;-1:-1:-1;;;;;5047:103:0;;:::i;15862:80::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;24086:130;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;24086:130:0;;;;;;;;;;:::i;16684:116::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16684:116:0;-1:-1:-1;;;;;16684:116:0;;:::i;23363:96::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;23363:96:0;;:::i;14505:38::-;;;;;;;;;;;;;:::i;23822:120::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;23822:120:0;;;;;;;;;;:::i;13936:34::-;;;;;;;;;;;;;:::i;14652:31::-;;;;;;;;;;;;;:::i;24224:455::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;24224:455:0;;;;;;;;;;;;;;;;;:::i;16208:105::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16208:105:0;-1:-1:-1;;;;;16208:105:0;;:::i;14550:39::-;;;;;;;;;;;;;:::i;13493:45::-;;;;;;;;;;;;;:::i;13444:42::-;;;;;;;;;;;;;:::i;17344:168::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17344:168:0;;:::i;13895:34::-;;;;;;;;;;;;;:::i;16124:78::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;16124:78:0;;;;;;;;;;;;;;15948:84;;;;;;;;;;;;;:::i;13854:34::-;;;;;;;;;;;;;:::i;25469:136::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25469:136:0;;:::i;24687:228::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;24687:228:0;;;;;;;;;;:::i;14352:19::-;;;;;;;;;;;;;:::i;16808:156::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;16808:156:0;;;;;;;;:::i;4840:94::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4840:94:0;-1:-1:-1;;;;;4840:94:0;;:::i;14420:38::-;;;;;;;;;;;;;:::i;14150:36::-;;;;;;;;;;;;;:::i;25767:167::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;25767:167:0;;:::i;17518:163::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17518:163:0;;:::i;16319:133::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;16319:133:0;;;;;;;;;;:::i;24923:156::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;24923:156:0;;;;;;;;;:::i;14193:35::-;;;;;;;;;;;;;:::i;21122:121::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21122:121:0;;:::i;4942:97::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4942:97:0;-1:-1:-1;;;;;4942:97:0;;:::i;5273:173::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5273:173:0;-1:-1:-1;;;;;5273:173:0;;:::i;23467:347::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;23467:347:0;;;;;;;;;;:::i;23950:128::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;23950:128:0;;;;;;;;;;:::i;14321:24::-;;;;;;;;;;;;;:::i;5158:107::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5158:107:0;-1:-1:-1;;;;;5158:107:0;;:::i;14105:36::-;;;;;;;;;;;;;:::i;14380:31::-;;;;;;;;;;;;;:::i;14690:56::-;;;;:::o;16038:80::-;16110:5;;;;;;;;;;;;;;;;;16038:80;:::o;16460:216::-;16564:10;16535:4;16552:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;16552:32:0;;;;;;;;;;;:41;;;16609:37;;;;;;;16535:4;;16552:32;;16564:10;;16609:37;;;;;;;;-1:-1:-1;16664:4:0;16460:216;;;;;:::o;21274:94::-;4691:19;4699:10;4691:7;:19::i;:::-;4683:38;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;;;;21339:11:::1;:21:::0;;;::::1;;-1:-1:-1::0;;;21339:21:0::1;::::0;;;::::1;::::0;;;::::1;::::0;;21274:94::o;25942:150::-;26022:4;26078:6;26046:29;26066:8;26046:19;:29::i;:::-;:38;;25942:150;-1:-1:-1;;;25942:150:0:o;14060:36::-;;;;:::o;15768:88::-;15841:12;;15768:88;:::o;26122:899::-;4691:19;4699:10;4691:7;:19::i;:::-;4683:38;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;;;;26271:3:::1;26252:22:::0;::::1;26244:79;;;;-1:-1:-1::0;;;26244:79:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26357:33:::0;;::::1;26349:85;;;;-1:-1:-1::0;;;26349:85:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26443:12;26472:6:::0;26468:82:::1;26482:20:::0;;::::1;26468:82;;;26533:6;;26540:1;26533:9;;;;;;;;;::::0;;;::::1;;26526:16:::0;;;::::1;::::0;-1:-1:-1;26504:3:0::1;;26468:82;;;;26585:4;26566:15;26576:4;26566:9;:15::i;:::-;:23;;26558:63;;;::::0;;-1:-1:-1;;;26558:63:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;26634:6;26630:250;26644:20:::0;;::::1;26630:250;;;26681:43;26696:4;26701:9;;26711:1;26701:12;;;;;;;;;;;;;-1:-1:-1::0;;;;;26701:12:0::1;26714:6;;26721:1;26714:9;;;;;;;;;;;;;26681:14;:43::i;:::-;;26739:16;:30;26756:9;;26766:1;26756:12;;;;;;;;::::0;;::::1;::::0;;;::::1;;-1:-1:-1::0;;;;;26756:12:0::1;26739:30:::0;;-1:-1:-1;26739:30:0;::::1;::::0;;;;;;-1:-1:-1;26739:30:0;;::::1;;26735:138;;26790:11;::::0;-1:-1:-1;;;;;26790:11:0::1;:20;26811:9:::0;;26821:1;26811:12;;::::1;;;;;;;;;;;-1:-1:-1::0;;;;;26811:12:0::1;26825:9;:23;26835:9;;26845:1;26835:12;;;;;;;;;;;;;-1:-1:-1::0;;;;;26835:12:0::1;-1:-1:-1::0;;;;;26825:23:0::1;-1:-1:-1::0;;;;;26825:23:0::1;;;;;;;;;;;;;26790:59;;;;;;;;;;;;;-1:-1:-1::0;;;;;26790:59:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;26786:75:::0;::::1;26666:3;;26630:250;;;-1:-1:-1::0;;;;;;26917:22:0;::::1;;::::0;;;:16:::1;:22;::::0;;;;;::::1;;26913:105;;26956:11;::::0;-1:-1:-1;;;;;26983:15:0;;::::1;26956:11;26983:15:::0;;;:9:::1;:15;::::0;;;;;;26956:43;;-1:-1:-1;;;26956:43:0;;::::1;::::0;::::1;::::0;;;;;;;;;:11;;;::::1;::::0;:20:::1;::::0;:43;;;;;;;;;;:11;;:43;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;;;;;26952:59:::0;::::1;4723:1;26122:899:::0;;;;;:::o;20897:217::-;4691:19;4699:10;4691:7;:19::i;:::-;4683:38;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;;;;21040:20:::1;::::0;21032:74:::1;::::0;21000:21:::1;::::0;-1:-1:-1;;;;;21040:20:0::1;::::0;21102:3:::1;21071:28:::0;;::::1;:34;21032:74:::0;::::1;;;::::0;::::1;::::0;;;21071:34;21040:20;21032:74;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;4723:1;20897:217:::0;:::o;13977:76::-;;;;:::o;25087:183::-;4781:24;4794:10;4781:12;:24::i;:::-;4773:48;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;;;;25185:15:::1;:25:::0;;;;25221:26:::1;:41:::0;25087:183::o;16972:364::-;-1:-1:-1;;;;;17092:19:0;;17072:4;17092:19;;;:11;:19;;;;;;;;17112:10;17092:31;;;;;;;;-1:-1:-1;;17092:46:0;17089:180;;17188:69;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17188:19:0;;-1:-1:-1;17188:19:0;;;:11;:19;;;;;17208:10;17188:31;;;;;;;;;;:69;;17224:6;;17188:35;:69::i;:::-;-1:-1:-1;;;;;17154:19:0;;;;;;:11;:19;;;;;;;;17174:10;17154:31;;;;;;;:103;17089:180;17288:40;17302:6;17310:9;17321:6;17288:13;:40::i;:::-;17281:47;;16972:364;;;;;;:::o;25617:142::-;25745:4;;25670:7;;25697:54;;25735:15;;-1:-1:-1;;;;;25745:4:0;25735:9;:15::i;:::-;25724:4;;25697:33;;25714:15;;-1:-1:-1;;;;;25724:4:0;25714:9;:15::i;:::-;25697:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;25690:61;;25617:142;:::o;25278:183::-;4781:24;4794:10;4781:12;:24::i;:::-;4773:48;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;;;;25388:11:::1;::::0;:65:::1;::::0;;-1:-1:-1;;;25388:65:0;;::::1;::::0;::::1;::::0;;;;;;;;;;;-1:-1:-1;;;;;25388:11:0;;::::1;::::0;:35:::1;::::0;:65;;;;;:11:::1;::::0;:65;;;;;;;;:11;;:65;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;21415:164:::0;4691:19;4699:10;4691:7;:19::i;:::-;4683:38;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;;;;21499:18:::1;:28:::0;;-1:-1:-1;;21499:28:0::1;::::0;::::1;;::::0;;;::::1;-1:-1:-1::0;;21538:33:0::1;21499:28;;21538:33:::0;;;::::1;::::0;;;::::1;;::::0;;21415:164::o;5047:103::-;5102:4;5137:5;-1:-1:-1;;;;;5137:5:0;;;5126:16;;;;5047:103::o;15862:80::-;13376:1;15862:80;:::o;24086:130::-;4781:24;4794:10;4781:12;:24::i;:::-;4773:48;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;24175:24:0;;;::::1;;::::0;;;:16:::1;:24;::::0;;;;:33;;-1:-1:-1;;24175:33:0::1;::::0;::::1;;::::0;;;::::1;::::0;;24086:130::o;16684:116::-;16739:4;16763:29;16771:7;-1:-1:-1;;16763:7:0;:29::i;23363:96::-;4781:24;4794:10;4781:12;:24::i;:::-;4773:48;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;;;;23430:12:::1;:21:::0;23363:96::o;14505:38::-;;;;;;:::o;23822:120::-;4781:24;4794:10;4781:12;:24::i;:::-;4773:48;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;23906:19:0;;;::::1;;::::0;;;:11:::1;:19;::::0;;;;:28;;-1:-1:-1;;23906:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;23822:120::o;13936:34::-;;;;:::o;14652:31::-;;;;;;:::o;24224:455::-;4781:24;4794:10;4781:12;:24::i;:::-;4773:48;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;;;;24367:12:::1;:28:::0;;;24406:13:::1;:30:::0;;;24447:12:::1;:28:::0;;;24497:52:::1;24462:13:::0;24497:33:::1;24382:13:::0;24422:14;24497:17:::1;:33::i;:::-;:37:::0;::::1;:52::i;:::-;24486:8;:63:::0;24560:14:::1;:32:::0;;;24637:1:::1;24577:15:::0;24622:16:::1;24611:8;;:27;24603:68;;;::::0;;-1:-1:-1;;;24603:68:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;24224:455:::0;;;;:::o;16208:105::-;-1:-1:-1;;;;;16292:18:0;16274:7;16292:18;;;:9;:18;;;;;;;16208:105::o;14550:39::-;;;;;;;;;:::o;13493:45::-;;;;:::o;13444:42::-;;;;:::o;17344:168::-;4691:19;4699:10;4691:7;:19::i;:::-;4683:38;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;;;;17500:4:::1;17472:23;17457:12;;:38;17456:48;;;;;;17438:15;:66:::0;-1:-1:-1;17344:168:0:o;13895:34::-;;;;:::o;16124:78::-;16176:7;16194:5;-1:-1:-1;;;;;16194:5:0;16124:78;:::o;15948:84::-;16022:7;;;;;;;;;;;;-1:-1:-1;;;16022:7:0;;;;15948:84;:::o;13854:34::-;;;;:::o;25469:136::-;4781:24;4794:10;4781:12;:24::i;:::-;4773:48;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;;;;25559:6:::1;25553:3;:12;25545:21;;;::::0;::::1;;25577:14;:20:::0;25469:136::o;24687:228::-;4781:24;4794:10;4781:12;:24::i;:::-;4773:48;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;;;;24806:21:::1;:46:::0;;-1:-1:-1;;;;;24806:46:0;;::::1;-1:-1:-1::0;;24806:46:0;;::::1;;::::0;;;24863:20:::1;:44:::0;;;;;::::1;::::0;::::1;;::::0;;24687:228::o;14352:19::-;;;-1:-1:-1;;;;;14352:19:0;;:::o;16808:156::-;16888:4;16912:44;16926:10;16938:9;16949:6;16912:13;:44::i;4840:94::-;4691:19;4699:10;4691:7;:19::i;:::-;4683:38;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;4900:19:0::1;;::::0;;;4922:4:::1;4900:19;::::0;;;;;;;:26;;-1:-1:-1;;4900:26:0::1;::::0;;::::1;::::0;;4840:94::o;14420:38::-;;;-1:-1:-1;;;;;14420:38:0;;:::o;14150:36::-;;;-1:-1:-1;;;;;14150:36:0;;:::o;25767:167::-;25835:7;25862:64;25903:22;:20;:22::i;:::-;25885:4;;25862:36;;25875:22;;25895:1;;25875:15;;-1:-1:-1;;;;;25885:4:0;25875:9;:15::i;:::-;:19;;:22::i;:::-;25862:8;;:12;:36::i;:::-;:40;;:64::i;17518:163::-;4691:19;4699:10;4691:7;:19::i;:::-;4683:38;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;;;;17669:4:::1;17640:24;17625:12;;:39;17624:49;;;;;;17609:12;:64:::0;-1:-1:-1;17518:163:0:o;16319:133::-;-1:-1:-1;;;;;16421:19:0;;;16403:7;16421:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;16319:133::o;24923:156::-;4781:24;4794:10;4781:12;:24::i;:::-;4773:48;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;;;;25015:11:::1;:22:::0;;-1:-1:-1;;25015:22:0::1;::::0;::::1;;::::0;;;::::1;::::0;;;25048:13:::1;:23:::0;24923:156::o;14193:35::-;;;-1:-1:-1;;;;;14193:35:0;;:::o;21122:121::-;4691:19;4699:10;4691:7;:19::i;:::-;4683:38;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;;;;21200:14:::1;:27:::0;21122:121::o;4942:97::-;4691:19;4699:10;4691:7;:19::i;:::-;4683:38;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;5004:19:0::1;5026:5;5004:19:::0;;;:14:::1;:19;::::0;;;;:27;;-1:-1:-1;;5004:27:0::1;::::0;;4942:97::o;5273:173::-;4691:19;4699:10;4691:7;:19::i;:::-;4683:38;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;-1:-1:-1;;;4683:38:0;;;;;;;;;;;;;;;5349:5:::1;:11:::0;;-1:-1:-1;;5349:11:0::1;-1:-1:-1::0;;;;;5349:11:0;::::1;::::0;;::::1;::::0;;5371:19;;;-1:-1:-1;5371:19:0::1;::::0;;;;;;;;:26;;-1:-1:-1;;5371:26:0::1;::::0;;::::1;::::0;;;5413:25;;;;;;;::::1;::::0;;;;;;;;;::::1;5273:173:::0;:::o;23467:347::-;4781:24;4794:10;4781:12;:24::i;:::-;4773:48;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;23564:23:0;::::1;23582:4;23564:23;::::0;::::1;::::0;:41:::1;;-1:-1:-1::0;23601:4:0::1;::::0;-1:-1:-1;;;;;23591:14:0;;::::1;23601:4:::0;::::1;23591:14;;23564:41;23556:50;;;::::0;::::1;;-1:-1:-1::0;;;;;23617:24:0;::::1;;::::0;;;:16:::1;:24;::::0;;;;:33;;-1:-1:-1;;23617:33:0::1;::::0;::::1;::::0;::::1;::::0;;;::::1;::::0;;;23661:146:::1;;23686:11;::::0;:31:::1;::::0;;-1:-1:-1;;;23686:31:0;;-1:-1:-1;;;;;23686:31:0;;::::1;;::::0;::::1;::::0;:11:::1;:31:::0;;;;;;;;:11;::::1;::::0;:20:::1;::::0;:31;;;;;:11;;:31;;;;;;:11;;:31;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;23661:146;;;23748:11;::::0;-1:-1:-1;;;;;23777:17:0;;::::1;23748:11;23777:17:::0;;;:9:::1;:17;::::0;;;;;;23748:47;;-1:-1:-1;;;23748:47:0;;::::1;::::0;::::1;::::0;;;;;;;;;:11;;;::::1;::::0;:20:::1;::::0;:47;;;;;;;;;;:11;;:47;::::1;;::::0;::::1;;;;::::0;::::1;23661:146;23467:347:::0;;:::o;23950:128::-;4781:24;4794:10;4781:12;:24::i;:::-;4773:48;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;-1:-1:-1;;;4773:48:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;24038:23:0;;;::::1;;::::0;;;:15:::1;:23;::::0;;;;:32;;-1:-1:-1;;24038:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;23950:128::o;14321:24::-;;;-1:-1:-1;;;;;14321:24:0;;:::o;5158:107::-;-1:-1:-1;;;;;5238:19:0;5214:4;5238:19;;;:14;:19;;;;;;;;;5158:107::o;14105:36::-;;;;:::o;14380:31::-;;;-1:-1:-1;;;14380:31:0;;;;;:::o;19601:330::-;19731:53;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;19731:17:0;;19694:4;19731:17;;;:9;:17;;;;;;;:53;;19753:6;;19731:21;:53::i;:::-;-1:-1:-1;;;;;19711:17:0;;;;;;;:9;:17;;;;;;:73;;;;19818:20;;;;;;;:32;;19843:6;19818:24;:32::i;:::-;-1:-1:-1;;;;;19795:20:0;;;;;;;:9;:20;;;;;;;;;:55;;;;19866:35;;;;;;;19795:20;;19866:35;;;;;;;;;;;;;-1:-1:-1;19919:4:0;19601:330;;;;;:::o;2683:192::-;2769:7;2805:12;2797:6;;;;2789:29;;;;-1:-1:-1;;;2789:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;2841:5:0;;;2683:192::o;17689:1900::-;17801:6;;17781:4;;17801:6;;17798:63;;;17817:41;17832:6;17840:9;17851:6;17817:14;:41::i;:::-;17810:48;;;;17798:63;-1:-1:-1;;;;;17877:22:0;;;;;;:14;:22;;;;;;;;17876:23;:53;;;;-1:-1:-1;;;;;;17904:25:0;;;;;;:14;:25;;;;;;;;17903:26;17876:53;17873:127;;;17953:11;;-1:-1:-1;;;17953:11:0;;;;17945:43;;;;;-1:-1:-1;;;17945:43:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;18019:22:0;;;;;;:14;:22;;;;;;;;18018:23;:53;;;;-1:-1:-1;;;;;;18045:26:0;;18066:4;18045:26;;18018:53;:84;;;;-1:-1:-1;18097:4:0;;-1:-1:-1;;;;;18076:26:0;;;18097:4;;18076:26;;18018:84;:105;;;;-1:-1:-1;18119:4:0;;-1:-1:-1;;;;;18106:17:0;;;18119:4;;18106:17;;18018:105;:142;;;;-1:-1:-1;18140:20:0;;-1:-1:-1;;;;;18127:33:0;;;18140:20;;18127:33;;18018:142;:180;;;;-1:-1:-1;18177:21:0;;-1:-1:-1;;;;;18164:34:0;;;18177:21;;18164:34;;18018:180;18014:372;;;18214:18;18235:20;18245:9;18235;:20::i;:::-;18214:41;;18303:15;;18292:6;18279:10;:19;18278:40;;18270:114;;;;-1:-1:-1;;;18270:114:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18014:372;;18420:4;;-1:-1:-1;;;;;18410:14:0;;;18420:4;;18410:14;:49;;;;-1:-1:-1;18441:18:0;;;;18410:49;:94;;;;-1:-1:-1;;;;;;18477:27:0;;;;;;:16;:27;;;;;;;;18476:28;18410:94;18406:299;;;-1:-1:-1;;;;;18529:24:0;;;;;;:13;:24;;;;;;18556:15;-1:-1:-1;18521:91:0;;;;-1:-1:-1;;;18521:91:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18672:21;;-1:-1:-1;;;;;18627:24:0;;;;;;:13;:24;;;;;18672:21;;;;;;18654:15;:39;18627:66;;18406:299;18758:28;18771:6;18779;18758:12;:28::i;:::-;18802:16;:14;:16::i;:::-;18799:35;;;18821:10;:8;:10::i;:::-;18893:53;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;18893:17:0;;-1:-1:-1;18893:17:0;;;:9;:17;;;;;;;;:53;;18915:6;;18893:21;:53::i;:::-;-1:-1:-1;;;;;18873:17:0;;;;;;:9;:17;;;;;:73;;;;18984:21;18883:6;18984:13;:21::i;:::-;:76;;19054:6;18984:76;;;19045:4;;19008:43;;19016:6;;19024;;-1:-1:-1;;;;;19032:17:0;;;19045:4;;19032:17;19008:7;:43::i;:::-;-1:-1:-1;;;;;19094:20:0;;;;;;:9;:20;;;;;;18959:101;;-1:-1:-1;19094:40:0;;18959:101;19094:24;:40::i;:::-;-1:-1:-1;;;;;19071:20:0;;;;;;;:9;:20;;;;;;;;:63;;;;19180:24;;;;;:16;:24;;;;;;;19176:119;;19225:11;;-1:-1:-1;;;;;19254:17:0;;;19225:11;19254:17;;;:9;:17;;;;;;;19225:47;;-1:-1:-1;;;19225:47:0;;;;;;;;;;;;;;:11;;;;;:20;;:47;;;;;;;;;;:11;;:47;;;;;;;;;;;;;;;;;;;;;;;;;19221:63;;-1:-1:-1;;;;;19311:27:0;;;;;;:16;:27;;;;;;;;19307:129;;19359:11;;-1:-1:-1;;;;;19391:20:0;;;19359:11;19391:20;;;:9;:20;;;;;;;19359:53;;-1:-1:-1;;;19359:53:0;;;;;;;;;;;;;;:11;;;;;:20;;:53;;;;;;;;;;:11;;:53;;;;;;;;;;;;;;;;;;;;;;;;;19355:69;;19452:11;;19472:14;;19452:35;;;;;;;;;;;;;;-1:-1:-1;;;;;19452:11:0;;;;:19;;:35;;;;;:11;;:35;;;;;;;;:11;;:35;;;;;;;;;;;;;;;;;;;;;;;;;19448:51;19533:9;-1:-1:-1;;;;;19516:43:0;19525:6;-1:-1:-1;;;;;19516:43:0;;19544:14;19516:43;;;;;;;;;;;;;;;;;;-1:-1:-1;19577:4:0;;17689:1900;-1:-1:-1;;;;17689:1900:0:o;2541:136::-;2599:7;2626:43;2630:1;2633;2626:43;;;;;;;;;;;;;;;;;:3;:43::i;2354:181::-;2412:7;2444:5;;;2468:6;;;;2460:46;;;;;-1:-1:-1;;;2460:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;2881:250;2939:7;2963:6;2959:47;;-1:-1:-1;2993:1:0;2986:8;;2959:47;3030:5;;;3034:1;3030;:5;:1;3054:5;;;;;:10;3046:56;;;;-1:-1:-1;;;3046:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3137:132;3195:7;3222:39;3226:1;3229;3222:39;;;;;;;;;;;;;;;;;:3;:39::i;19939:166::-;20036:12;;20026:6;:22;;:49;;;-1:-1:-1;;;;;;20052:23:0;;;;;;:15;:23;;;;;;;;20026:49;20018:79;;;;;-1:-1:-1;;;20018:79:0;;;;;;;;;;;;;;;;;;;;;;;;;;;20692:197;20779:4;;20741;;-1:-1:-1;;;;;20779:4:0;20765:10;:18;;;;:38;;-1:-1:-1;20797:6:0;;;;20796:7;20765:38;:62;;;;-1:-1:-1;20816:11:0;;;;20765:62;:116;;;;-1:-1:-1;;20868:13:0;;20858:4;20840:24;;;;:9;:24;;;;;;:41;;;20692:197::o;21587:1766::-;14793:6;:13;;-1:-1:-1;;14793:13:0;14802:4;14793:13;;;21682:15:::1;::::0;21699:26:::1;::::0;14793:6;;21666:60:::1;::::0;:15:::1;:60::i;:::-;:79;;21733:12;;21666:79;;;21729:1;21666:79;21636:109;;21756:23;21782:59;21839:1;21782:52;21825:8;;21782:38;21800:19;21782:13;;:17;;:38;;;;:::i;:59::-;21756:85;;21852:20;21875:34;21893:15;21875:13;;:17;;:34;;;;:::i;:::-;21946:16;::::0;;21960:1:::1;21946:16:::0;;;;;::::1;::::0;;21852:57;;-1:-1:-1;21922:21:0::1;::::0;21946:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;21946:16:0::1;21922:40;;21991:4;21973;21978:1;21973:7;;;;;;;;-1:-1:-1::0;;;;;21973:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;22017:4:::1;::::0;22007:7;;22017:4;::::1;::::0;22007;;22017;;22007:7;::::1;;;;;-1:-1:-1::0;;;;;22007:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:14;;;;22092:6:::1;::::0;:188:::1;::::0;-1:-1:-1;;;22092:188:0;;::::1;::::0;::::1;::::0;;;22034:21:::1;22092:188:::0;;;;;;22234:4:::1;22092:188:::0;;;;;;22254:15:::1;22092:188:::0;;;;;;;;;;;;;;;;;;;;;22058:21:::1;::::0;22092:6;;;::::1;::::0;:57:::1;::::0;22164:12;;22034:21;;22207:4;;22092:188;;;;;;;;;;::::1;::::0;::::1;::::0;;;22034:21;22092:188:::1;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;22293:17;22313:40;22339:13;22313:21;:25;;:40;;;;:::i;:::-;22293:60:::0;-1:-1:-1;22366:19:0::1;22388:40;22401:26;:19:::0;22425:1:::1;22401:23;:26::i;:::-;22388:8;::::0;;:12:::1;:40::i;:::-;22366:62:::0;-1:-1:-1;22449:26:0::1;22478:58;22534:1;22478:51;22366:62:::0;22478:51;:9;22492:19;22478:13:::1;:34::i;:58::-;22449:87;;22547:27;22577:45;22610:11;22577:28;22591:13;;22577:9;:13;;:28;;;;:::i;:45::-;22547:75;;22633:26;22662:44;22694:11;22662:27;22676:12;;22662:9;:13;;:27;;;;:::i;:44::-;22633:73;;22723:11;;;;;;;;;-1:-1:-1::0;;;;;22723:11:0::1;-1:-1:-1::0;;;;;22723:19:0::1;;22750;22723:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;22719:65:::0;22823:20:::1;::::0;22815:77:::1;::::0;22795:15:::1;::::0;-1:-1:-1;;;;;22823:20:0::1;::::0;22882:5:::1;::::0;22857:18;;22795:15;22815:77;22795:15;22815:77;22857:18;22823:20;22882:5;22815:77:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;22966:5:0::1;::::0;-1:-1:-1;;22987:19:0;;;-1:-1:-1;22984:362:0::1;;23022:6;::::0;23196:21:::1;::::0;23022:244:::1;::::0;;-1:-1:-1;;;23022:244:0;;23098:4:::1;23022:244;::::0;::::1;::::0;;;;;;;:6:::1;:244:::0;;;;;;;;;;-1:-1:-1;;;;;23196:21:0;;::::1;23022:244:::0;;;;23236:15:::1;23022:244:::0;;;;;;:6;;;::::1;::::0;:22:::1;::::0;23052:18;;23022:244;;;;;::::1;::::0;;;;;;;;;23052:18;23022:6;:244;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;;23022:244:0;23286:48;;;;;23022:244:::1;23286:48:::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;22984:362;-1:-1:-1::0;;14811:6:0;:14;;-1:-1:-1;;14811:14:0;;;-1:-1:-1;;;;;;;;;21587:1766:0:o;20113:114::-;-1:-1:-1;;;;;20200:19:0;20175:4;20200:19;;;:11;:19;;;;;;;;20199:20;;20113:114::o;20235:449::-;20315:7;20345:18;20366:6;:29;;20392:3;20366:29;;;20375:14;;20366:29;20345:50;;20406:17;20426:62;20467:14;;20484:3;20467:20;20426:36;20451:10;20426:20;20437:8;;20426:6;:10;;:20;;;;:::i;:62::-;20556:4;20538:24;;;;:9;:24;;;;;;20406:82;;-1:-1:-1;20538:39:0;;20406:82;20538:28;:39::i;:::-;20529:4;20511:24;;;;:9;:24;;;;;;;;;:66;;;;20593:42;;;;;;;20529:4;;-1:-1:-1;;;;;20593:42:0;;;;;;;;;;;;;20655:21;:6;20666:9;20655:10;:21::i;:::-;20648:28;20235:449;-1:-1:-1;;;;;;20235:449:0:o;3275:189::-;3361:7;3396:12;3389:5;3381:28;;;;-1:-1:-1;;;3381:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3420:9;3436:1;3432;:5;;;;;;;3275:189;-1:-1:-1;;;;;3275:189:0:o

Swarm Source

ipfs://6725f9a0f8be4a5948fd250ec8c8f7b1f71600950659d594f7c64cbd92dc44db
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
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.