Contract 0xC7193BBDdC4cA93c88F83cAe073343084E55aBAE

 

Contract Overview

Balance:
146 wei

BNB Value:
Less Than $0.01 (@ $471.69/BNB)

Token:
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x351a0d0d853ca58f8f2fafc3cc33747503f45bec03ed5caac58b1ad8d3b177b7Approve118600002021-10-17 19:59:259 hrs 6 mins ago0x6756adc5dd19969b9824697fe3526e665cd4dda7 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.00088838
0x6b02ceebc855876134b719ee0d8cc22d02e465f0c93d1ca89aa845ec3acda448Approve118281642021-10-16 17:18:171 day 11 hrs ago0x15b174255750c0c349c52cca574359d0a68d54e6 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0x1164d8883e78edabbf1b523748c9fba3fbbc435e1874d21643ff2942f95dc050Approve118256482021-10-16 15:10:321 day 13 hrs ago0xf89b8fb0bb987f7428dd7ca6425d24f12d7d1b1e IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0xa839ae276694464036a352c681149e336cfc82034fbdac49cab39a05c880c302Approve118167912021-10-16 7:45:321 day 21 hrs ago0xa37935e2572f704f2deda7b40d72fd53d3a048b1 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0x4df48bb69c19f6037ee64278c8e93a72ed725690b77d2b209f9e07e9802bab50Approve118121772021-10-16 3:54:502 days 1 hr ago0xf9d326c9da1af3756ca4c5a60318e6e138a77cd0 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0xc8ecaf6e9e40693b68bd7eeec4c9e4681d987f684db21c589ae682d8a514cdfaApprove118076542021-10-16 0:06:322 days 4 hrs ago0x74e9bafae337c97c14392577f5e31f56335ff603 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0xf1bfa430b5321dcbd047a34c1f2eb75bb58083bf309da66d6084bc20c6e4da41Approve117982962021-10-15 16:17:382 days 12 hrs ago0xdb5542915e39868cf6cdfb277f2c623d439279da IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0x7826b43023a1a3efb1b4160c07ea2ebb92a20e3da5c082f08fc45fd7eb970e57Approve117720932021-10-14 18:24:563 days 10 hrs ago0xbc4143641458d69f494d6480ab5c7102b5a436b6 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0x4de6b8ad54f4990b63f9837ea158a2c129b49c5011e78a52ee7681c2bc1db9f6Approve117663242021-10-14 13:35:293 days 15 hrs ago0x4761f453f853b800c1b39a8493b92dfdbc9389b1 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0x64d7229329ee4e508cbb79f54c4f4aba6f35c8e9893452cc016b7051363e8a57Approve117582872021-10-14 6:51:113 days 22 hrs ago0x77f7f0d3b2b15a07b67cc19f991122d9d3201117 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0x16732acbd29f7e8853da1ee0a4e76cedcca18c2d1fb81fe44d7c642610a4d16bSet Swap Back Se...117556622021-10-14 4:39:554 days 25 mins ago0x40720163fd6685b2eaeddb0d0d7199b6982b2e47 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.0001522
0x38ef81256377159d24f9eae80a46cf8fa416552160e03da6f0bc39b902dd8409Approve117522352021-10-14 1:47:234 days 3 hrs ago0x2a9a51f26d9260a1caf3a6a92bfcfb340e568f99 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0x446f0c3a18e44e12fae626166c0bb56cd45fc37ec0c634c83b925eecc7d83112Approve117394122021-10-13 15:01:024 days 14 hrs ago0x5c7465b1405aa852bc599d2f708103d097463d9a IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0xcaf4bafa12cfcd98a09267d69b5119db2663a32572c06e64a4362ecca79cb26cApprove117362132021-10-13 12:17:074 days 16 hrs ago0xf23d9c029c684ac9c2ad8138c429f84c58239bfe IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0x339f30f6256c2852282b42baceaf709df14e3b8d6ca3c51193694fac39b39cb9Approve117357172021-10-13 11:52:194 days 17 hrs ago0xfbdf87bedd13c17425f493c7a8898ab9c2d5c0a0 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0x2e03f36898a98e2d2b9b8ff511be415965625a174cf8b595807abfa455143254Approve117265402021-10-13 3:54:175 days 1 hr ago0x10be62d6cf64c21a0d03fa340533ce8d800bab9f IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0x14c8326f4962e3de9f3cf07d33d5f38b245bfe4d515c50966d10023d3936c473Transfer117243652021-10-13 2:05:115 days 3 hrs ago0x21acd9415de12c6a8c06eb679cd58da50c71ec57 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.003493785
0x03b1a0137f1a0cde128b91da88e965e7ad95d631e8efa6bd24ef6f3328ab303eTransfer117242992021-10-13 2:01:535 days 3 hrs ago0x21acd9415de12c6a8c06eb679cd58da50c71ec57 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.00372851
0x565c743cb4442b86209977737088c6e282540d2636aae7d421add6ead144938bApprove117091512021-10-12 13:19:515 days 15 hrs ago0x07e5d6e2a541e451f9e2b5fef60ef90f7109f795 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0x77dd041ced297fe25f0333758b99a3468233989d2a76b49d4b48c83796721c4dApprove117053742021-10-12 10:09:355 days 18 hrs ago0x07882471821a803ea3b38ad7a9f220e116dc42bc IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0xc80204b9c7420cf858c2dafe5ebae0aa52457e1854a61b1434cb72f138011456Approve117009322021-10-12 6:26:455 days 22 hrs ago0x3416c843d6c305204768a5852e4c969e3649d8bc IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0xd73bf250d957e5475a572a3eb0eed5da50f5bd9fd07e29755acc7bbe1c2c260dApprove117001622021-10-12 5:48:155 days 23 hrs ago0x257b2fc97743a5e53419ab53986186261f866448 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000310933
0x81b00b8ef2577b557898b3d7396d0186903decf4ec52c5b91e108ca75e329992Approve116863072021-10-11 18:00:596 days 11 hrs ago0x5239fbb11eb5cf4a1241f8834efcd0ccbf0109d6 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0x89eaf5cd659fdcab1f1fc48bb9475ab4c94ab5bb3b1616486c26ec997a9210d3Approve116838642021-10-11 15:32:566 days 13 hrs ago0x116e23aeb39c03d8d7482d046cadec1dedd22b69 IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
0x86dd3a259b1ac1cb46d762f934705044546934d3f091a07919e4680d0412e718Approve116729512021-10-11 6:25:396 days 22 hrs ago0x6a427b6e4cc4e996894043ca9a0f465fcf9109fd IN  0xc7193bbddc4ca93c88f83cae073343084e55abae0 BNB0.000222095
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0xd77dedc58b671f53c78d76f6d7a108e792394cba46ca1fd834d98dd4f50eec48118545402021-10-17 15:23:5613 hrs 41 mins ago 0xc7193bbddc4ca93c88f83cae073343084e55abae0x15a72aea381bdd7cbe3b2a89f565e04ad7fc83100.025714243486307169 BNB
0xd77dedc58b671f53c78d76f6d7a108e792394cba46ca1fd834d98dd4f50eec48118545402021-10-17 15:23:5613 hrs 41 mins ago 0xc7193bbddc4ca93c88f83cae073343084e55abae 0x42e9f9347ec3922d62c76d175a8bfb92f18bfdd70.025714243486307169 BNB
0xd77dedc58b671f53c78d76f6d7a108e792394cba46ca1fd834d98dd4f50eec48118545402021-10-17 15:23:5613 hrs 41 mins ago PancakeSwap: Router v2 0xc7193bbddc4ca93c88f83cae073343084e55abae0.051428486972614339 BNB
0x2437843f2dce08532412f2113756663e8683fe5202a0cb8d55bd071ccadbe3b0118447382021-10-17 7:10:1221 hrs 55 mins ago 0xc7193bbddc4ca93c88f83cae073343084e55abae0x15a72aea381bdd7cbe3b2a89f565e04ad7fc83100.025541580874367529 BNB
0x2437843f2dce08532412f2113756663e8683fe5202a0cb8d55bd071ccadbe3b0118447382021-10-17 7:10:1221 hrs 55 mins ago 0xc7193bbddc4ca93c88f83cae073343084e55abae 0x42e9f9347ec3922d62c76d175a8bfb92f18bfdd70.025541580874367529 BNB
0x2437843f2dce08532412f2113756663e8683fe5202a0cb8d55bd071ccadbe3b0118447382021-10-17 7:10:1221 hrs 55 mins ago PancakeSwap: Router v2 0xc7193bbddc4ca93c88f83cae073343084e55abae0.051083161748735058 BNB
0xf8801fc5469c5aa90a5d93f10ec3babdf75f85a2573968ebcdedb2fe9f3b621c118284962021-10-16 17:35:151 day 11 hrs ago 0xc7193bbddc4ca93c88f83cae073343084e55abae0x15a72aea381bdd7cbe3b2a89f565e04ad7fc83100.024440667557865339 BNB
0xf8801fc5469c5aa90a5d93f10ec3babdf75f85a2573968ebcdedb2fe9f3b621c118284962021-10-16 17:35:151 day 11 hrs ago 0xc7193bbddc4ca93c88f83cae073343084e55abae 0x42e9f9347ec3922d62c76d175a8bfb92f18bfdd70.024440667557865339 BNB
0xf8801fc5469c5aa90a5d93f10ec3babdf75f85a2573968ebcdedb2fe9f3b621c118284962021-10-16 17:35:151 day 11 hrs ago PancakeSwap: Router v2 0xc7193bbddc4ca93c88f83cae073343084e55abae0.048881335115730678 BNB
0x89930f6e2911c857ba6b40fb89d0b7953914b8c58abcf1bd7c7f2fd0ce6eb4a8118281812021-10-16 17:19:081 day 11 hrs ago 0xc7193bbddc4ca93c88f83cae073343084e55abae0x15a72aea381bdd7cbe3b2a89f565e04ad7fc83100.02610096894207404 BNB
0x89930f6e2911c857ba6b40fb89d0b7953914b8c58abcf1bd7c7f2fd0ce6eb4a8118281812021-10-16 17:19:081 day 11 hrs ago 0xc7193bbddc4ca93c88f83cae073343084e55abae 0x42e9f9347ec3922d62c76d175a8bfb92f18bfdd70.02610096894207404 BNB
0x89930f6e2911c857ba6b40fb89d0b7953914b8c58abcf1bd7c7f2fd0ce6eb4a8118281812021-10-16 17:19:081 day 11 hrs ago PancakeSwap: Router v2 0xc7193bbddc4ca93c88f83cae073343084e55abae0.052201937884148081 BNB
0x2691fa0ea96da5aabd354ba56cd6e9d29627f113d9996ad37745f66a41d88659118189652021-10-16 9:35:101 day 19 hrs ago 0xc7193bbddc4ca93c88f83cae073343084e55abae0x15a72aea381bdd7cbe3b2a89f565e04ad7fc83100.02577557495234294 BNB
0x2691fa0ea96da5aabd354ba56cd6e9d29627f113d9996ad37745f66a41d88659118189652021-10-16 9:35:101 day 19 hrs ago 0xc7193bbddc4ca93c88f83cae073343084e55abae 0x42e9f9347ec3922d62c76d175a8bfb92f18bfdd70.02577557495234294 BNB
0x2691fa0ea96da5aabd354ba56cd6e9d29627f113d9996ad37745f66a41d88659118189652021-10-16 9:35:101 day 19 hrs ago PancakeSwap: Router v2 0xc7193bbddc4ca93c88f83cae073343084e55abae0.051551149904685881 BNB
0x83138fced8b16235f2b425fdf158419a7d82cfbf7928c7b2ceb602e3c73b222d118185032021-10-16 9:12:031 day 19 hrs ago 0xc7193bbddc4ca93c88f83cae073343084e55abae0x15a72aea381bdd7cbe3b2a89f565e04ad7fc83100.027322299529118553 BNB
0x83138fced8b16235f2b425fdf158419a7d82cfbf7928c7b2ceb602e3c73b222d118185032021-10-16 9:12:031 day 19 hrs ago 0xc7193bbddc4ca93c88f83cae073343084e55abae 0x42e9f9347ec3922d62c76d175a8bfb92f18bfdd70.027322299529118553 BNB
0x83138fced8b16235f2b425fdf158419a7d82cfbf7928c7b2ceb602e3c73b222d118185032021-10-16 9:12:031 day 19 hrs ago PancakeSwap: Router v2 0xc7193bbddc4ca93c88f83cae073343084e55abae0.054644599058237106 BNB
0x2c1ae2a93e6f0634d9bae5dedf89d7a283c0513794e261bf98037d91749353fb118076922021-10-16 0:08:262 days 4 hrs ago 0xc7193bbddc4ca93c88f83cae073343084e55abae0x15a72aea381bdd7cbe3b2a89f565e04ad7fc83100.02957795575312886 BNB
0x2c1ae2a93e6f0634d9bae5dedf89d7a283c0513794e261bf98037d91749353fb118076922021-10-16 0:08:262 days 4 hrs ago 0xc7193bbddc4ca93c88f83cae073343084e55abae 0x42e9f9347ec3922d62c76d175a8bfb92f18bfdd70.02957795575312886 BNB
0x2c1ae2a93e6f0634d9bae5dedf89d7a283c0513794e261bf98037d91749353fb118076922021-10-16 0:08:262 days 4 hrs ago PancakeSwap: Router v2 0xc7193bbddc4ca93c88f83cae073343084e55abae0.05915591150625772 BNB
0x09583676bc87fd27081487adcd02feb10ba1e1ea9ecd143a2ad1d86b71bbc0fb118034992021-10-15 20:37:572 days 8 hrs ago 0xc7193bbddc4ca93c88f83cae073343084e55abae0x15a72aea381bdd7cbe3b2a89f565e04ad7fc83100.030171687993338449 BNB
0x09583676bc87fd27081487adcd02feb10ba1e1ea9ecd143a2ad1d86b71bbc0fb118034992021-10-15 20:37:572 days 8 hrs ago 0xc7193bbddc4ca93c88f83cae073343084e55abae 0x42e9f9347ec3922d62c76d175a8bfb92f18bfdd70.030171687993338449 BNB
0x09583676bc87fd27081487adcd02feb10ba1e1ea9ecd143a2ad1d86b71bbc0fb118034992021-10-15 20:37:572 days 8 hrs ago PancakeSwap: Router v2 0xc7193bbddc4ca93c88f83cae073343084e55abae0.060343375986676899 BNB
0x851f55da543199d2270e6e12fed39cd334233d384b4604a2cbf88ecc294d7045117970532021-10-15 15:15:272 days 13 hrs ago 0xc7193bbddc4ca93c88f83cae073343084e55abae0x15a72aea381bdd7cbe3b2a89f565e04ad7fc83100.030362973636680524 BNB
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SuperChainLink

Compiler Version
v0.7.6+commit.7338295f

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2021-10-04
*/

/**
 *

Name: Super Chain Link
Ticker: sLINK

Earn LINK while holding SLINK! This token deploys the following features:
1. Buy tax = 10%
2. Sell tax = 15%
3. Max wallet increases every 30mins from 0.5% to 3%. 
4. Auto burn of rewards accumulated in contracts to reduce contract dumps and increases price floor.
5. Min amount required to receive rewards = 0.5% supply, 5,000,000.

Tokenomics:
5% rewards
5% marketing

3% marketing farming wallet (will not sell)
3% dev farming wallet (will not sell)

1,000,000,000 supply
max wallet 30,000,000 3%
max trx 10,000,000 1%
Cooldown 5s
0.5% - 5,000,000 required for rewards

TG: https://t.me/SlinkBSC
WEB: https://superchain.link/
TW: https://twitter.com/superlinkbsc


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

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

* 
*/
//SPDX-License-Identifier: MIT
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) {
        // Solidity only automatically asserts when dividing by 0
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }
}

/**
 * BEP20 standard interface.
 */
interface IBEP20 {
    function totalSupply() external view returns (uint256);

    function decimals() external view returns (uint8);

    function symbol() external view returns (string memory);

    function name() external view returns (string memory);

    function getOwner() external view returns (address);

    function balanceOf(address account) external view returns (uint256);

    function transfer(address recipient, uint256 amount)
        external
        returns (bool);

    function allowance(address _owner, address spender)
        external
        view
        returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

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

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

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

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

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

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

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

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

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

    event OwnershipTransferred(address owner);
}

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

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

    function WETH() external pure returns (address);

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

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

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

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

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

interface IDividendDistributor {
    function setDistributionCriteria(
        uint256 _minPeriod,
        uint256 _minDistribution,
        uint256 _minAmtToQualify
    ) 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;
    }

    address WBNB = 0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c;
    //ADA
    IBEP20 REWARDS = IBEP20(0xF8A0BF9cF54Bb92F17374d9e9A321E6a111a51bD);
    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 minutes;
    uint256 public minDistribution = 0.1 * (10**18);
    //5M required to get rewards
    uint256 public minAmtToQualify = 5000000 * (10**4);

    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,
        uint256 _minAmtToQualify
    ) external override onlyToken {
        minPeriod = _minPeriod;
        minDistribution = _minDistribution;
        minAmtToQualify = _minAmtToQualify;
    }

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

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

        totalShares = totalShares.sub(shares[shareholder].amount);

        if (amount >= minAmtToQualify) {
            totalShares = totalShares.add(amount);
            shares[shareholder].amount = amount;
            shares[shareholder].totalExcluded = getCumulativeDividends(
                shares[shareholder].amount
            );
        }
    }

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

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

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

        uint256 amount = REWARDS.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);
            REWARDS.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 SuperChainLink is IBEP20, Auth {
    using SafeMath for uint256;

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

    string constant _name = "Super ChainLink";
    string constant _symbol = "sLINK";
    uint8 constant _decimals = 4;

    uint256 _totalSupply = 1 * 10**9 * (10**_decimals);

    //max tx amount of 1% supply
    uint256 public _maxTxAmount = (_totalSupply * 1) / 100;

    uint256 public _startingMaxWalletToken = (_totalSupply * 5) / 1000;
    uint256 public _maxWalletIncrement = _startingMaxWalletToken;
    uint256 _maxWalletTracker;
    uint256 public _maxWalletTrackerTimer = 900;

    //max wallet holding of 3% supply
    uint256 public _maxWalletToken = (_totalSupply * 3) / 100;

    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 reflectionFeeDef = 5;
    uint256 marketingFeeDef = 5;

    uint256 public reflectionFee = reflectionFeeDef;
    uint256 public marketingFee = marketingFeeDef;
    uint256 public totalFee = reflectionFeeDef.add(marketingFeeDef);
    uint256 public totalSellFee = totalFee.add(5);
    uint256 feeDenominator = 100;

    address public marketingFeeReceiver;

    IDEXRouter public router;
    address public pair;

    uint256 public launchedAt;

    DividendDistributor distributor;
    uint256 distributorGas = 500000;

    // Cooldown & timer functionality
    bool public buyCooldownEnabled = true;
    uint8 public cooldownTimerInterval = 10;
    mapping(address => uint256) private cooldownTimer;

    bool public swapEnabled = true;
    uint256 public swapThreshold = (_totalSupply * 1) / 1000; // 0.1% of supply
    uint256 public maxContractRewardHold = swapThreshold * 5;

    bool inSwap;
    modifier swapping() {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor() Auth(msg.sender) {
        launchedAt = block.timestamp;

        marketingFeeReceiver = 0x15A72aeA381BDd7CBE3B2A89f565E04AD7Fc8310;

        //Testnet: 0xD99D1c33F9fC3444f8101754aBC46c52416550D1
        //Mainet: 0x10ED43C718714eb63d5aA57B78B54704E256024E
        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;
        isFeeExempt[marketingFeeReceiver] = true;
        isFeeExempt[DEAD] = true;

        isTxLimitExempt[msg.sender] = true;
        isTxLimitExempt[marketingFeeReceiver] = true;
        isTxLimitExempt[DEAD] = true;

        // No timelock for these people
        isTimelockExempt[msg.sender] = true;
        isTimelockExempt[marketingFeeReceiver] = true;
        isTimelockExempt[DEAD] = true;
        isTimelockExempt[address(this)] = true;

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

        _balances[msg.sender] = _totalSupply.sub(marketingFee);
        emit Transfer(address(0), msg.sender, _totalSupply.sub(marketingFee));

        _balances[marketingFeeReceiver] = marketingFee;
        emit Transfer(address(0), marketingFeeReceiver, marketingFee);
    }

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

    //settting the maximum permitted wallet holding (percent of total supply)
    function setMaxWalletPercent(
        uint256 maxWallPercent,
        uint256 maxWalletIncrement,
        uint256 maxWalletTrackerTimer,
        uint256 startingMaxWalletToken
    ) external authorized {
        _maxWalletToken = (_totalSupply * maxWallPercent) / 100;
        _maxWalletIncrement = maxWalletIncrement;
        _maxWalletTrackerTimer = maxWalletTrackerTimer;
        _startingMaxWalletToken = startingMaxWalletToken;
    }

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

        //auto update maxwallet from starting maxwallet
        if (
            _maxWalletTracker.add(_maxWalletTrackerTimer) >= block.timestamp &&
            _maxWalletToken > _startingMaxWalletToken
        ) {
            _startingMaxWalletToken = _startingMaxWalletToken.add(
                _maxWalletIncrement
            );
            _maxWalletTracker = _maxWalletTracker.add(_maxWalletTrackerTimer);
        }

        // max wallet code
        if (
            !authorizations[sender] &&
            recipient != address(this) &&
            recipient != address(DEAD) &&
            recipient != pair &&
            recipient != marketingFeeReceiver
        ) {
            uint256 heldTokens = balanceOf(recipient);
            require(
                (heldTokens + amount) <= _startingMaxWalletToken,
                "Total Holding is currently limited, you can not buy that much."
            );
        }

        // cooldown timer, so a bot doesnt do quick trades!
        if (buyCooldownEnabled && !isTimelockExempt[recipient]) {
            require(
                cooldownTimer[recipient] < block.timestamp,
                "Please wait for cooldown"
            );
            cooldownTimer[recipient] = block.timestamp + cooldownTimerInterval;
        }

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

        if (shouldSwapBack()) {
            swapBack();
            //burn extra rewards
            uint256 rewardsBalanceUnsold = balanceOf(address(this));
            if (rewardsBalanceUnsold > maxContractRewardHold) {
                _basicTransfer(
                    address(this),
                    DEAD,
                    (rewardsBalanceUnsold - maxContractRewardHold)
                );
            }
        }

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

        uint256 amountReceived = shouldTakeFee(sender)
            ? takeFee(sender, amount)
            : 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)
        internal
        returns (uint256)
    {
        uint256 feeAmount;
        if (sender == pair) {
            feeAmount = amount.mul(totalFee).div(feeDenominator);
        } else {
            feeAmount = amount.mul(totalSellFee).div(feeDenominator);
        }

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

        return amount.sub(feeAmount);
    }

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

    function clearStuckBalance(uint256 amountPercentage) external authorized {
        uint256 amountBNB = address(this).balance;
        payable(marketingFeeReceiver).transfer(
            (amountBNB * amountPercentage) / 100
        );
    }

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

    function swapBack() internal swapping {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = WBNB;

        uint256 balanceBefore = address(this).balance;

        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            swapThreshold,
            0,
            path,
            address(this),
            block.timestamp
        );

        uint256 amountBNB = address(this).balance.sub(balanceBefore);

        uint256 amountBNBReflection = amountBNB.mul(reflectionFee).div(
            totalFee
        );
        uint256 amountBNBMarketing = amountBNB.mul(marketingFee).div(totalFee);

        try distributor.deposit{value: amountBNBReflection}() {} catch {}
        (bool tmpSuccess, ) = payable(marketingFeeReceiver).call{
            value: amountBNBMarketing,
            gas: 30000
        }("");

        // only to supress warning msg
        tmpSuccess = false;
    }

    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 _reflectionFee,
        uint256 _marketingFee,
        uint256 _totalSellFee,
        uint256 _feeDenominator
    ) external authorized {
        reflectionFee = _reflectionFee;
        marketingFee = _marketingFee;
        totalFee = _reflectionFee.add(_marketingFee);
        feeDenominator = _feeDenominator;
        totalSellFee = _totalSellFee;
        require(totalFee < feeDenominator / 4);
        require(totalSellFee < feeDenominator / 4);
    }

    //anti snipe, only used when trading starts and that's it.
    function destroySnipes(bool kill) external onlyOwner {
        if (kill) {
            reflectionFee = 5;
            marketingFee = 90;
            totalFee = reflectionFee.add(marketingFee);
            feeDenominator = 100;
        } else {
            reflectionFee = reflectionFeeDef;
            marketingFee = marketingFeeDef;
            totalFee = reflectionFeeDef.add(marketingFeeDef);
            feeDenominator = 100;
        }
    }

    function setFeeReceivers(address _marketingFeeReceiver) external onlyOwner {
        marketingFeeReceiver = _marketingFeeReceiver;
    }

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

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

    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 airdrop(
        address from,
        address[] calldata addresses,
        uint256[] calldata tokens
    ) external onlyOwner {
        uint256 SCCC = 0;

        require(
            addresses.length == tokens.length,
            "Mismatch between Address and token count"
        );

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

        require(balanceOf(from) >= SCCC, "Not enough tokens to airdrop");

        for (uint256 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 {}
        }
    }

    function burnContract(uint256 amount) external onlyOwner {
        _basicTransfer(address(this), DEAD, amount);
    }

    function startMaxWalletTrackerTimer() external onlyOwner {
        _maxWalletTracker = block.timestamp;
    }    

    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":"_maxWalletIncrement","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletTrackerTimer","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_startingMaxWalletToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"uint256[]","name":"tokens","type":"uint256[]"}],"name":"airdrop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"approveMax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"authorize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burnContract","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"bool","name":"kill","type":"bool"}],"name":"destroySnipes","outputs":[],"stateMutability":"nonpayable","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":"launchedAt","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":[],"name":"maxContractRewardHold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":[{"internalType":"uint256","name":"_minPeriod","type":"uint256"},{"internalType":"uint256","name":"_minDistribution","type":"uint256"},{"internalType":"uint256","name":"_minAmtToQualify","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":"_marketingFeeReceiver","type":"address"}],"name":"setFeeReceivers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_reflectionFee","type":"uint256"},{"internalType":"uint256","name":"_marketingFee","type":"uint256"},{"internalType":"uint256","name":"_totalSellFee","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":"maxWallPercent","type":"uint256"},{"internalType":"uint256","name":"maxWalletIncrement","type":"uint256"},{"internalType":"uint256","name":"maxWalletTrackerTimer","type":"uint256"},{"internalType":"uint256","name":"startingMaxWalletToken","type":"uint256"}],"name":"setMaxWalletPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"uint256","name":"_maxContractRewardHold","type":"uint256"}],"name":"setSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startMaxWalletTrackerTimer","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":"totalSellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"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"}]

608060405273bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600460ff16600a0a633b9aca0002600555606460016005540281620000ff57fe5b046006556103e86005805402816200011357fe5b04600755600754600855610384600a556064600360055402816200013357fe5b04600b55600560125560056013556012546014556013546015556200016b60135460125462000e0460201b6200313a1790919060201c565b6016556200018b600560165462000e0460201b6200313a1790919060201c565b60175560646018556207a120601e556001601f60006101000a81548160ff021916908315150217905550600a601f60016101000a81548160ff021916908360ff1602179055506001602160006101000a81548160ff0219169083151502179055506103e860016005540281620001fd57fe5b046022556005602254026023553480156200021757600080fd5b5033806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505042601c819055507315a72aea381bdd7cbe3b2a89f565e04ad7fc8310601960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507310ed43c718714eb63d5aa57b78b54704e256024e601a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620003cb57600080fd5b505afa158015620003e0573d6000803e3d6000fd5b505050506040513d6020811015620003f757600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663c9c65396600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16306040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b158015620004b157600080fd5b505af1158015620004c6573d6000803e3d6000fd5b505050506040513d6020811015620004dd57600080fd5b8101908080519060200190929190505050601b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051620006229062000fa3565b808273ffffffffffffffffffffffffffffffffffffffff168152602001915050604051809103906000f0801580156200065f573d6000803e3d6000fd5b50601d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600e6000601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600e6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f6000601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160106000601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160106000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160116000601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160116000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555062000c4660155460055462000e8d60201b620031c21790919060201c565b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef62000cf760155460055462000e8d60201b620031c21790919060201c565b6040518082815260200191505060405180910390a3601554600c6000601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6015546040518082815260200191505060405180910390a362000fb1565b60008082840190508381101562000e83576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600062000ed783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525062000edf60201b60201c565b905092915050565b600083831115829062000f90576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101562000f5457808201518184015260208101905062000f37565b50505050905090810190601f16801562000f825780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b611a3e80620057ce83390190565b61480d8062000fc16000396000f3fe6080604052600436106103395760003560e01c80636fcba377116101ab578063b6a5d7de116100f7578063ef6cf81a11610095578063f708a64f1161006f578063f708a64f146111e2578063f84ba65d1461123f578063f887ea401461129c578063fe9fbb80146112dd57610340565b8063ef6cf81a14611115578063f0b37c0414611140578063f2fde38b1461119157610340565b8063d51ed1c8116100d1578063d51ed1c814610faf578063dd62ed3e14610ffe578063e01bb68814611083578063e96fada2146110d457610340565b8063b6a5d7de14610ee2578063bf56b37114610f33578063d088935814610f5e57610340565b806383ad7994116101645780639d1944f51161013e5780639d1944f514610dca5780639d9241ec14610e05578063a8aa1b3114610e30578063a9059cbb14610e7157610340565b806383ad799414610cce578063893d20e814610cf957806395d89b4114610d3a57610340565b80636fcba37714610b7557806370a0823114610bce578063722b62ad14610c3357806378109e5414610c615780637d1db4a514610c8c57806383ac1fa914610cb757610340565b80632d594567116102855780635c85974f11610223578063658d4b7f116101fd578063658d4b7f14610a9557806365f8a89f14610af25780636b67c4df14610b1d5780636ddd171314610b4857610340565b80635c85974f14610a02578063617fe0ed14610a3d578063640b56d414610a6a57610340565b80634558d3651161025f5780634558d365146108ba5780634d85d1df146108e557806350db71fb1461093e578063571ac8b01461099b57610340565b80632d594567146107db5780632f54bf6e14610825578063313ce5671461088c57610340565b806318160ddd116102f25780631df4ccfc116102cc5780631df4ccfc146106b957806323b872dd146106e45780632b112e49146107755780632ca4fc48146107a057610340565b806318160ddd146106165780631b93a1ee146106415780631da1db5e1461067e57610340565b8063025ff12f146103455780630445b6671461044057806306fdde031461046b578063095ea7b3146104fb5780630ca61cb11461056c5780631161ae39146105bb57610340565b3661034057005b600080fd5b34801561035157600080fd5b5061043e6004803603606081101561036857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156103a557600080fd5b8201836020820111156103b757600080fd5b803590602001918460208302840111640100000000831117156103d957600080fd5b9091929391929390803590602001906401000000008111156103fa57600080fd5b82018360208201111561040c57600080fd5b8035906020019184602083028401116401000000008311171561042e57600080fd5b9091929391929390505050611344565b005b34801561044c57600080fd5b50610455611830565b6040518082815260200191505060405180910390f35b34801561047757600080fd5b50610480611836565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104c05780820151818401526020810190506104a5565b50505050905090810190601f1680156104ed5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561050757600080fd5b506105546004803603604081101561051e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611873565b60405180821515815260200191505060405180910390f35b34801561057857600080fd5b506105b96004803603606081101561058f57600080fd5b81019080803590602001909291908035906020019092919080359060200190929190505050611965565b005b3480156105c757600080fd5b506105fe600480360360408110156105de57600080fd5b810190808035906020019092919080359060200190929190505050611a82565b60405180821515815260200191505060405180910390f35b34801561062257600080fd5b5061062b611a97565b6040518082815260200191505060405180910390f35b34801561064d57600080fd5b5061067c6004803603602081101561066457600080fd5b81019080803515159060200190929190505050611aa1565b005b34801561068a57600080fd5b506106b7600480360360208110156106a157600080fd5b8101908080359060200190929190505050611b97565b005b3480156106c557600080fd5b506106ce611c90565b6040518082815260200191505060405180910390f35b3480156106f057600080fd5b5061075d6004803603606081101561070757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611c96565b60405180821515815260200191505060405180910390f35b34801561078157600080fd5b5061078a611e96565b6040518082815260200191505060405180910390f35b3480156107ac57600080fd5b506107d9600480360360208110156107c357600080fd5b8101908080359060200190929190505050611f18565b005b3480156107e757600080fd5b50610823600480360360408110156107fe57600080fd5b81019080803515159060200190929190803560ff169060200190929190505050611fc4565b005b34801561083157600080fd5b506108746004803603602081101561084857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612078565b60405180821515815260200191505060405180910390f35b34801561089857600080fd5b506108a16120d1565b604051808260ff16815260200191505060405180910390f35b3480156108c657600080fd5b506108cf6120da565b6040518082815260200191505060405180910390f35b3480156108f157600080fd5b5061093c6004803603608081101561090857600080fd5b81019080803590602001909291908035906020019092919080359060200190929190803590602001909291905050506120e0565b005b34801561094a57600080fd5b506109996004803603604081101561096157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080351515906020019092919050505061218b565b005b3480156109a757600080fd5b506109ea600480360360208110156109be57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612261565b60405180821515815260200191505060405180910390f35b348015610a0e57600080fd5b50610a3b60048036036020811015610a2557600080fd5b8101908080359060200190929190505050612294565b005b348015610a4957600080fd5b50610a52612319565b60405180821515815260200191505060405180910390f35b348015610a7657600080fd5b50610a7f61232c565b6040518082815260200191505060405180910390f35b348015610aa157600080fd5b50610af060048036036040811015610ab857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050612332565b005b348015610afe57600080fd5b50610b07612408565b6040518082815260200191505060405180910390f35b348015610b2957600080fd5b50610b3261240e565b6040518082815260200191505060405180910390f35b348015610b5457600080fd5b50610b5d612414565b60405180821515815260200191505060405180910390f35b348015610b8157600080fd5b50610bcc60048036036080811015610b9857600080fd5b8101908080359060200190929190803590602001909291908035906020019092919080359060200190929190505050612427565b005b348015610bda57600080fd5b50610c1d60048036036020811015610bf157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612511565b6040518082815260200191505060405180910390f35b348015610c3f57600080fd5b50610c4861255a565b604051808260ff16815260200191505060405180910390f35b348015610c6d57600080fd5b50610c7661256d565b6040518082815260200191505060405180910390f35b348015610c9857600080fd5b50610ca1612573565b6040518082815260200191505060405180910390f35b348015610cc357600080fd5b50610ccc612579565b005b348015610cda57600080fd5b50610ce36125fd565b6040518082815260200191505060405180910390f35b348015610d0557600080fd5b50610d0e612603565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610d4657600080fd5b50610d4f61262c565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610d8f578082015181840152602081019050610d74565b50505050905090810190601f168015610dbc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610dd657600080fd5b50610e0360048036036020811015610ded57600080fd5b8101908080359060200190929190505050612669565b005b348015610e1157600080fd5b50610e1a6126fd565b6040518082815260200191505060405180910390f35b348015610e3c57600080fd5b50610e45612703565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610e7d57600080fd5b50610eca60048036036040811015610e9457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612729565b60405180821515815260200191505060405180910390f35b348015610eee57600080fd5b50610f3160048036036020811015610f0557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061273e565b005b348015610f3f57600080fd5b50610f48612813565b6040518082815260200191505060405180910390f35b348015610f6a57600080fd5b50610fad60048036036060811015610f8157600080fd5b810190808035151590602001909291908035906020019092919080359060200190929190505050612819565b005b348015610fbb57600080fd5b50610fe860048036036020811015610fd257600080fd5b81019080803590602001909291905050506128c1565b6040518082815260200191505060405180910390f35b34801561100a57600080fd5b5061106d6004803603604081101561102157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612933565b6040518082815260200191505060405180910390f35b34801561108f57600080fd5b506110d2600480360360208110156110a657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506129ba565b005b3480156110e057600080fd5b506110e9612a79565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561112157600080fd5b5061112a612a9f565b6040518082815260200191505060405180910390f35b34801561114c57600080fd5b5061118f6004803603602081101561116357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612aa5565b005b34801561119d57600080fd5b506111e0600480360360208110156111b457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612b7b565b005b3480156111ee57600080fd5b5061123d6004803603604081101561120557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050612cdd565b005b34801561124b57600080fd5b5061129a6004803603604081101561126257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050612fe8565b005b3480156112a857600080fd5b506112b16130be565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156112e957600080fd5b5061132c6004803603602081101561130057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506130e4565b60405180821515815260200191505060405180910390f35b61134d33612078565b6113bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f214f574e4552000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600082829050858590501461141f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260288152602001806147516028913960400191505060405180910390fd5b60005b858590508110156114515783838281811061143957fe5b90506020020135820191508080600101915050611422565b508061145c87612511565b10156114d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4e6f7420656e6f75676820746f6b656e7320746f2061697264726f700000000081525060200191505060405180910390fd5b60005b858590508110156116e857611523878787848181106114ee57fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1686868581811061151757fe5b9050602002013561320c565b506011600087878481811061153457fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166116db57601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166314b6ca968787848181106115e757fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff16600c60008a8a8781811061161457fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1580156116bf57600080fd5b505af19250505080156116d0575060015b6116d9576116da565b5b5b80806001019150506114d3565b50601160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661182857601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166314b6ca9687600c60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b15801561180c57600080fd5b505af192505050801561181d575060015b61182657611827565b5b5b505050505050565b60225481565b60606040518060400160405280600f81526020017f537570657220436861696e4c696e6b0000000000000000000000000000000000815250905090565b600081600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b61196e336130e4565b6119e0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21415554484f52495a454400000000000000000000000000000000000000000081525060200191505060405180910390fd5b601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630ca61cb18484846040518463ffffffff1660e01b8152600401808481526020018381526020018281526020019350505050600060405180830381600087803b158015611a6557600080fd5b505af1158015611a79573d6000803e3d6000fd5b50505050505050565b600082611a8e836128c1565b11905092915050565b6000600554905090565b611aaa33612078565b611b1c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f214f574e4552000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8015611b5c576005601481905550605a601581905550611b4960155460145461313a90919063ffffffff16565b6016819055506064601881905550611b94565b601254601481905550601354601581905550611b8560135460125461313a90919063ffffffff16565b60168190555060646018819055505b50565b611ba0336130e4565b611c12576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21415554484f52495a454400000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000479050601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc606484840281611c5f57fe5b049081150290604051600060405180830381858888f19350505050158015611c8b573d6000803e3d6000fd5b505050565b60165481565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611e8257611e01826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600d60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546133df9092919063ffffffff16565b600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b611e8d84848461349f565b90509392505050565b6000611f13611ec6600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16612511565b611f05611ef4600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16612511565b6005546131c290919063ffffffff16565b6131c290919063ffffffff16565b905090565b611f2133612078565b611f93576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f214f574e4552000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b611fc030600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168361320c565b5050565b611fcd336130e4565b61203f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21415554484f52495a454400000000000000000000000000000000000000000081525060200191505060405180910390fd5b81601f60006101000a81548160ff02191690831515021790555080601f60016101000a81548160ff021916908360ff1602179055505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006004905090565b60235481565b6120e9336130e4565b61215b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21415554484f52495a454400000000000000000000000000000000000000000081525060200191505060405180910390fd5b606484600554028161216957fe5b04600b819055508260088190555081600a819055508060078190555050505050565b612194336130e4565b612206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21415554484f52495a454400000000000000000000000000000000000000000081525060200191505060405180910390fd5b80601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600061228d827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff611873565b9050919050565b61229d336130e4565b61230f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21415554484f52495a454400000000000000000000000000000000000000000081525060200191505060405180910390fd5b8060068190555050565b601f60009054906101000a900460ff1681565b60075481565b61233b336130e4565b6123ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21415554484f52495a454400000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60085481565b60155481565b602160009054906101000a900460ff1681565b612430336130e4565b6124a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21415554484f52495a454400000000000000000000000000000000000000000081525060200191505060405180910390fd5b83601481905550826015819055506124c3838561313a90919063ffffffff16565b60168190555080601881905550816017819055506004601854816124e357fe5b04601654106124f157600080fd5b6004601854816124fd57fe5b046017541061250b57600080fd5b50505050565b6000600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b601f60019054906101000a900460ff1681565b600b5481565b60065481565b61258233612078565b6125f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f214f574e4552000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b42600981905550565b60145481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600581526020017f734c494e4b000000000000000000000000000000000000000000000000000000815250905090565b612672336130e4565b6126e4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21415554484f52495a454400000000000000000000000000000000000000000081525060200191505060405180910390fd5b620b71b081106126f357600080fd5b80601e8190555050565b60175481565b601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061273633848461349f565b905092915050565b61274733612078565b6127b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f214f574e4552000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b60018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b601c5481565b612822336130e4565b612894576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21415554484f52495a454400000000000000000000000000000000000000000081525060200191505060405180910390fd5b82602160006101000a81548160ff0219169083151502179055508160228190555080602381905550505050565b600061292c6128ce611e96565b61291e61290f6002612901601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16612511565b613e1e90919063ffffffff16565b85613e1e90919063ffffffff16565b613ea490919063ffffffff16565b9050919050565b6000600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6129c333612078565b612a35576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f214f574e4552000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b80601960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b612aae33612078565b612b20576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f214f574e4552000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b612b8433612078565b612bf6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f214f574e4552000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc68616381604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b612ce6336130e4565b612d58576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21415554484f52495a454400000000000000000000000000000000000000000081525060200191505060405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614158015612de25750601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b612deb57600080fd5b80601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015612ef957601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166314b6ca968360006040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b158015612edc57600080fd5b505af1158015612ef0573d6000803e3d6000fd5b50505050612fe4565b601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166314b6ca9683600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b158015612fcb57600080fd5b505af1158015612fdf573d6000803e3d6000fd5b505050505b5050565b612ff1336130e4565b613063576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21415554484f52495a454400000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000808284019050838110156131b8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600061320483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506133df565b905092915050565b6000613297826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546133df9092919063ffffffff16565b600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061332c82600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461313a90919063ffffffff16565b600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600083831115829061348c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613451578082015181840152602081019050613436565b50505050905090810190601f16801561347e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b6000602460009054906101000a900460ff16156134c8576134c184848461320c565b9050613e17565b426134e0600a5460095461313a90919063ffffffff16565b101580156134f15750600754600b54115b156135315761350d60085460075461313a90919063ffffffff16565b60078190555061352a600a5460095461313a90919063ffffffff16565b6009819055505b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156135b757503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156136115750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561366b5750601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156136c55750601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156137365760006136d584612511565b90506007548382011115613734576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603e81526020018061479a603e913960400191505060405180910390fd5b505b601f60009054906101000a900460ff16801561379c5750601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156138ae5742602060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410613855576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f506c65617365207761697420666f7220636f6f6c646f776e000000000000000081525060200191505060405180910390fd5b601f60019054906101000a900460ff1660ff164201602060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6138b88483613eee565b6138c0613fbe565b15613919576138cd614095565b60006138d830612511565b90506023548111156139175761391530600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16602354840361320c565b505b505b6139a2826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546133df9092919063ffffffff16565b600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006139f085614468565b6139fa5782613a05565b613a0485846144bf565b5b9050613a5981600c60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461313a90919063ffffffff16565b600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16613bdb57601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166314b6ca9686600c60008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b158015613bbf57600080fd5b505af1925050508015613bd0575060015b613bd957613bda565b5b5b601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16613d1a57601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166314b6ca9685600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b158015613cfe57600080fd5b505af1925050508015613d0f575060015b613d1857613d19565b5b5b601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ffb2c479601e546040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015613d9157600080fd5b505af1925050508015613da2575060015b613dab57613dac565b5b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a360019150505b9392505050565b600080831415613e315760009050613e9e565b6000828402905082848281613e4257fe5b0414613e99576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806147796021913960400191505060405180910390fd5b809150505b92915050565b6000613ee683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061468a565b905092915050565b60065481111580613f485750600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b613fba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f5458204c696d697420457863656564656400000000000000000000000000000081525060200191505060405180910390fd5b5050565b6000601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561402b5750602460009054906101000a900460ff16155b80156140435750602160009054906101000a900460ff165b80156140905750602254600c60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001602460006101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811180156140ca57600080fd5b506040519080825280602002602001820160405280156140f95781602001602082028036833780820191505090505b509050308160008151811061410a57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160018151811061417457fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000479050601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94760225460008530426040518663ffffffff1660e01b815260040180868152602001858152602001806020018473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b8381101561427957808201518184015260208101905061425e565b505050509050019650505050505050600060405180830381600087803b1580156142a257600080fd5b505af11580156142b6573d6000803e3d6000fd5b5050505060006142cf82476131c290919063ffffffff16565b905060006142fc6016546142ee60145485613e1e90919063ffffffff16565b613ea490919063ffffffff16565b9050600061432960165461431b60155486613e1e90919063ffffffff16565b613ea490919063ffffffff16565b9050601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d0e30db0836040518263ffffffff1660e01b81526004016000604051808303818588803b15801561439557600080fd5b505af1935050505080156143a7575060015b6143b0576143b1565b5b6000601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168261753090604051806000019050600060405180830381858888f193505050503d8060008114614438576040519150601f19603f3d011682016040523d82523d6000602084013e61443d565b606091505b50509050600090505050505050506000602460006101000a81548160ff021916908315150217905550565b6000600e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b600080601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156145485761454160185461453360165486613e1e90919063ffffffff16565b613ea490919063ffffffff16565b9050614574565b61457160185461456360175486613e1e90919063ffffffff16565b613ea490919063ffffffff16565b90505b6145c681600c60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461313a90919063ffffffff16565b600c60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a361468181846131c290919063ffffffff16565b91505092915050565b60008083118290614736576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156146fb5780820151818401526020810190506146e0565b50505050905090810190601f1680156147285780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161474257fe5b04905080915050939250505056fe4d69736d61746368206265747765656e204164647265737320616e6420746f6b656e20636f756e74536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77546f74616c20486f6c64696e672069732063757272656e746c79206c696d697465642c20796f752063616e206e6f74206275792074686174206d7563682ea26469706673582212201abcca090fe277ef50297814d7ffe339064bf5f9e7f5c152288c1abeb589095564736f6c63430007060033608060405273bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073f8a0bf9cf54bb92f17374d9e9a321e6a111a51bd600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506ec097ce7bc90715b34b9f1000000000600c55610a8c600d5567016345785d8a0000600e55640ba43b7400600f553480156100e857600080fd5b50604051611a3e380380611a3e8339818101604052602081101561010b57600080fd5b8101908080519060200190929190505050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561016b577310ed43c718714eb63d5aa57b78b54704e256024e61016d565b805b600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611841806101fd6000396000f3fe6080604052600436106100e85760003560e01c8063cc70025c1161008a578063efca2eed11610059578063efca2eed1461037b578063f0fc6bca146103a6578063ffb2c479146103bd578063ffd49c84146103f8576100e8565b8063cc70025c146102a8578063ce7c2ac2146102d3578063d0e30db014610346578063e2d2e21914610350576100e8565b806328fd3198116100c657806328fd3198146101c25780633a98ef39146102275780634fab0ae814610252578063997664d71461027d576100e8565b80630ca61cb1146100ed57806311ce023d1461013c57806314b6ca9614610167575b600080fd5b3480156100f957600080fd5b5061013a6004803603606081101561011057600080fd5b81019080803590602001909291908035906020019092919080359060200190929190505050610423565b005b34801561014857600080fd5b50610151610495565b6040518082815260200191505060405180910390f35b34801561017357600080fd5b506101c06004803603604081101561018a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061049b565b005b3480156101ce57600080fd5b50610211600480360360208110156101e557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610770565b6040518082815260200191505060405180910390f35b34801561023357600080fd5b5061023c61088a565b6040518082815260200191505060405180910390f35b34801561025e57600080fd5b50610267610890565b6040518082815260200191505060405180910390f35b34801561028957600080fd5b50610292610896565b6040518082815260200191505060405180910390f35b3480156102b457600080fd5b506102bd61089c565b6040518082815260200191505060405180910390f35b3480156102df57600080fd5b50610322600480360360208110156102f657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506108a2565b60405180848152602001838152602001828152602001935050505060405180910390f35b61034e6108cc565b005b34801561035c57600080fd5b50610365610d47565b6040518082815260200191505060405180910390f35b34801561038757600080fd5b50610390610d4d565b6040518082815260200191505060405180910390f35b3480156103b257600080fd5b506103bb610d53565b005b3480156103c957600080fd5b506103f6600480360360208110156103e057600080fd5b8101908080359060200190929190505050610d5e565b005b34801561040457600080fd5b5061040d610ed8565b6040518082815260200191505060405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461047b57600080fd5b82600d8190555081600e8190555080600f81905550505050565b600c5481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104f357600080fd5b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015411156105485761054782610ede565b5b600f54811015801561059c57506000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154145b156105af576105aa826111a4565b610612565b600f548110801561060257506000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154115b156106115761061082611253565b5b5b610669600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015460085461142c90919063ffffffff16565b600881905550600f54811061076c5761068d8160085461147690919063ffffffff16565b60088190555080600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550610725600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546114fe565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055505b5050565b600080600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015414156107c55760009050610885565b6000610812600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546114fe565b90506000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154905080821161086d57600092505050610885565b610880818361142c90919063ffffffff16565b925050505b919050565b60085481565b600e5481565b60095481565b600f5481565b60076020528060005260406000206000915090508060000154908060010154908060020154905083565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461092457600080fd5b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156109af57600080fd5b505afa1580156109c3573d6000803e3d6000fd5b505050506040513d60208110156109d957600080fd5b810190808051906020019092919050505090506000600267ffffffffffffffff81118015610a0657600080fd5b50604051908082528060200260200182016040528015610a355781602001602082028036833780820191505090505b509050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600081518110610a6857fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600181518110610ad257fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b6f9de953460008430426040518663ffffffff1660e01b815260040180858152602001806020018473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015610bca578082015181840152602081019050610baf565b50505050905001955050505050506000604051808303818588803b158015610bf157600080fd5b505af1158015610c05573d6000803e3d6000fd5b50505050506000610ce283600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610c9957600080fd5b505afa158015610cad573d6000803e3d6000fd5b505050506040513d6020811015610cc357600080fd5b810190808051906020019092919050505061142c90919063ffffffff16565b9050610cf98160095461147690919063ffffffff16565b600981905550610d3c610d2b600854610d1d84600c5461153090919063ffffffff16565b6115b690919063ffffffff16565b600b5461147690919063ffffffff16565b600b81905550505050565b600b5481565b600a5481565b610d5c33610ede565b565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610db657600080fd5b600060048054905090506000811415610dcf5750610ed5565b6000805a905060005b8483108015610de657508381105b15610ed0578360105410610dfd5760006010819055505b610e3f600460105481548110610e0f57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611600565b15610e8757610e86600460105481548110610e5657fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610ede565b5b610eac610e9d5a8461142c90919063ffffffff16565b8461147690919063ffffffff16565b92505a91506010600081548092919060010191905055508080600101915050610dd8565b505050505b50565b600d5481565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541415610f2e576111a1565b6000610f3982610770565b9050600081111561119f57610f5981600a5461147690919063ffffffff16565b600a81905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610ff257600080fd5b505af1158015611006573d6000803e3d6000fd5b505050506040513d602081101561101c57600080fd5b81019080805190602001909291905050505042600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506110c781600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002015461147690919063ffffffff16565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020181905550611158600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546114fe565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055505b505b50565b600480549050600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506004819080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60046001600480549050038154811061126857fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166004600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054815481106112df57fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546005600060046001600480549050038154811061138057fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060048054806113f457fe5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055905550565b600061146e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611664565b905092915050565b6000808284019050838110156114f4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b6000611529600c5461151b600b548561153090919063ffffffff16565b6115b690919063ffffffff16565b9050919050565b60008083141561154357600090506115b0565b600082840290508284828161155457fe5b04146115ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806117eb6021913960400191505060405180910390fd5b809150505b92915050565b60006115f883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611724565b905092915050565b600042600d54600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540110801561165d5750600e5461165b83610770565b115b9050919050565b6000838311158290611711576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156116d65780820151818401526020810190506116bb565b50505050905090810190601f1680156117035780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b600080831182906117d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561179557808201518184015260208101905061177a565b50505050905090810190601f1680156117c25780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816117dc57fe5b04905080915050939250505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212200334b90334d5b3f1d44504fdecdaf80553428d8a85533dccc5f5f89ff32bca9c64736f6c63430007060033

Deployed ByteCode Sourcemap

16837:16714:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;32252:982;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;18798:56;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;20906:94;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21431:248;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;31216:311;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;32036:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;20588:102;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;30318:457;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;27364:244;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;18200:63;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;22007:418;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;31679:142;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;33242:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;27655:165;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7638:103;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;20698:94;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;18879:56;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;22512:448;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;29583:153;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;21687:116;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;28810:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;18613:37;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;17394:66;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;29296:120;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;17467:60;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18148:45;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18761:30;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;29744:502;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;21108:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18657:39;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;17657:57;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;17331:54;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;33369:111;;;;;;;;;;;;;:::i;:::-;;18094:47;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;21008:92;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;20800:98;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31535:136;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;18270:45;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18434:19;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;21811:188;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;7311:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;18462:25;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;30929:279;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;31829:199;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;21235:188;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;30783:138;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;18359:35;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;17566:43;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7481:97;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8038:173;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;28914:374;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;29424:151;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;18403:24;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;7812:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;32252:982;7009:19;7017:10;7009:7;:19::i;:::-;7001:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;32404:12:::1;32475:6;;:13;;32455:9;;:16;;:33;32433:123;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;32574:9;32569:97;32593:9;;:16;;32589:1;:20;32569:97;;;32645:6;;32652:1;32645:9;;;;;;;;;;;;;32638:4;:16;32631:23;;32611:3;;;;;;;32569:97;;;;32705:4;32686:15;32696:4;32686:9;:15::i;:::-;:23;;32678:64;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;32760:9;32755:317;32779:9;;:16;;32775:1;:20;32755:317;;;32817:45;32832:4;32838:9;;32848:1;32838:12;;;;;;;;;;;;;;;32852:6;;32859:1;32852:9;;;;;;;;;;;;;32817:14;:45::i;:::-;;32882:16;:30;32899:9;;32909:1;32899:12;;;;;;;;;;;;;;;32882:30;;;;;;;;;;;;;;;;;;;;;;;;;32877:184;;32958:11;;;;;;;;;;;:20;;;32979:9;;32989:1;32979:12;;;;;;;;;;;;;;;32993:9;:23;33003:9;;33013:1;33003:12;;;;;;;;;;;;;;;32993:23;;;;;;;;;;;;;;;;32958:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;32933:113;;;;;;32877:184;32797:3;;;;;;;32755:317;;;;33118:16;:22;33135:4;33118:22;;;;;;;;;;;;;;;;;;;;;;;;;33113:114;;33161:11;;;;;;;;;;;:20;;;33182:4;33188:9;:15;33198:4;33188:15;;;;;;;;;;;;;;;;33161:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;33157:59;;;;;;33113:114;7050:1;32252:982:::0;;;;;:::o;18798:56::-;;;;:::o;20906:94::-;20954:13;20987:5;;;;;;;;;;;;;;;;;20980:12;;20906:94;:::o;21431:248::-;21533:4;21590:6;21555:11;:23;21567:10;21555:23;;;;;;;;;;;;;;;:32;21579:7;21555:32;;;;;;;;;;;;;;;:41;;;;21633:7;21612:37;;21621:10;21612:37;;;21642:6;21612:37;;;;;;;;;;;;;;;;;;21667:4;21660:11;;21431:248;;;;:::o;31216:311::-;7187:24;7200:10;7187:12;:24::i;:::-;7179:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31386:11:::1;;;;;;;;;;;:35;;;31436:10;31461:16;31492;31386:133;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;31216:311:::0;;;:::o;32036:182::-;32143:4;32204:6;32172:29;32192:8;32172:19;:29::i;:::-;:38;32165:45;;32036:182;;;;:::o;20588:102::-;20643:7;20670:12;;20663:19;;20588:102;:::o;30318:457::-;7009:19;7017:10;7009:7;:19::i;:::-;7001:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30386:4:::1;30382:386;;;30423:1;30407:13;:17;;;;30454:2;30439:12;:17;;;;30482:31;30500:12;;30482:13;;:17;;:31;;;;:::i;:::-;30471:8;:42;;;;30545:3;30528:14;:20;;;;30382:386;;;30597:16;;30581:13;:32;;;;30643:15;;30628:12;:30;;;;30684:37;30705:15;;30684:16;;:20;;:37;;;;:::i;:::-;30673:8;:48;;;;30753:3;30736:14;:20;;;;30382:386;30318:457:::0;:::o;27364:244::-;7187:24;7200:10;7187:12;:24::i;:::-;7179:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27448:17:::1;27468:21;27448:41;;27508:20;;;;;;;;;;;27500:38;;:100;27586:3;27566:16;27554:9;:28;27553:36;;;;;;27500:100;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;7238:1;27364:244:::0;:::o;18200:63::-;;;;:::o;22007:418::-;22141:4;22205:2;22162:11;:19;22174:6;22162:19;;;;;;;;;;;;;;;:31;22182:10;22162:31;;;;;;;;;;;;;;;;:46;22158:200;;22259:87;22313:6;22259:87;;;;;;;;;;;;;;;;;:11;:19;22271:6;22259:19;;;;;;;;;;;;;;;:31;22279:10;22259:31;;;;;;;;;;;;;;;;:53;;:87;;;;;:::i;:::-;22225:11;:19;22237:6;22225:19;;;;;;;;;;;;;;;:31;22245:10;22225:31;;;;;;;;;;;;;;;:121;;;;22158:200;22377:40;22391:6;22399:9;22410:6;22377:13;:40::i;:::-;22370:47;;22007:418;;;;;:::o;31679:142::-;31732:7;31759:54;31797:15;31807:4;;;;;;;;;;;31797:9;:15::i;:::-;31759:33;31776:15;31786:4;;;;;;;;;;;31776:9;:15::i;:::-;31759:12;;:16;;:33;;;;:::i;:::-;:37;;:54;;;;:::i;:::-;31752:61;;31679:142;:::o;33242:119::-;7009:19;7017:10;7009:7;:19::i;:::-;7001:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;33310:43:::1;33333:4;33340;;;;;;;;;;;33346:6;33310:14;:43::i;:::-;;33242:119:::0;:::o;27655:165::-;7187:24;7200:10;7187:12;:24::i;:::-;7179:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27761:7:::1;27740:18;;:28;;;;;;;;;;;;;;;;;;27803:9;27779:21;;:33;;;;;;;;;;;;;;;;;;27655:165:::0;;:::o;7638:103::-;7693:4;7728:5;;;;;;;;;;;7717:16;;:7;:16;;;7710:23;;7638:103;;;:::o;20698:94::-;20750:5;17228:1;20768:16;;20698:94;:::o;18879:56::-;;;;:::o;22512:448::-;7187:24;7200:10;7187:12;:24::i;:::-;7179:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22782:3:::1;22764:14;22749:12;;:29;22748:37;;;;;;22730:15;:55;;;;22818:18;22796:19;:40;;;;22872:21;22847:22;:46;;;;22930:22;22904:23;:48;;;;22512:448:::0;;;;:::o;29583:153::-;7187:24;7200:10;7187:12;:24::i;:::-;7179:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29722:6:::1;29695:16;:24;29712:6;29695:24;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;29583:153:::0;;:::o;21687:116::-;21742:4;21766:29;21774:7;21791:2;21766:7;:29::i;:::-;21759:36;;21687:116;;;:::o;28810:96::-;7187:24;7200:10;7187:12;:24::i;:::-;7179:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28892:6:::1;28877:12;:21;;;;28810:96:::0;:::o;18613:37::-;;;;;;;;;;;;;:::o;17394:66::-;;;;:::o;29296:120::-;7187:24;7200:10;7187:12;:24::i;:::-;7179:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29402:6:::1;29380:11;:19;29392:6;29380:19;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;;;;;;;29296:120:::0;;:::o;17467:60::-;;;;:::o;18148:45::-;;;;:::o;18761:30::-;;;;;;;;;;;;;:::o;29744:502::-;7187:24;7200:10;7187:12;:24::i;:::-;7179:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29946:14:::1;29930:13;:30;;;;29986:13;29971:12;:28;;;;30021:33;30040:13;30021:14;:18;;:33;;;;:::i;:::-;30010:8;:44;;;;30082:15;30065:14;:32;;;;30123:13;30108:12;:28;;;;30183:1;30166:14;;:18;;;;;;30155:8;;:29;30147:38;;;::::0;::::1;;30236:1;30219:14;;:18;;;;;;30204:12;;:33;30196:42;;;::::0;::::1;;29744:502:::0;;;;:::o;21108:119::-;21174:7;21201:9;:18;21211:7;21201:18;;;;;;;;;;;;;;;;21194:25;;21108:119;;;:::o;18657:39::-;;;;;;;;;;;;;:::o;17657:57::-;;;;:::o;17331:54::-;;;;:::o;33369:111::-;7009:19;7017:10;7009:7;:19::i;:::-;7001:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;33457:15:::1;33437:17;:35;;;;33369:111::o:0;18094:47::-;;;;:::o;21008:92::-;21060:7;21087:5;;;;;;;;;;;21080:12;;21008:92;:::o;20800:98::-;20850:13;20883:7;;;;;;;;;;;;;;;;;20876:14;;20800:98;:::o;31535:136::-;7187:24;7200:10;7187:12;:24::i;:::-;7179:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31625:6:::1;31619:3;:12;31611:21;;;::::0;::::1;;31660:3;31643:14;:20;;;;31535:136:::0;:::o;18270:45::-;;;;:::o;18434:19::-;;;;;;;;;;;;;:::o;21811:188::-;21918:4;21947:44;21961:10;21973:9;21984:6;21947:13;:44::i;:::-;21940:51;;21811:188;;;;:::o;7311:94::-;7009:19;7017:10;7009:7;:19::i;:::-;7001:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7393:4:::1;7371:14:::0;:19:::1;7386:3;7371:19;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;7311:94:::0;:::o;18462:25::-;;;;:::o;30929:279::-;7187:24;7200:10;7187:12;:24::i;:::-;7179:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31101:8:::1;31087:11;;:22;;;;;;;;;;;;;;;;;;31136:7;31120:13;:23;;;;31178:22;31154:21;:46;;;;30929:279:::0;;;:::o;31829:199::-;31924:7;31956:64;31997:22;:20;:22::i;:::-;31956:36;31969:22;31989:1;31969:15;31979:4;;;;;;;;;;;31969:9;:15::i;:::-;:19;;:22;;;;:::i;:::-;31956:8;:12;;:36;;;;:::i;:::-;:40;;:64;;;;:::i;:::-;31949:71;;31829:199;;;:::o;21235:188::-;21355:7;21387:11;:19;21399:6;21387:19;;;;;;;;;;;;;;;:28;21407:7;21387:28;;;;;;;;;;;;;;;;21380:35;;21235:188;;;;:::o;30783:138::-;7009:19;7017:10;7009:7;:19::i;:::-;7001:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30892:21:::1;30869:20;;:44;;;;;;;;;;;;;;;;;;30783:138:::0;:::o;18359:35::-;;;;;;;;;;;;;:::o;17566:43::-;;;;:::o;7481:97::-;7009:19;7017:10;7009:7;:19::i;:::-;7001:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7565:5:::1;7543:14;:19;7558:3;7543:19;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;7481:97:::0;:::o;8038:173::-;7009:19;7017:10;7009:7;:19::i;:::-;7001:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8122:3:::1;8114:5;::::0;:11:::1;;;;;;;;;;;;;;;;;;8158:4;8136:14:::0;:19:::1;8151:3;8136:19;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;8178:25;8199:3;8178:25;;;;;;;;;;;;;;;;;;;;8038:173:::0;:::o;28914:374::-;7187:24;7200:10;7187:12;:24::i;:::-;7179:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29052:4:::1;29034:23;;:6;:23;;;;:41;;;;;29071:4;;;;;;;;;;;29061:14;;:6;:14;;;;29034:41;29026:50;;;::::0;::::1;;29114:6;29087:16;:24;29104:6;29087:24;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;29135:6;29131:150;;;29158:11;;;;;;;;;;;:20;;;29179:6;29187:1;29158:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;29131:150;;;29222:11;;;;;;;;;;;:20;;;29243:6;29251:9;:17;29261:6;29251:17;;;;;;;;;;;;;;;;29222:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;29131:150;28914:374:::0;;:::o;29424:151::-;7187:24;7200:10;7187:12;:24::i;:::-;7179:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29561:6:::1;29535:15;:23;29551:6;29535:23;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;;;;;;;29424:151:::0;;:::o;18403:24::-;;;;;;;;;;;;;:::o;7812:107::-;7868:4;7892:14;:19;7907:3;7892:19;;;;;;;;;;;;;;;;;;;;;;;;;7885:26;;7812:107;;;:::o;4140:181::-;4198:7;4218:9;4234:1;4230;:5;4218:17;;4259:1;4254;:6;;4246:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4312:1;4305:8;;;4140:181;;;;:::o;4329:136::-;4387:7;4414:43;4418:1;4421;4414:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;4407:50;;4329:136;;;;:::o;25873:401::-;26000:4;26037:90;26073:6;26037:90;;;;;;;;;;;;;;;;;:9;:17;26047:6;26037:17;;;;;;;;;;;;;;;;:21;;:90;;;;;:::i;:::-;26017:9;:17;26027:6;26017:17;;;;;;;;;;;;;;;:110;;;;26161:32;26186:6;26161:9;:20;26171:9;26161:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;26138:9;:20;26148:9;26138:20;;;;;;;;;;;;;;;:55;;;;26226:9;26209:35;;26218:6;26209:35;;;26237:6;26209:35;;;;;;;;;;;;;;;;;;26262:4;26255:11;;25873:401;;;;;:::o;4473:226::-;4593:7;4626:1;4621;:6;;4629:12;4613:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4653:9;4669:1;4665;:5;4653:17;;4690:1;4683:8;;;4473:226;;;;;:::o;22968:2897::-;23094:4;23115:6;;;;;;;;;;;23111:87;;;23145:41;23160:6;23168:9;23179:6;23145:14;:41::i;:::-;23138:48;;;;23111:87;23334:15;23285:45;23307:22;;23285:17;;:21;;:45;;;;:::i;:::-;:64;;:122;;;;;23384:23;;23366:15;;:41;23285:122;23267:365;;;23460:80;23506:19;;23460:23;;:27;;:80;;;;:::i;:::-;23434:23;:106;;;;23575:45;23597:22;;23575:17;;:21;;:45;;;;:::i;:::-;23555:17;:65;;;;23267:365;23691:14;:22;23706:6;23691:22;;;;;;;;;;;;;;;;;;;;;;;;;23690:23;:66;;;;;23751:4;23730:26;;:9;:26;;;;23690:66;:109;;;;;23794:4;;;;;;;;;;;23773:26;;:9;:26;;;;23690:109;:143;;;;;23829:4;;;;;;;;;;;23816:17;;:9;:17;;;;23690:143;:193;;;;;23863:20;;;;;;;;;;;23850:33;;:9;:33;;;;23690:193;23672:478;;;23910:18;23931:20;23941:9;23931;:20::i;:::-;23910:41;;24017:23;;24006:6;23993:10;:19;23992:48;;23966:172;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23672:478;;24227:18;;;;;;;;;;;:50;;;;;24250:16;:27;24267:9;24250:27;;;;;;;;;;;;;;;;;;;;;;;;;24249:28;24227:50;24223:292;;;24347:15;24320:13;:24;24334:9;24320:24;;;;;;;;;;;;;;;;:42;24294:128;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24482:21;;;;;;;;;;;24464:39;;:15;:39;24437:13;:24;24451:9;24437:24;;;;;;;;;;;;;;;:66;;;;24223:292;24568:28;24581:6;24589;24568:12;:28::i;:::-;24613:16;:14;:16::i;:::-;24609:427;;;24646:10;:8;:10::i;:::-;24705:28;24736:24;24754:4;24736:9;:24::i;:::-;24705:55;;24802:21;;24779:20;:44;24775:250;;;24844:165;24889:4;24917;;;;;;;;;;;24968:21;;24945:20;:44;24844:14;:165::i;:::-;;24775:250;24609:427;;25095:90;25131:6;25095:90;;;;;;;;;;;;;;;;;:9;:17;25105:6;25095:17;;;;;;;;;;;;;;;;:21;;:90;;;;;:::i;:::-;25075:9;:17;25085:6;25075:17;;;;;;;;;;;;;;;:110;;;;25198:22;25223:21;25237:6;25223:13;:21::i;:::-;:82;;25299:6;25223:82;;;25260:23;25268:6;25276;25260:7;:23::i;:::-;25223:82;25198:107;;25339:40;25364:14;25339:9;:20;25349:9;25339:20;;;;;;;;;;;;;;;;:24;;:40;;;;:::i;:::-;25316:9;:20;25326:9;25316:20;;;;;;;;;;;;;;;:63;;;;25426:16;:24;25443:6;25426:24;;;;;;;;;;;;;;;;;;;;;;;;;25421:120;;25471:11;;;;;;;;;;;:20;;;25492:6;25500:9;:17;25510:6;25500:17;;;;;;;;;;;;;;;;25471:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25467:63;;;;;;25421:120;25558:16;:27;25575:9;25558:27;;;;;;;;;;;;;;;;;;;;;;;;;25553:159;;25623:11;;;;;;;;;;;:20;;;25644:9;25655;:20;25665:9;25655:20;;;;;;;;;;;;;;;;25623:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25602:99;;;;;;25553:159;25728:11;;;;;;;;;;;:19;;;25748:14;;25728:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25724:51;;;;;;25809:9;25792:43;;25801:6;25792:43;;;25820:14;25792:43;;;;;;;;;;;;;;;;;;25853:4;25846:11;;;22968:2897;;;;;;:::o;4707:250::-;4765:7;4794:1;4789;:6;4785:47;;;4819:1;4812:8;;;;4785:47;4844:9;4860:1;4856;:5;4844:17;;4889:1;4884;4880;:5;;;;;;:10;4872:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4948:1;4941:8;;;4707:250;;;;;:::o;4965:132::-;5023:7;5050:39;5054:1;5057;5050:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;5043:46;;4965:132;;;;:::o;26282:203::-;26393:12;;26383:6;:22;;:49;;;;26409:15;:23;26425:6;26409:23;;;;;;;;;;;;;;;;;;;;;;;;;26383:49;26361:116;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26282:203;;:::o;27134:222::-;27183:4;27234;;;;;;;;;;;27220:18;;:10;:18;;;;:42;;;;;27256:6;;;;;;;;;;;27255:7;27220:42;:70;;;;;27279:11;;;;;;;;;;;27220:70;:128;;;;;27335:13;;27307:9;:24;27325:4;27307:24;;;;;;;;;;;;;;;;:41;;27220:128;27200:148;;27134:222;:::o;27828:974::-;19002:4;18993:6;;:13;;;;;;;;;;;;;;;;;;27877:21:::1;27915:1;27901:16;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27877:40;;27946:4;27928;27933:1;27928:7;;;;;;;;;;;;;:23;;;;;;;;;::::0;::::1;27972:4;;;;;;;;;;;27962;27967:1;27962:7;;;;;;;;;;;;;:14;;;;;;;;;::::0;::::1;27989:21;28013;27989:45;;28047:6;;;;;;;;;;;:57;;;28119:13;;28147:1;28163:4;28190;28210:15;28047:189;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;28249:17;28269:40;28295:13;28269:21;:25;;:40;;;;:::i;:::-;28249:60;;28322:27;28352:66;28399:8;;28352:28;28366:13;;28352:9;:13;;:28;;;;:::i;:::-;:32;;:66;;;;:::i;:::-;28322:96;;28429:26;28458:41;28490:8;;28458:27;28472:12;;28458:9;:13;;:27;;;;:::i;:::-;:31;;:41;;;;:::i;:::-;28429:70;;28516:11;;;;;;;;;;;:19;;;28543;28516:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;28512:65;;;;;;28588:15;28617:20;;;;;;;;;;;28609:34;;28665:18;28703:5;28609:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28587:136;;;28789:5;28776:18;;19017:1;;;;;;19038:5:::0;19029:6;;:14;;;;;;;;;;;;;;;;;;27828:974::o;26493:114::-;26555:4;26580:11;:19;26592:6;26580:19;;;;;;;;;;;;;;;;;;;;;;;;;26579:20;26572:27;;26493:114;;;:::o;26615:511::-;26700:7;26725:17;26767:4;;;;;;;;;;;26757:14;;:6;:14;;;26753:188;;;26800:40;26825:14;;26800:20;26811:8;;26800:6;:10;;:20;;;;:::i;:::-;:24;;:40;;;;:::i;:::-;26788:52;;26753:188;;;26885:44;26914:14;;26885:24;26896:12;;26885:6;:10;;:24;;;;:::i;:::-;:28;;:44;;;;:::i;:::-;26873:56;;26753:188;26980:39;27009:9;26980;:24;26998:4;26980:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;26953:9;:24;26971:4;26953:24;;;;;;;;;;;;;;;:66;;;;27060:4;27035:42;;27044:6;27035:42;;;27067:9;27035:42;;;;;;;;;;;;;;;;;;27097:21;27108:9;27097:6;:10;;:21;;;;:::i;:::-;27090:28;;;26615:511;;;;:::o;5105:379::-;5225:7;5324:1;5320;:5;5327:12;5312:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5351:9;5367:1;5363;:5;;;;;;5351:17;;5475:1;5468:8;;;5105:379;;;;;:::o

Swarm Source

ipfs://0334b90334d5b3f1d44504fdecdaf80553428d8a85533dccc5f5f89ff32bca9c
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.