Contract 0x6bBf1fa4a7eE6525F36aE8ffb6ee22DD009351E3 10

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xc88bcc46a9b3605ae90c41e349d7a187d5560982184facee089b37b58c1075d2Swap131679412021-12-03 20:05:1237 secs ago0x4afbe7bf4170f100512dee5ccc8987a769bd28a0 IN  Bogged Finance: Router V20 BNB0.00132313
0x66de39ec9cc1587a704d0426cb8b045bfae2e014e21ae5b0cbb1c4efdb702cfbSwap BNB131679392021-12-03 20:05:0643 secs ago0x2010da1e3801d98110a04bfefa1c7720d6a572d5 IN  Bogged Finance: Router V20.2 BNB0.000225265
0xa881eef2479d50ccd715a66f71c2aa3e9a2024295ad04b4f9eb272c0e999f169Swap131679262021-12-03 20:04:271 min ago0x7ab68419ed73d8dc15ccd93d0c07bee1fc5346da IN  Bogged Finance: Router V20 BNB0.002917085
0x8478ddffff765b769ef1493af0648141decda343c10379d95e4068ec4ba9f1c9Swap131679252021-12-03 20:04:241 min ago0x35cfb0d75406c677e7c223fac3fefd17b54e1c3a IN  Bogged Finance: Router V20 BNB0.001241385
0x5f811eb52d5cbddbdf261d9c3e28e4a830796f8d3d521efe41e75b8927bb9d7cSwap BNB131679252021-12-03 20:04:241 min ago0xd7fd7d30c754ec37a2a8b7e42e39e1657a49055c IN  Bogged Finance: Router V20.068024827208404 BNB0.002451745
0x2ca1ad05b33b94f8a514c27488862433d917acda4642eaac176ee9b055e7a37bSwap131679162021-12-03 20:03:561 min ago0x4afbe7bf4170f100512dee5ccc8987a769bd28a0 IN  Bogged Finance: Router V20 BNB0.00138349
0x3ab2353e5bf4a6f730f45037c2453989c75db7485e182294ed8d36c8065949feSwap BNB131679152021-12-03 20:03:531 min ago0x2dec554221b5ead15875e8ae5878b7b600546662 IN  Bogged Finance: Router V20.015 BNB0.002511925
0xe131bd930f73179fe4768a4f7fc3990e1f1e18e10925c10069719645d09ab7ecSwap BNB131679102021-12-03 20:03:382 mins ago0x3e8cc5c15495d7463ea61c008d946e71fbd80eea IN  Bogged Finance: Router V20.1 BNB0.001126025
0x5ad052008a09fd3d254915524fa4a41e919add0418a7a924d35accd75569421cSwap BNB131679002021-12-03 20:03:082 mins ago0x64f213a52e9e14b16a0982390f6d8cd7f3526073 IN  Bogged Finance: Router V20.15 BNB0.00540636
0x63ba3fa4f10d97d190e854a9e242171d25c2b29d4078502f1aeb843605a309b0Swap For BNB131678912021-12-03 20:02:413 mins ago0x58568ee0a2b023c8ce797b0739593e5263f1730c IN  Bogged Finance: Router V20 BNB0.00084426
0x524e94353625c12527edf1aa107b13daf5e70387ca951af67c02752aa24b529bSwap BNB131678912021-12-03 20:02:413 mins ago0x71d7739a320821c4ed768e8bb33e95349cdb3cd0 IN  Bogged Finance: Router V20.05 BNB0.003946397
0x9cc6acf75fa56f47e18e0dede4b05abb880c0b970fb3a6107a590ffc38577837Swap For BNB131678882021-12-03 20:02:323 mins ago0x9a6b018b34df814fa2d02089d23a187b3b711aae IN  Bogged Finance: Router V20 BNB0.006209945
0xef77506cdd0e4b9fb8810270f0438c9f5953ee9a58078b0f3119a244ec895de3Swap For BNB131678682021-12-03 20:01:324 mins ago0x70aff7648ee891cf25b6cbb384056f26814e9970 IN  Bogged Finance: Router V20 BNB0.00033504
0xb650755dcfa33aed1a03dd94300fc1dea62f7a39f36c9780bd88d1a860f4a01dSwap For BNB131678662021-12-03 20:01:264 mins ago0x70aff7648ee891cf25b6cbb384056f26814e9970 IN  Bogged Finance: Router V20 BNB0.000942978
0xdd424a4e5ad789afcecef04023d967b4ae8ef3a353f23a3e05c85c725433b6ceSwap BNB131678572021-12-03 20:00:594 mins ago0x64f213a52e9e14b16a0982390f6d8cd7f3526073 IN  Bogged Finance: Router V20.15 BNB0.108876
0xdbabd7dbbe698614db58c2e6d7e4691e01e58a2adf0a4dccd634d28940f4842aSwap BNB131678482021-12-03 20:00:325 mins ago0x12e4554d7c597672256c6bd064b379f286386695 IN  Bogged Finance: Router V20.03 BNB0.00201966
0x3e211a68b235b3243029f75636d6767b527e202793f569f9e7940bbbd261d8ccSwap BNB131678372021-12-03 19:59:595 mins ago0x64f213a52e9e14b16a0982390f6d8cd7f3526073 IN  Bogged Finance: Router V20.15 BNB0.0225265
0x0232abf073288103b762c2dfd24517c87df06fbbb1a9c013b12ed275122a78bcSwap BNB131678322021-12-03 19:59:446 mins ago0x7ebc8c2b2051f9e06c6a8722eb44791b460e4bed IN  Bogged Finance: Router V21.5 BNB0.000224985
0x157bd068ac31403361e9fa8d80c76261e479ebf40868c76faa159348d728c9feSwap For BNB131678322021-12-03 19:59:446 mins ago0x70aff7648ee891cf25b6cbb384056f26814e9970 IN  Bogged Finance: Router V20 BNB0.003492396
0xeba37f263468fd965f0278716f407a49681331c74df0426a10319ebc936537d6Swap131678272021-12-03 19:59:296 mins ago0x45d3150c086734ca7841ec66e3ea2b22e38b1399 IN  Bogged Finance: Router V20 BNB0.00084317
0x50113f8900210fc360c31f2cc3d6160986f107b3a557bb9165ea977e2b371d8eSwap131678262021-12-03 19:59:266 mins ago0x5d82a63b49db41d03ebbae930140b34002483d8c IN  Bogged Finance: Router V20 BNB0.001912265
0x90545e946fde889898b5a8524ae80ce8348f4bc407b81bba19f2981bd16fa9deSwap BNB131678162021-12-03 19:58:566 mins ago0x64f213a52e9e14b16a0982390f6d8cd7f3526073 IN  Bogged Finance: Router V20.15 BNB0.01126325
0x947677ac99e59059625f8f5772492630a50f705599a32622b2b2b353e2350e1bSwap BNB131678152021-12-03 19:58:536 mins ago0x713b7ed8402a0a672e93c49a0e4c2b0b00cd7d84 IN  Bogged Finance: Router V212 BNB0.0018352
0x3871ed51b27b454ae56447c74c9c649202fbaed16f8ba352a8f148bcfff6c537Swap BNB131678092021-12-03 19:58:357 mins ago0xcbe04a2795d6ec20e3d4ee834bae65f13b109f97 IN  Bogged Finance: Router V20.5 BNB0.000788495
0x3c063c517ca5f14ca2ebdf164ff10911836e277ff1ec5f9be6afa53be75797e3Swap131678072021-12-03 19:58:297 mins ago0x45d3150c086734ca7841ec66e3ea2b22e38b1399 IN  Bogged Finance: Router V20 BNB0.000227485
[ Download CSV Export 

OVERVIEW

Bogged Finance Dex Aggregation Router V2

Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x5f811eb52d5cbddbdf261d9c3e28e4a830796f8d3d521efe41e75b8927bb9d7c131679252021-12-03 20:04:241 min ago Bogged Finance: Router V2 Binance: WBNB Token0.068024827208404602 BNB
0x3ab2353e5bf4a6f730f45037c2453989c75db7485e182294ed8d36c8065949fe131679152021-12-03 20:03:531 min ago Bogged Finance: Router V2 Binance: WBNB Token0.015 BNB
0x63ba3fa4f10d97d190e854a9e242171d25c2b29d4078502f1aeb843605a309b0131678912021-12-03 20:02:413 mins ago Bogged Finance: Router V20x58568ee0a2b023c8ce797b0739593e5263f1730c0.055297372575845987 BNB
0x63ba3fa4f10d97d190e854a9e242171d25c2b29d4078502f1aeb843605a309b0131678912021-12-03 20:02:413 mins ago Binance: WBNB Token Bogged Finance: Router V20.055297372575845987 BNB
0x524e94353625c12527edf1aa107b13daf5e70387ca951af67c02752aa24b529b131678912021-12-03 20:02:413 mins ago Bogged Finance: Router V2 Binance: WBNB Token0.05 BNB
0x9cc6acf75fa56f47e18e0dede4b05abb880c0b970fb3a6107a590ffc38577837131678882021-12-03 20:02:323 mins ago Bogged Finance: Router V20x9a6b018b34df814fa2d02089d23a187b3b711aae0.586814726563824701 BNB
0x9cc6acf75fa56f47e18e0dede4b05abb880c0b970fb3a6107a590ffc38577837131678882021-12-03 20:02:323 mins ago Binance: WBNB Token Bogged Finance: Router V20.586814726563824701 BNB
0xb650755dcfa33aed1a03dd94300fc1dea62f7a39f36c9780bd88d1a860f4a01d131678662021-12-03 20:01:264 mins ago Bogged Finance: Router V20x70aff7648ee891cf25b6cbb384056f26814e99700.133242901350338015 BNB
0xb650755dcfa33aed1a03dd94300fc1dea62f7a39f36c9780bd88d1a860f4a01d131678662021-12-03 20:01:264 mins ago Binance: WBNB Token Bogged Finance: Router V20.133242901350338015 BNB
0xdd424a4e5ad789afcecef04023d967b4ae8ef3a353f23a3e05c85c725433b6ce131678572021-12-03 20:00:594 mins ago Bogged Finance: Router V2 Binance: WBNB Token0.15 BNB
0xdbabd7dbbe698614db58c2e6d7e4691e01e58a2adf0a4dccd634d28940f4842a131678482021-12-03 20:00:325 mins ago Bogged Finance: Router V2 Binance: WBNB Token0.03 BNB
0x157bd068ac31403361e9fa8d80c76261e479ebf40868c76faa159348d728c9fe131678322021-12-03 19:59:446 mins ago Bogged Finance: Router V20x70aff7648ee891cf25b6cbb384056f26814e99700.011734763591778302 BNB
0x157bd068ac31403361e9fa8d80c76261e479ebf40868c76faa159348d728c9fe131678322021-12-03 19:59:446 mins ago Binance: WBNB Token Bogged Finance: Router V20.011734763591778302 BNB
0x947677ac99e59059625f8f5772492630a50f705599a32622b2b2b353e2350e1b131678152021-12-03 19:58:536 mins ago Bogged Finance: Router V2 Binance: WBNB Token12 BNB
0x3871ed51b27b454ae56447c74c9c649202fbaed16f8ba352a8f148bcfff6c537131678092021-12-03 19:58:357 mins ago Bogged Finance: Router V2 Binance: WBNB Token0.5 BNB
0x3a12abe4bc26f4f4ad43f0d61278a0c95c6ac0d14339b717b3f5a1c80c121f71131677972021-12-03 19:57:597 mins ago Bogged Finance: Router V2 Binance: WBNB Token0.282 BNB
0xe4321795679e478e0ee3c6f11f3a6efac5c833ad9144c01d033fa06d6fe4affc131677492021-12-03 19:55:3510 mins ago Bogged Finance: Router V20x49104337615c32f7dc89ff2cbf761be807b8aa9b0.157838742209976165 BNB
0xe4321795679e478e0ee3c6f11f3a6efac5c833ad9144c01d033fa06d6fe4affc131677492021-12-03 19:55:3510 mins ago Binance: WBNB Token Bogged Finance: Router V20.157838742209976165 BNB
0xf5c320a5065345c0f90ac38a30d7a2aea748bc81e1683f9d3e9e9496efcc2db7131677342021-12-03 19:54:5010 mins ago Bogged Finance: Router V20xc24dfaca8f4f721813bb72a3d723b240e31b7ed19.056042598861416371 BNB
0xf5c320a5065345c0f90ac38a30d7a2aea748bc81e1683f9d3e9e9496efcc2db7131677342021-12-03 19:54:5010 mins ago Binance: WBNB Token Bogged Finance: Router V29.056042598861416371 BNB
0x6192c237e963bf5a717f4402cc4f16c289dbe88b4621c3861f699fe14f324db0131677292021-12-03 19:54:3511 mins ago Bogged Finance: Router V2 Binance: WBNB Token0.2 BNB
0x41b36167c8b77c49155fc78d04002386389aae6c8c76a74af4284dd4d39cba9d131677272021-12-03 19:54:2911 mins ago Bogged Finance: Router V2 Binance: WBNB Token0.030780815977646036 BNB
0x7c8a2cca3adf3ab37cdf71099ab98f24b0a509b9c60b36d8ede8c3d19d9e7728131676332021-12-03 19:49:4716 mins ago Bogged Finance: Router V2 Binance: WBNB Token0.06605652 BNB
0x2acfaa537d3e2da10629bbfdfad4d2bda04e08f7814a07883da45b123486fdc0131676172021-12-03 19:48:5916 mins ago Bogged Finance: Router V2 Binance: WBNB Token0.003 BNB
0x46fc65b715aed625cc484a397e9920e114996bb643b8e0a7334613da8e69c865131676112021-12-03 19:48:4117 mins ago Bogged Finance: Router V2 Binance: WBNB Token0.3 BNB
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
BOGRouterV2

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at BscScan.com on 2021-09-01
*/

//SPDX-License-Identifier: BUSL-1.1

pragma solidity ^0.8.7;

/**
 * $$$$$$$\                                                $$\     $$$$$$$$\ $$\                                                   
 * $$  __$$\                                               $$ |    $$  _____|\__|                                                  
 * $$ |  $$ | $$$$$$\   $$$$$$\   $$$$$$\   $$$$$$\   $$$$$$$ |    $$ |      $$\ $$$$$$$\   $$$$$$\  $$$$$$$\   $$$$$$$\  $$$$$$\  
 * $$$$$$$\ |$$  __$$\ $$  __$$\ $$  __$$\ $$  __$$\ $$  __$$ |    $$$$$\    $$ |$$  __$$\  \____$$\ $$  __$$\ $$  _____|$$  __$$\ 
 * $$  __$$\ $$ /  $$ |$$ /  $$ |$$ /  $$ |$$$$$$$$ |$$ /  $$ |    $$  __|   $$ |$$ |  $$ | $$$$$$$ |$$ |  $$ |$$ /      $$$$$$$$ |
 * $$ |  $$ |$$ |  $$ |$$ |  $$ |$$ |  $$ |$$   ____|$$ |  $$ |    $$ |      $$ |$$ |  $$ |$$  __$$ |$$ |  $$ |$$ |      $$   ____|
 * $$$$$$$  |\$$$$$$  |\$$$$$$$ |\$$$$$$$ |\$$$$$$$\ \$$$$$$$ |$$\ $$ |      $$ |$$ |  $$ |\$$$$$$$ |$$ |  $$ |\$$$$$$$\ \$$$$$$$\ 
 * \_______/  \______/  \____$$ | \____$$ | \_______| \_______|\__|\__|      \__|\__|  \__| \_______|\__|  \__| \_______| \_______|
 *                     $$\   $$ |$$\   $$ |                                                                                        
 *                     \$$$$$$  |\$$$$$$  |                                                                                        
 *                      \______/  \______/
 * 
 * https://app.bogged.finance/swap
 */

library TransferHelper {
    function safeApprove(address token, address to, uint value) internal {
        (bool success, bytes memory data) = token.call(abi.encodeWithSelector(0x095ea7b3, to, value));
        require(success && (data.length == 0 || abi.decode(data, (bool))), 'TransferHelper: APPROVE_FAILED');
    }

    function safeTransfer(address token, address to, uint value) internal {
        (bool success, bytes memory data) = token.call(abi.encodeWithSelector(0xa9059cbb, to, value));
        require(success && (data.length == 0 || abi.decode(data, (bool))), 'TransferHelper: TRANSFER_FAILED');
    }

    function safeTransferFrom(address token, address from, address to, uint value) internal {
        (bool success, bytes memory data) = token.call(abi.encodeWithSelector(0x23b872dd, from, to, value));
        require(success && (data.length == 0 || abi.decode(data, (bool))), 'TransferHelper: TRANSFER_FROM_FAILED');
    }

    function safeTransferBNB(address to, uint value) internal {
        (bool success,) = to.call{value:value}(new bytes(0));
        require(success, 'TransferHelper: BNB_TRANSFER_FAILED');
    }
}

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

interface IWBNB {
    function deposit() external payable;
    function transfer(address to, uint value) external returns (bool);
    function withdraw(uint) external;
}

interface ISwapExecutor {
    function receiver(address tokenIn, address tokenOut) external view returns (address);
    function execute(address tokenIn, address tokenOut, address next) external;
    function hasRoute(address tokenIn, address tokenOut) external view returns (bool);
    function getAmountOut(uint256 amountIn, address tokenIn, address tokenOut) external view returns (uint256);
    function getAmountIn(uint256 amountOut, address tokenIn, address tokenOut) external view returns (uint256);
}

contract BOGRouterV2 {
    address public constant WBNB = 0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c;

    receive() external payable {
        assert(msg.sender == WBNB);
    }

    function swap(
        uint256 amountIn, 
        uint256 amountOutMin, 
        uint256 amountTaxMax, 
        ISwapExecutor[] memory executors, 
        address[] memory path, 
        address to
    ) external {
        uint256 amountOutCalculated = getAmountOut(amountIn, executors, path);
        require(
            amountOutCalculated >= amountOutMin,
            'BOGRouter: INSUFFICIENT_OUTPUT_AMOUNT'
        );
        TransferHelper.safeTransferFrom(
            path[0], msg.sender, executors[0].receiver(path[0], path[1]), amountIn
        );
        uint256 balanceBefore = IBEP20(path[path.length - 1]).balanceOf(to);
        _swap(executors, path, to);
        uint256 amountOutActual = IBEP20(path[path.length - 1]).balanceOf(to) - balanceBefore;
        if(amountOutActual < amountOutMin){
            uint256 amountTax = amountOutCalculated - amountOutActual;
            require(
                amountTax < amountTaxMax,
                'BOGRouter: OVERTAXED'
            );
            emit AutoTaxSwap(amountOutCalculated, amountOutActual);
        }
    }

    function swapBNB(
        uint256 amountOutMin, 
        uint256 amountTaxMax, 
        ISwapExecutor[] memory executors, 
        address[] memory path, 
        address to
    ) external payable {
        uint256 amountIn = msg.value;
        uint256 amountOutCalculated = getAmountOut(amountIn, executors, path);
        require(
            amountOutCalculated >= amountOutMin,
            'BOGRouter: INSUFFICIENT_OUTPUT_AMOUNT'
        );
        require(path[0] == WBNB, 'BOGRouter: INVALID_PATH');
        IWBNB(WBNB).deposit{value: amountIn}();
        assert(IWBNB(WBNB).transfer(executors[0].receiver(path[0], path[1]), amountIn));
        uint256 balanceBefore = IBEP20(path[path.length - 1]).balanceOf(to);
        _swap(executors, path, to);
        uint256 amountOutActual = IBEP20(path[path.length - 1]).balanceOf(to) - balanceBefore;
        if(amountOutActual < amountOutMin){
            uint256 amountTax = amountOutCalculated - amountOutActual;
            require(
                amountTax < amountTaxMax,
                'BOGRouter: OVERTAXED'
            );
            emit AutoTaxSwap(amountOutCalculated, amountOutActual);
        }
    }

    function swapForBNB(
        uint256 amountIn, 
        uint256 amountOutMin, 
        uint256 amountTaxMax, 
        ISwapExecutor[] memory executors, 
        address[] memory path, 
        address to
    ) external {
        uint256 amountOutCalculated = getAmountOut(amountIn, executors, path);
        require(
            amountOutCalculated >= amountOutMin,
            'BOGRouter: INSUFFICIENT_OUTPUT_AMOUNT'
        );
        require(path[path.length - 1] == WBNB, 'BOGRouter: INVALID_PATH');
        TransferHelper.safeTransferFrom(
            path[0], msg.sender, executors[0].receiver(path[0], path[1]), amountIn
        );
        _swap(executors, path, address(this));
        uint256 amountOutActual = IBEP20(WBNB).balanceOf(address(this));
        IWBNB(WBNB).withdraw(amountOutActual);
        TransferHelper.safeTransferBNB(to, amountOutActual);
        if(amountOutActual < amountOutMin){
            uint256 amountTax = amountOutCalculated - amountOutActual;
            require(
                amountTax < amountTaxMax,
                'BOGRouter: OVERTAXED'
            );
            emit AutoTaxSwap(amountOutCalculated, amountOutActual);
        }
    }

    function _swap(ISwapExecutor[] memory executors, address[] memory path, address to) internal {
        for(uint256 i; i < executors.length; i++){
            executors[i].execute(
                path[i],
                path[i + 1],
                i == executors.length - 1
                ? to
                : executors[i + 1].receiver(
                    path[i + 1],
                    path[i + 2]
                )
            );
        }
    }
    
    function getAmountOut(uint256 amount, ISwapExecutor[] memory executors, address[] memory path) public view returns (uint256) {
        require(path.length >= 2 && executors.length == path.length-1, 'BOGRouterV2: INVALID_PATH');
        for(uint256 i; i < executors.length; i++){
            amount = executors[i].getAmountOut(
                amount, 
                path[i],
                path[i + 1]
            );
        }
        return amount;
    }

    function getAmountIn(uint256 amount, ISwapExecutor[] memory executors, address[] memory path) public view returns (uint256) {
        require(path.length >= 2 && executors.length == path.length-1, 'BOGRouterV2: INVALID_PATH');
        for(uint256 i = executors.length; i > 0; i--){
            amount = executors[i].getAmountIn(
                amount, 
                path[i - 1],
                path[i]
            );
        }
        return amount;
    }
    
    event AutoTaxSwap(uint256 amountOutCalculated, uint256 amountOutActual);
}

Contract Security Audit

Contract ABI

[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountOutCalculated","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountOutActual","type":"uint256"}],"name":"AutoTaxSwap","type":"event"},{"inputs":[],"name":"WBNB","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"contract ISwapExecutor[]","name":"executors","type":"address[]"},{"internalType":"address[]","name":"path","type":"address[]"}],"name":"getAmountIn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"contract ISwapExecutor[]","name":"executors","type":"address[]"},{"internalType":"address[]","name":"path","type":"address[]"}],"name":"getAmountOut","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountIn","type":"uint256"},{"internalType":"uint256","name":"amountOutMin","type":"uint256"},{"internalType":"uint256","name":"amountTaxMax","type":"uint256"},{"internalType":"contract ISwapExecutor[]","name":"executors","type":"address[]"},{"internalType":"address[]","name":"path","type":"address[]"},{"internalType":"address","name":"to","type":"address"}],"name":"swap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountOutMin","type":"uint256"},{"internalType":"uint256","name":"amountTaxMax","type":"uint256"},{"internalType":"contract ISwapExecutor[]","name":"executors","type":"address[]"},{"internalType":"address[]","name":"path","type":"address[]"},{"internalType":"address","name":"to","type":"address"}],"name":"swapBNB","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountIn","type":"uint256"},{"internalType":"uint256","name":"amountOutMin","type":"uint256"},{"internalType":"uint256","name":"amountTaxMax","type":"uint256"},{"internalType":"contract ISwapExecutor[]","name":"executors","type":"address[]"},{"internalType":"address[]","name":"path","type":"address[]"},{"internalType":"address","name":"to","type":"address"}],"name":"swapForBNB","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801561001057600080fd5b50612227806100206000396000f3fe6080604052600436106100595760003560e01c80634cfd87ae146100b55780638dd95002146100f2578063cfeb176e1461011d578063dc056eff14610139578063e0f4e5b214610162578063e871fdb31461018b576100b0565b366100b05773bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146100ae576100ad611f4c565b5b005b600080fd5b3480156100c157600080fd5b506100dc60048036038101906100d7919061179c565b6101c8565b6040516100e99190611c72565b60405180910390f35b3480156100fe57600080fd5b5061010761033b565b6040516101149190611ad7565b60405180910390f35b61013760048036038101906101329190611827565b610353565b005b34801561014557600080fd5b50610160600480360381019061015b91906118da565b610863565b005b34801561016e57600080fd5b50610189600480360381019061018491906118da565b610bd5565b005b34801561019757600080fd5b506101b260048036038101906101ad919061179c565b610fa6565b6040516101bf9190611c72565b60405180910390f35b600060028251101580156101e95750600182516101e59190611de7565b8351145b610228576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161021f90611bb2565b60405180910390fd5b60005b83518110156103305783818151811061024757610246611faa565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16635e1e63258685848151811061027e5761027d611faa565b5b6020026020010151866001866102949190611d91565b815181106102a5576102a4611faa565b5b60200260200101516040518463ffffffff1660e01b81526004016102cb93929190611c8d565b60206040518083038186803b1580156102e357600080fd5b505afa1580156102f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061031b919061176f565b9450808061032890611f03565b91505061022b565b508390509392505050565b73bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c81565b600034905060006103658286866101c8565b9050868110156103aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103a190611c52565b60405180910390fd5b73bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c73ffffffffffffffffffffffffffffffffffffffff16846000815181106103e9576103e8611faa565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614610447576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161043e90611bd2565b60405180910390fd5b73bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c73ffffffffffffffffffffffffffffffffffffffff1663d0e30db0836040518263ffffffff1660e01b81526004016000604051808303818588803b1580156104a357600080fd5b505af11580156104b7573d6000803e3d6000fd5b505050505073bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c73ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86600081518110610500576104ff611faa565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1663e98a5b858760008151811061053757610536611faa565b5b60200260200101518860018151811061055357610552611faa565b5b60200260200101516040518363ffffffff1660e01b8152600401610578929190611af2565b60206040518083038186803b15801561059057600080fd5b505afa1580156105a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c89190611715565b846040518363ffffffff1660e01b81526004016105e6929190611b89565b602060405180830381600087803b15801561060057600080fd5b505af1158015610614573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106389190611742565b61064557610644611f4c565b5b600084600186516106569190611de7565b8151811061066757610666611faa565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff166370a08231856040518263ffffffff1660e01b81526004016106a79190611ad7565b60206040518083038186803b1580156106bf57600080fd5b505afa1580156106d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f7919061176f565b905061070486868661111d565b60008186600188516107169190611de7565b8151811061072757610726611faa565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff166370a08231876040518263ffffffff1660e01b81526004016107679190611ad7565b60206040518083038186803b15801561077f57600080fd5b505afa158015610793573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107b7919061176f565b6107c19190611de7565b90508881101561085857600081846107d99190611de7565b905088811061081d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081490611bf2565b60405180910390fd5b7fb460b7a4df3158d3ab51bfceaf4c7c293449712c5b525b79295968ed4f20fee2848360405161084e929190611cc4565b60405180910390a1505b505050505050505050565b60006108708785856101c8565b9050858110156108b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ac90611c52565b60405180910390fd5b6109b7836000815181106108cc576108cb611faa565b5b602002602001015133866000815181106108e9576108e8611faa565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1663e98a5b85876000815181106109205761091f611faa565b5b60200260200101518860018151811061093c5761093b611faa565b5b60200260200101516040518363ffffffff1660e01b8152600401610961929190611af2565b60206040518083038186803b15801561097957600080fd5b505afa15801561098d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b19190611715565b8a611322565b600083600185516109c89190611de7565b815181106109d9576109d8611faa565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff166370a08231846040518263ffffffff1660e01b8152600401610a199190611ad7565b60206040518083038186803b158015610a3157600080fd5b505afa158015610a45573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a69919061176f565b9050610a7685858561111d565b6000818560018751610a889190611de7565b81518110610a9957610a98611faa565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff166370a08231866040518263ffffffff1660e01b8152600401610ad99190611ad7565b60206040518083038186803b158015610af157600080fd5b505afa158015610b05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b29919061176f565b610b339190611de7565b905087811015610bca5760008184610b4b9190611de7565b9050878110610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8690611bf2565b60405180910390fd5b7fb460b7a4df3158d3ab51bfceaf4c7c293449712c5b525b79295968ed4f20fee28483604051610bc0929190611cc4565b60405180910390a1505b505050505050505050565b6000610be28785856101c8565b905085811015610c27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1e90611c52565b60405180910390fd5b73bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c73ffffffffffffffffffffffffffffffffffffffff168360018551610c619190611de7565b81518110610c7257610c71611faa565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614610cd0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc790611bd2565b60405180910390fd5b610dd283600081518110610ce757610ce6611faa565b5b60200260200101513386600081518110610d0457610d03611faa565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1663e98a5b8587600081518110610d3b57610d3a611faa565b5b602002602001015188600181518110610d5757610d56611faa565b5b60200260200101516040518363ffffffff1660e01b8152600401610d7c929190611af2565b60206040518083038186803b158015610d9457600080fd5b505afa158015610da8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dcc9190611715565b8a611322565b610ddd84843061111d565b600073bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c73ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610e2c9190611ad7565b60206040518083038186803b158015610e4457600080fd5b505afa158015610e58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7c919061176f565b905073bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c73ffffffffffffffffffffffffffffffffffffffff16632e1a7d4d826040518263ffffffff1660e01b8152600401610ecb9190611c72565b600060405180830381600087803b158015610ee557600080fd5b505af1158015610ef9573d6000803e3d6000fd5b50505050610f07838261145b565b86811015610f9c5760008183610f1d9190611de7565b9050868110610f61576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5890611bf2565b60405180910390fd5b7fb460b7a4df3158d3ab51bfceaf4c7c293449712c5b525b79295968ed4f20fee28383604051610f92929190611cc4565b60405180910390a1505b5050505050505050565b60006002825110158015610fc7575060018251610fc39190611de7565b8351145b611006576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ffd90611bb2565b60405180910390fd5b6000835190505b60008111156111125783818151811061102957611028611faa565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16630a9a2b72868560018561105b9190611de7565b8151811061106c5761106b611faa565b5b602002602001015186858151811061108757611086611faa565b5b60200260200101516040518463ffffffff1660e01b81526004016110ad93929190611c8d565b60206040518083038186803b1580156110c557600080fd5b505afa1580156110d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110fd919061176f565b9450808061110a90611ea8565b91505061100d565b508390509392505050565b60005b835181101561131c5783818151811061113c5761113b611faa565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1663e65add9584838151811061117257611171611faa565b5b6020026020010151856001856111889190611d91565b8151811061119957611198611faa565b5b6020026020010151600188516111af9190611de7565b85146112b757876001866111c39190611d91565b815181106111d4576111d3611faa565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1663e98a5b85886001886112059190611d91565b8151811061121657611215611faa565b5b60200260200101518960028961122c9190611d91565b8151811061123d5761123c611faa565b5b60200260200101516040518363ffffffff1660e01b8152600401611262929190611af2565b60206040518083038186803b15801561127a57600080fd5b505afa15801561128e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112b29190611715565b6112b9565b855b6040518463ffffffff1660e01b81526004016112d793929190611b1b565b600060405180830381600087803b1580156112f157600080fd5b505af1158015611305573d6000803e3d6000fd5b50505050808061131490611f03565b915050611120565b50505050565b6000808573ffffffffffffffffffffffffffffffffffffffff166323b872dd86868660405160240161135693929190611b52565b6040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516113a49190611ac0565b6000604051808303816000865af19150503d80600081146113e1576040519150601f19603f3d011682016040523d82523d6000602084013e6113e6565b606091505b509150915081801561141457506000815114806114135750808060200190518101906114129190611742565b5b5b611453576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144a90611c32565b60405180910390fd5b505050505050565b60008273ffffffffffffffffffffffffffffffffffffffff1682600067ffffffffffffffff8111156114905761148f611fd9565b5b6040519080825280601f01601f1916602001820160405280156114c25781602001600182028036833780820191505090505b506040516114d09190611ac0565b60006040518083038185875af1925050503d806000811461150d576040519150601f19603f3d011682016040523d82523d6000602084013e611512565b606091505b5050905080611556576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154d90611c12565b60405180910390fd5b505050565b600061156e61156984611d12565b611ced565b905080838252602082019050828560208602820111156115915761159061200d565b5b60005b858110156115c157816115a7888261163b565b845260208401935060208301925050600181019050611594565b5050509392505050565b60006115de6115d984611d3e565b611ced565b905080838252602082019050828560208602820111156116015761160061200d565b5b60005b85811015611631578161161788826116d6565b845260208401935060208301925050600181019050611604565b5050509392505050565b60008135905061164a81612195565b92915050565b60008151905061165f81612195565b92915050565b600082601f83011261167a57611679612008565b5b813561168a84826020860161155b565b91505092915050565b600082601f8301126116a8576116a7612008565b5b81356116b88482602086016115cb565b91505092915050565b6000815190506116d0816121ac565b92915050565b6000813590506116e5816121c3565b92915050565b6000813590506116fa816121da565b92915050565b60008151905061170f816121da565b92915050565b60006020828403121561172b5761172a612017565b5b600061173984828501611650565b91505092915050565b60006020828403121561175857611757612017565b5b6000611766848285016116c1565b91505092915050565b60006020828403121561178557611784612017565b5b600061179384828501611700565b91505092915050565b6000806000606084860312156117b5576117b4612017565b5b60006117c3868287016116eb565b935050602084013567ffffffffffffffff8111156117e4576117e3612012565b5b6117f086828701611693565b925050604084013567ffffffffffffffff81111561181157611810612012565b5b61181d86828701611665565b9150509250925092565b600080600080600060a0868803121561184357611842612017565b5b6000611851888289016116eb565b9550506020611862888289016116eb565b945050604086013567ffffffffffffffff81111561188357611882612012565b5b61188f88828901611693565b935050606086013567ffffffffffffffff8111156118b0576118af612012565b5b6118bc88828901611665565b92505060806118cd8882890161163b565b9150509295509295909350565b60008060008060008060c087890312156118f7576118f6612017565b5b600061190589828a016116eb565b965050602061191689828a016116eb565b955050604061192789828a016116eb565b945050606087013567ffffffffffffffff81111561194857611947612012565b5b61195489828a01611693565b935050608087013567ffffffffffffffff81111561197557611974612012565b5b61198189828a01611665565b92505060a061199289828a0161163b565b9150509295509295509295565b6119a881611e1b565b82525050565b60006119b982611d6a565b6119c38185611d75565b93506119d3818560208601611e75565b80840191505092915050565b60006119ec601983611d80565b91506119f78261202d565b602082019050919050565b6000611a0f601783611d80565b9150611a1a82612056565b602082019050919050565b6000611a32601483611d80565b9150611a3d8261207f565b602082019050919050565b6000611a55602383611d80565b9150611a60826120a8565b604082019050919050565b6000611a78602483611d80565b9150611a83826120f7565b604082019050919050565b6000611a9b602583611d80565b9150611aa682612146565b604082019050919050565b611aba81611e6b565b82525050565b6000611acc82846119ae565b915081905092915050565b6000602082019050611aec600083018461199f565b92915050565b6000604082019050611b07600083018561199f565b611b14602083018461199f565b9392505050565b6000606082019050611b30600083018661199f565b611b3d602083018561199f565b611b4a604083018461199f565b949350505050565b6000606082019050611b67600083018661199f565b611b74602083018561199f565b611b816040830184611ab1565b949350505050565b6000604082019050611b9e600083018561199f565b611bab6020830184611ab1565b9392505050565b60006020820190508181036000830152611bcb816119df565b9050919050565b60006020820190508181036000830152611beb81611a02565b9050919050565b60006020820190508181036000830152611c0b81611a25565b9050919050565b60006020820190508181036000830152611c2b81611a48565b9050919050565b60006020820190508181036000830152611c4b81611a6b565b9050919050565b60006020820190508181036000830152611c6b81611a8e565b9050919050565b6000602082019050611c876000830184611ab1565b92915050565b6000606082019050611ca26000830186611ab1565b611caf602083018561199f565b611cbc604083018461199f565b949350505050565b6000604082019050611cd96000830185611ab1565b611ce66020830184611ab1565b9392505050565b6000611cf7611d08565b9050611d038282611ed2565b919050565b6000604051905090565b600067ffffffffffffffff821115611d2d57611d2c611fd9565b5b602082029050602081019050919050565b600067ffffffffffffffff821115611d5957611d58611fd9565b5b602082029050602081019050919050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b6000611d9c82611e6b565b9150611da783611e6b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611ddc57611ddb611f7b565b5b828201905092915050565b6000611df282611e6b565b9150611dfd83611e6b565b925082821015611e1057611e0f611f7b565b5b828203905092915050565b6000611e2682611e4b565b9050919050565b60008115159050919050565b6000611e4482611e1b565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b83811015611e93578082015181840152602081019050611e78565b83811115611ea2576000848401525b50505050565b6000611eb382611e6b565b91506000821415611ec757611ec6611f7b565b5b600182039050919050565b611edb8261201c565b810181811067ffffffffffffffff82111715611efa57611ef9611fd9565b5b80604052505050565b6000611f0e82611e6b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611f4157611f40611f7b565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f424f47526f7574657256323a20494e56414c49445f5041544800000000000000600082015250565b7f424f47526f757465723a20494e56414c49445f50415448000000000000000000600082015250565b7f424f47526f757465723a204f5645525441584544000000000000000000000000600082015250565b7f5472616e7366657248656c7065723a20424e425f5452414e534645525f46414960008201527f4c45440000000000000000000000000000000000000000000000000000000000602082015250565b7f5472616e7366657248656c7065723a205452414e534645525f46524f4d5f464160008201527f494c454400000000000000000000000000000000000000000000000000000000602082015250565b7f424f47526f757465723a20494e53554646494349454e545f4f55545055545f4160008201527f4d4f554e54000000000000000000000000000000000000000000000000000000602082015250565b61219e81611e1b565b81146121a957600080fd5b50565b6121b581611e2d565b81146121c057600080fd5b50565b6121cc81611e39565b81146121d757600080fd5b50565b6121e381611e6b565b81146121ee57600080fd5b5056fea264697066735822122045f7c62572836db112c8c6061fcf858f1d847b49cb5ff3d4854c36707005223164736f6c63430008070033

Deployed ByteCode Sourcemap

4267:5239:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4326:42;4422:18;;:10;:18;;;4415:26;;;;:::i;:::-;;4267:5239;;;;;8473:468;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4295:73;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5573:1193;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4457:1108;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6774:1211;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8949:470;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8473:468;8589:7;8632:1;8617:4;:11;:16;;:53;;;;;8669:1;8657:4;:11;:13;;;;:::i;:::-;8637:9;:16;:33;8617:53;8609:91;;;;;;;;;;;;:::i;:::-;;;;;;;;;8715:9;8711:199;8730:9;:16;8726:1;:20;8711:199;;;8776:9;8786:1;8776:12;;;;;;;;:::i;:::-;;;;;;;;:25;;;8820:6;8846:4;8851:1;8846:7;;;;;;;;:::i;:::-;;;;;;;;8872:4;8881:1;8877;:5;;;;:::i;:::-;8872:11;;;;;;;;:::i;:::-;;;;;;;;8776:122;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8767:131;;8748:3;;;;;:::i;:::-;;;;8711:199;;;;8927:6;8920:13;;8473:468;;;;;:::o;4295:73::-;4326:42;4295:73;:::o;5573:1193::-;5787:16;5806:9;5787:28;;5826:27;5856:39;5869:8;5879:9;5890:4;5856:12;:39::i;:::-;5826:69;;5951:12;5928:19;:35;;5906:122;;;;;;;;;;;;:::i;:::-;;;;;;;;;4326:42;6047:15;;:4;6052:1;6047:7;;;;;;;;:::i;:::-;;;;;;;;:15;;;6039:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;4326:42;6101:19;;;6128:8;6101:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4326:42;6157:20;;;6178:9;6188:1;6178:12;;;;;;;;:::i;:::-;;;;;;;;:21;;;6200:4;6205:1;6200:7;;;;;;;;:::i;:::-;;;;;;;;6209:4;6214:1;6209:7;;;;;;;;:::i;:::-;;;;;;;;6178:39;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6219:8;6157:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6150:79;;;;:::i;:::-;;6240:21;6271:4;6290:1;6276:4;:11;:15;;;;:::i;:::-;6271:21;;;;;;;;:::i;:::-;;;;;;;;6264:39;;;6304:2;6264:43;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6240:67;;6318:26;6324:9;6335:4;6341:2;6318:5;:26::i;:::-;6355:23;6427:13;6388:4;6407:1;6393:4;:11;:15;;;;:::i;:::-;6388:21;;;;;;;;:::i;:::-;;;;;;;;6381:39;;;6421:2;6381:43;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:59;;;;:::i;:::-;6355:85;;6472:12;6454:15;:30;6451:308;;;6500:17;6542:15;6520:19;:37;;;;:::i;:::-;6500:57;;6610:12;6598:9;:24;6572:106;;;;;;;;;;;;:::i;:::-;;;;;;;;;6698:49;6710:19;6731:15;6698:49;;;;;;;:::i;:::-;;;;;;;;6485:274;6451:308;5776:990;;;;5573:1193;;;;;:::o;4457:1108::-;4688:27;4718:39;4731:8;4741:9;4752:4;4718:12;:39::i;:::-;4688:69;;4813:12;4790:19;:35;;4768:122;;;;;;;;;;;;:::i;:::-;;;;;;;;;4901:127;4947:4;4952:1;4947:7;;;;;;;;:::i;:::-;;;;;;;;4956:10;4968:9;4978:1;4968:12;;;;;;;;:::i;:::-;;;;;;;;:21;;;4990:4;4995:1;4990:7;;;;;;;;:::i;:::-;;;;;;;;4999:4;5004:1;4999:7;;;;;;;;:::i;:::-;;;;;;;;4968:39;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5009:8;4901:31;:127::i;:::-;5039:21;5070:4;5089:1;5075:4;:11;:15;;;;:::i;:::-;5070:21;;;;;;;;:::i;:::-;;;;;;;;5063:39;;;5103:2;5063:43;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5039:67;;5117:26;5123:9;5134:4;5140:2;5117:5;:26::i;:::-;5154:23;5226:13;5187:4;5206:1;5192:4;:11;:15;;;;:::i;:::-;5187:21;;;;;;;;:::i;:::-;;;;;;;;5180:39;;;5220:2;5180:43;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:59;;;;:::i;:::-;5154:85;;5271:12;5253:15;:30;5250:308;;;5299:17;5341:15;5319:19;:37;;;;:::i;:::-;5299:57;;5409:12;5397:9;:24;5371:106;;;;;;;;;;;;:::i;:::-;;;;;;;;;5497:49;5509:19;5530:15;5497:49;;;;;;;:::i;:::-;;;;;;;;5284:274;5250:308;4677:888;;;4457:1108;;;;;;:::o;6774:1211::-;7011:27;7041:39;7054:8;7064:9;7075:4;7041:12;:39::i;:::-;7011:69;;7136:12;7113:19;:35;;7091:122;;;;;;;;;;;;:::i;:::-;;;;;;;;;4326:42;7232:29;;:4;7251:1;7237:4;:11;:15;;;;:::i;:::-;7232:21;;;;;;;;:::i;:::-;;;;;;;;:29;;;7224:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;7300:127;7346:4;7351:1;7346:7;;;;;;;;:::i;:::-;;;;;;;;7355:10;7367:9;7377:1;7367:12;;;;;;;;:::i;:::-;;;;;;;;:21;;;7389:4;7394:1;7389:7;;;;;;;;:::i;:::-;;;;;;;;7398:4;7403:1;7398:7;;;;;;;;:::i;:::-;;;;;;;;7367:39;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7408:8;7300:31;:127::i;:::-;7438:37;7444:9;7455:4;7469;7438:5;:37::i;:::-;7486:23;4326:42;7512:22;;;7543:4;7512:37;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7486:63;;4326:42;7560:20;;;7581:15;7560:37;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7608:51;7639:2;7643:15;7608:30;:51::i;:::-;7691:12;7673:15;:30;7670:308;;;7719:17;7761:15;7739:19;:37;;;;:::i;:::-;7719:57;;7829:12;7817:9;:24;7791:106;;;;;;;;;;;;:::i;:::-;;;;;;;;;7917:49;7929:19;7950:15;7917:49;;;;;;;:::i;:::-;;;;;;;;7704:274;7670:308;7000:985;;6774:1211;;;;;;:::o;8949:470::-;9064:7;9107:1;9092:4;:11;:16;;:53;;;;;9144:1;9132:4;:11;:13;;;;:::i;:::-;9112:9;:16;:33;9092:53;9084:91;;;;;;;;;;;;:::i;:::-;;;;;;;;;9190:9;9202;:16;9190:28;;9186:202;9224:1;9220;:5;9186:202;;;9255:9;9265:1;9255:12;;;;;;;;:::i;:::-;;;;;;;;:24;;;9298:6;9324:4;9333:1;9329;:5;;;;:::i;:::-;9324:11;;;;;;;;:::i;:::-;;;;;;;;9354:4;9359:1;9354:7;;;;;;;;:::i;:::-;;;;;;;;9255:121;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9246:130;;9227:3;;;;;:::i;:::-;;;;9186:202;;;;9405:6;9398:13;;8949:470;;;;;:::o;7993:468::-;8101:9;8097:357;8116:9;:16;8112:1;:20;8097:357;;;8153:9;8163:1;8153:12;;;;;;;;:::i;:::-;;;;;;;;:20;;;8192:4;8197:1;8192:7;;;;;;;;:::i;:::-;;;;;;;;8218:4;8227:1;8223;:5;;;;:::i;:::-;8218:11;;;;;;;;:::i;:::-;;;;;;;;8272:1;8253:9;:16;:20;;;;:::i;:::-;8248:1;:25;:179;;8315:9;8329:1;8325;:5;;;;:::i;:::-;8315:16;;;;;;;;:::i;:::-;;;;;;;;:25;;;8363:4;8372:1;8368;:5;;;;:::i;:::-;8363:11;;;;;;;;:::i;:::-;;;;;;;;8397:4;8406:1;8402;:5;;;;:::i;:::-;8397:11;;;;;;;;:::i;:::-;;;;;;;;8315:112;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8248:179;;;8293:2;8248:179;8153:289;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8134:3;;;;;:::i;:::-;;;;8097:357;;;;7993:468;;;:::o;2125:323::-;2225:12;2239:17;2260:5;:10;;2294;2306:4;2312:2;2316:5;2271:51;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2260:63;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2224:99;;;;2342:7;:57;;;;;2369:1;2354:4;:11;:16;:44;;;;2385:4;2374:24;;;;;;;;;;;;:::i;:::-;2354:44;2342:57;2334:106;;;;;;;;;;;;:::i;:::-;;;;;;;;;2213:235;;2125:323;;;;:::o;2456:195::-;2526:12;2543:2;:7;;2557:5;2574:1;2564:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2543:34;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2525:52;;;2596:7;2588:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;2514:137;2456:195;;:::o;24:722:1:-;120:5;145:81;161:64;218:6;161:64;:::i;:::-;145:81;:::i;:::-;136:90;;246:5;275:6;268:5;261:21;309:4;302:5;298:16;291:23;;335:6;385:3;377:4;369:6;365:17;360:3;356:27;353:36;350:143;;;404:79;;:::i;:::-;350:143;517:1;502:238;527:6;524:1;521:13;502:238;;;595:3;624:37;657:3;645:10;624:37;:::i;:::-;619:3;612:50;691:4;686:3;682:14;675:21;;725:4;720:3;716:14;709:21;;562:178;549:1;546;542:9;537:14;;502:238;;;506:14;126:620;;24:722;;;;;:::o;784:785::-;901:5;926:102;942:85;1020:6;942:85;:::i;:::-;926:102;:::i;:::-;917:111;;1048:5;1077:6;1070:5;1063:21;1111:4;1104:5;1100:16;1093:23;;1137:6;1187:3;1179:4;1171:6;1167:17;1162:3;1158:27;1155:36;1152:143;;;1206:79;;:::i;:::-;1152:143;1319:1;1304:259;1329:6;1326:1;1323:13;1304:259;;;1397:3;1426:58;1480:3;1468:10;1426:58;:::i;:::-;1421:3;1414:71;1514:4;1509:3;1505:14;1498:21;;1548:4;1543:3;1539:14;1532:21;;1364:199;1351:1;1348;1344:9;1339:14;;1304:259;;;1308:14;907:662;;784:785;;;;;:::o;1575:139::-;1621:5;1659:6;1646:20;1637:29;;1675:33;1702:5;1675:33;:::i;:::-;1575:139;;;;:::o;1720:143::-;1777:5;1808:6;1802:13;1793:22;;1824:33;1851:5;1824:33;:::i;:::-;1720:143;;;;:::o;1886:370::-;1957:5;2006:3;1999:4;1991:6;1987:17;1983:27;1973:122;;2014:79;;:::i;:::-;1973:122;2131:6;2118:20;2156:94;2246:3;2238:6;2231:4;2223:6;2219:17;2156:94;:::i;:::-;2147:103;;1963:293;1886:370;;;;:::o;2294:412::-;2386:5;2435:3;2428:4;2420:6;2416:17;2412:27;2402:122;;2443:79;;:::i;:::-;2402:122;2560:6;2547:20;2585:115;2696:3;2688:6;2681:4;2673:6;2669:17;2585:115;:::i;:::-;2576:124;;2392:314;2294:412;;;;:::o;2712:137::-;2766:5;2797:6;2791:13;2782:22;;2813:30;2837:5;2813:30;:::i;:::-;2712:137;;;;:::o;2855:181::-;2922:5;2960:6;2947:20;2938:29;;2976:54;3024:5;2976:54;:::i;:::-;2855:181;;;;:::o;3042:139::-;3088:5;3126:6;3113:20;3104:29;;3142:33;3169:5;3142:33;:::i;:::-;3042:139;;;;:::o;3187:143::-;3244:5;3275:6;3269:13;3260:22;;3291:33;3318:5;3291:33;:::i;:::-;3187:143;;;;:::o;3336:351::-;3406:6;3455:2;3443:9;3434:7;3430:23;3426:32;3423:119;;;3461:79;;:::i;:::-;3423:119;3581:1;3606:64;3662:7;3653:6;3642:9;3638:22;3606:64;:::i;:::-;3596:74;;3552:128;3336:351;;;;:::o;3693:345::-;3760:6;3809:2;3797:9;3788:7;3784:23;3780:32;3777:119;;;3815:79;;:::i;:::-;3777:119;3935:1;3960:61;4013:7;4004:6;3993:9;3989:22;3960:61;:::i;:::-;3950:71;;3906:125;3693:345;;;;:::o;4044:351::-;4114:6;4163:2;4151:9;4142:7;4138:23;4134:32;4131:119;;;4169:79;;:::i;:::-;4131:119;4289:1;4314:64;4370:7;4361:6;4350:9;4346:22;4314:64;:::i;:::-;4304:74;;4260:128;4044:351;;;;:::o;4401:1081::-;4549:6;4557;4565;4614:2;4602:9;4593:7;4589:23;4585:32;4582:119;;;4620:79;;:::i;:::-;4582:119;4740:1;4765:53;4810:7;4801:6;4790:9;4786:22;4765:53;:::i;:::-;4755:63;;4711:117;4895:2;4884:9;4880:18;4867:32;4926:18;4918:6;4915:30;4912:117;;;4948:79;;:::i;:::-;4912:117;5053:99;5144:7;5135:6;5124:9;5120:22;5053:99;:::i;:::-;5043:109;;4838:324;5229:2;5218:9;5214:18;5201:32;5260:18;5252:6;5249:30;5246:117;;;5282:79;;:::i;:::-;5246:117;5387:78;5457:7;5448:6;5437:9;5433:22;5387:78;:::i;:::-;5377:88;;5172:303;4401:1081;;;;;:::o;5488:1373::-;5654:6;5662;5670;5678;5686;5735:3;5723:9;5714:7;5710:23;5706:33;5703:120;;;5742:79;;:::i;:::-;5703:120;5862:1;5887:53;5932:7;5923:6;5912:9;5908:22;5887:53;:::i;:::-;5877:63;;5833:117;5989:2;6015:53;6060:7;6051:6;6040:9;6036:22;6015:53;:::i;:::-;6005:63;;5960:118;6145:2;6134:9;6130:18;6117:32;6176:18;6168:6;6165:30;6162:117;;;6198:79;;:::i;:::-;6162:117;6303:99;6394:7;6385:6;6374:9;6370:22;6303:99;:::i;:::-;6293:109;;6088:324;6479:2;6468:9;6464:18;6451:32;6510:18;6502:6;6499:30;6496:117;;;6532:79;;:::i;:::-;6496:117;6637:78;6707:7;6698:6;6687:9;6683:22;6637:78;:::i;:::-;6627:88;;6422:303;6764:3;6791:53;6836:7;6827:6;6816:9;6812:22;6791:53;:::i;:::-;6781:63;;6735:119;5488:1373;;;;;;;;:::o;6867:1519::-;7042:6;7050;7058;7066;7074;7082;7131:3;7119:9;7110:7;7106:23;7102:33;7099:120;;;7138:79;;:::i;:::-;7099:120;7258:1;7283:53;7328:7;7319:6;7308:9;7304:22;7283:53;:::i;:::-;7273:63;;7229:117;7385:2;7411:53;7456:7;7447:6;7436:9;7432:22;7411:53;:::i;:::-;7401:63;;7356:118;7513:2;7539:53;7584:7;7575:6;7564:9;7560:22;7539:53;:::i;:::-;7529:63;;7484:118;7669:2;7658:9;7654:18;7641:32;7700:18;7692:6;7689:30;7686:117;;;7722:79;;:::i;:::-;7686:117;7827:99;7918:7;7909:6;7898:9;7894:22;7827:99;:::i;:::-;7817:109;;7612:324;8003:3;7992:9;7988:19;7975:33;8035:18;8027:6;8024:30;8021:117;;;8057:79;;:::i;:::-;8021:117;8162:78;8232:7;8223:6;8212:9;8208:22;8162:78;:::i;:::-;8152:88;;7946:304;8289:3;8316:53;8361:7;8352:6;8341:9;8337:22;8316:53;:::i;:::-;8306:63;;8260:119;6867:1519;;;;;;;;:::o;8392:118::-;8479:24;8497:5;8479:24;:::i;:::-;8474:3;8467:37;8392:118;;:::o;8516:373::-;8620:3;8648:38;8680:5;8648:38;:::i;:::-;8702:88;8783:6;8778:3;8702:88;:::i;:::-;8695:95;;8799:52;8844:6;8839:3;8832:4;8825:5;8821:16;8799:52;:::i;:::-;8876:6;8871:3;8867:16;8860:23;;8624:265;8516:373;;;;:::o;8895:366::-;9037:3;9058:67;9122:2;9117:3;9058:67;:::i;:::-;9051:74;;9134:93;9223:3;9134:93;:::i;:::-;9252:2;9247:3;9243:12;9236:19;;8895:366;;;:::o;9267:::-;9409:3;9430:67;9494:2;9489:3;9430:67;:::i;:::-;9423:74;;9506:93;9595:3;9506:93;:::i;:::-;9624:2;9619:3;9615:12;9608:19;;9267:366;;;:::o;9639:::-;9781:3;9802:67;9866:2;9861:3;9802:67;:::i;:::-;9795:74;;9878:93;9967:3;9878:93;:::i;:::-;9996:2;9991:3;9987:12;9980:19;;9639:366;;;:::o;10011:::-;10153:3;10174:67;10238:2;10233:3;10174:67;:::i;:::-;10167:74;;10250:93;10339:3;10250:93;:::i;:::-;10368:2;10363:3;10359:12;10352:19;;10011:366;;;:::o;10383:::-;10525:3;10546:67;10610:2;10605:3;10546:67;:::i;:::-;10539:74;;10622:93;10711:3;10622:93;:::i;:::-;10740:2;10735:3;10731:12;10724:19;;10383:366;;;:::o;10755:::-;10897:3;10918:67;10982:2;10977:3;10918:67;:::i;:::-;10911:74;;10994:93;11083:3;10994:93;:::i;:::-;11112:2;11107:3;11103:12;11096:19;;10755:366;;;:::o;11127:118::-;11214:24;11232:5;11214:24;:::i;:::-;11209:3;11202:37;11127:118;;:::o;11251:271::-;11381:3;11403:93;11492:3;11483:6;11403:93;:::i;:::-;11396:100;;11513:3;11506:10;;11251:271;;;;:::o;11528:222::-;11621:4;11659:2;11648:9;11644:18;11636:26;;11672:71;11740:1;11729:9;11725:17;11716:6;11672:71;:::i;:::-;11528:222;;;;:::o;11756:332::-;11877:4;11915:2;11904:9;11900:18;11892:26;;11928:71;11996:1;11985:9;11981:17;11972:6;11928:71;:::i;:::-;12009:72;12077:2;12066:9;12062:18;12053:6;12009:72;:::i;:::-;11756:332;;;;;:::o;12094:442::-;12243:4;12281:2;12270:9;12266:18;12258:26;;12294:71;12362:1;12351:9;12347:17;12338:6;12294:71;:::i;:::-;12375:72;12443:2;12432:9;12428:18;12419:6;12375:72;:::i;:::-;12457;12525:2;12514:9;12510:18;12501:6;12457:72;:::i;:::-;12094:442;;;;;;:::o;12542:::-;12691:4;12729:2;12718:9;12714:18;12706:26;;12742:71;12810:1;12799:9;12795:17;12786:6;12742:71;:::i;:::-;12823:72;12891:2;12880:9;12876:18;12867:6;12823:72;:::i;:::-;12905;12973:2;12962:9;12958:18;12949:6;12905:72;:::i;:::-;12542:442;;;;;;:::o;12990:332::-;13111:4;13149:2;13138:9;13134:18;13126:26;;13162:71;13230:1;13219:9;13215:17;13206:6;13162:71;:::i;:::-;13243:72;13311:2;13300:9;13296:18;13287:6;13243:72;:::i;:::-;12990:332;;;;;:::o;13328:419::-;13494:4;13532:2;13521:9;13517:18;13509:26;;13581:9;13575:4;13571:20;13567:1;13556:9;13552:17;13545:47;13609:131;13735:4;13609:131;:::i;:::-;13601:139;;13328:419;;;:::o;13753:::-;13919:4;13957:2;13946:9;13942:18;13934:26;;14006:9;14000:4;13996:20;13992:1;13981:9;13977:17;13970:47;14034:131;14160:4;14034:131;:::i;:::-;14026:139;;13753:419;;;:::o;14178:::-;14344:4;14382:2;14371:9;14367:18;14359:26;;14431:9;14425:4;14421:20;14417:1;14406:9;14402:17;14395:47;14459:131;14585:4;14459:131;:::i;:::-;14451:139;;14178:419;;;:::o;14603:::-;14769:4;14807:2;14796:9;14792:18;14784:26;;14856:9;14850:4;14846:20;14842:1;14831:9;14827:17;14820:47;14884:131;15010:4;14884:131;:::i;:::-;14876:139;;14603:419;;;:::o;15028:::-;15194:4;15232:2;15221:9;15217:18;15209:26;;15281:9;15275:4;15271:20;15267:1;15256:9;15252:17;15245:47;15309:131;15435:4;15309:131;:::i;:::-;15301:139;;15028:419;;;:::o;15453:::-;15619:4;15657:2;15646:9;15642:18;15634:26;;15706:9;15700:4;15696:20;15692:1;15681:9;15677:17;15670:47;15734:131;15860:4;15734:131;:::i;:::-;15726:139;;15453:419;;;:::o;15878:222::-;15971:4;16009:2;15998:9;15994:18;15986:26;;16022:71;16090:1;16079:9;16075:17;16066:6;16022:71;:::i;:::-;15878:222;;;;:::o;16106:442::-;16255:4;16293:2;16282:9;16278:18;16270:26;;16306:71;16374:1;16363:9;16359:17;16350:6;16306:71;:::i;:::-;16387:72;16455:2;16444:9;16440:18;16431:6;16387:72;:::i;:::-;16469;16537:2;16526:9;16522:18;16513:6;16469:72;:::i;:::-;16106:442;;;;;;:::o;16554:332::-;16675:4;16713:2;16702:9;16698:18;16690:26;;16726:71;16794:1;16783:9;16779:17;16770:6;16726:71;:::i;:::-;16807:72;16875:2;16864:9;16860:18;16851:6;16807:72;:::i;:::-;16554:332;;;;;:::o;16892:129::-;16926:6;16953:20;;:::i;:::-;16943:30;;16982:33;17010:4;17002:6;16982:33;:::i;:::-;16892:129;;;:::o;17027:75::-;17060:6;17093:2;17087:9;17077:19;;17027:75;:::o;17108:311::-;17185:4;17275:18;17267:6;17264:30;17261:56;;;17297:18;;:::i;:::-;17261:56;17347:4;17339:6;17335:17;17327:25;;17407:4;17401;17397:15;17389:23;;17108:311;;;:::o;17425:332::-;17523:4;17613:18;17605:6;17602:30;17599:56;;;17635:18;;:::i;:::-;17599:56;17685:4;17677:6;17673:17;17665:25;;17745:4;17739;17735:15;17727:23;;17425:332;;;:::o;17763:98::-;17814:6;17848:5;17842:12;17832:22;;17763:98;;;:::o;17867:147::-;17968:11;18005:3;17990:18;;17867:147;;;;:::o;18020:169::-;18104:11;18138:6;18133:3;18126:19;18178:4;18173:3;18169:14;18154:29;;18020:169;;;;:::o;18195:305::-;18235:3;18254:20;18272:1;18254:20;:::i;:::-;18249:25;;18288:20;18306:1;18288:20;:::i;:::-;18283:25;;18442:1;18374:66;18370:74;18367:1;18364:81;18361:107;;;18448:18;;:::i;:::-;18361:107;18492:1;18489;18485:9;18478:16;;18195:305;;;;:::o;18506:191::-;18546:4;18566:20;18584:1;18566:20;:::i;:::-;18561:25;;18600:20;18618:1;18600:20;:::i;:::-;18595:25;;18639:1;18636;18633:8;18630:34;;;18644:18;;:::i;:::-;18630:34;18689:1;18686;18682:9;18674:17;;18506:191;;;;:::o;18703:96::-;18740:7;18769:24;18787:5;18769:24;:::i;:::-;18758:35;;18703:96;;;:::o;18805:90::-;18839:7;18882:5;18875:13;18868:21;18857:32;;18805:90;;;:::o;18901:117::-;18959:7;18988:24;19006:5;18988:24;:::i;:::-;18977:35;;18901:117;;;:::o;19024:126::-;19061:7;19101:42;19094:5;19090:54;19079:65;;19024:126;;;:::o;19156:77::-;19193:7;19222:5;19211:16;;19156:77;;;:::o;19239:307::-;19307:1;19317:113;19331:6;19328:1;19325:13;19317:113;;;19416:1;19411:3;19407:11;19401:18;19397:1;19392:3;19388:11;19381:39;19353:2;19350:1;19346:10;19341:15;;19317:113;;;19448:6;19445:1;19442:13;19439:101;;;19528:1;19519:6;19514:3;19510:16;19503:27;19439:101;19288:258;19239:307;;;:::o;19552:171::-;19591:3;19614:24;19632:5;19614:24;:::i;:::-;19605:33;;19660:4;19653:5;19650:15;19647:41;;;19668:18;;:::i;:::-;19647:41;19715:1;19708:5;19704:13;19697:20;;19552:171;;;:::o;19729:281::-;19812:27;19834:4;19812:27;:::i;:::-;19804:6;19800:40;19942:6;19930:10;19927:22;19906:18;19894:10;19891:34;19888:62;19885:88;;;19953:18;;:::i;:::-;19885:88;19993:10;19989:2;19982:22;19772:238;19729:281;;:::o;20016:233::-;20055:3;20078:24;20096:5;20078:24;:::i;:::-;20069:33;;20124:66;20117:5;20114:77;20111:103;;;20194:18;;:::i;:::-;20111:103;20241:1;20234:5;20230:13;20223:20;;20016:233;;;:::o;20255:180::-;20303:77;20300:1;20293:88;20400:4;20397:1;20390:15;20424:4;20421:1;20414:15;20441:180;20489:77;20486:1;20479:88;20586:4;20583:1;20576:15;20610:4;20607:1;20600:15;20627:180;20675:77;20672:1;20665:88;20772:4;20769:1;20762:15;20796:4;20793:1;20786:15;20813:180;20861:77;20858:1;20851:88;20958:4;20955:1;20948:15;20982:4;20979:1;20972:15;20999:117;21108:1;21105;21098:12;21122:117;21231:1;21228;21221:12;21245:117;21354:1;21351;21344:12;21368:117;21477:1;21474;21467:12;21491:102;21532:6;21583:2;21579:7;21574:2;21567:5;21563:14;21559:28;21549:38;;21491:102;;;:::o;21599:175::-;21739:27;21735:1;21727:6;21723:14;21716:51;21599:175;:::o;21780:173::-;21920:25;21916:1;21908:6;21904:14;21897:49;21780:173;:::o;21959:170::-;22099:22;22095:1;22087:6;22083:14;22076:46;21959:170;:::o;22135:222::-;22275:34;22271:1;22263:6;22259:14;22252:58;22344:5;22339:2;22331:6;22327:15;22320:30;22135:222;:::o;22363:223::-;22503:34;22499:1;22491:6;22487:14;22480:58;22572:6;22567:2;22559:6;22555:15;22548:31;22363:223;:::o;22592:224::-;22732:34;22728:1;22720:6;22716:14;22709:58;22801:7;22796:2;22788:6;22784:15;22777:32;22592:224;:::o;22822:122::-;22895:24;22913:5;22895:24;:::i;:::-;22888:5;22885:35;22875:63;;22934:1;22931;22924:12;22875:63;22822:122;:::o;22950:116::-;23020:21;23035:5;23020:21;:::i;:::-;23013:5;23010:32;23000:60;;23056:1;23053;23046:12;23000:60;22950:116;:::o;23072:164::-;23166:45;23205:5;23166:45;:::i;:::-;23159:5;23156:56;23146:84;;23226:1;23223;23216:12;23146:84;23072:164;:::o;23242:122::-;23315:24;23333:5;23315:24;:::i;:::-;23308:5;23305:35;23295:63;;23354:1;23351;23344:12;23295:63;23242:122;:::o

Swarm Source

ipfs://45f7c62572836db112c8c6061fcf858f1d847b49cb5ff3d4854c367070052231
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.