Contract 0x44e5436ae19aa2bd76c5c397e7a622e3d35d6059

 
Txn Hash
Block
From
To
Value [Txn Fee]
0x93dd94c1afc09ca0b4b71f3477581481406d51ccaffdd8587cfb186d431be55182908292021-06-14 13:19:529 days 2 hrs ago0xc084005208c69fd4f85a40fde87b233a8be29e65 IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.00012471
0x7dab0cac1eac732d76c6c24cbdb09edad9024e887b60daa55fbe45ba1813698e82908262021-06-14 13:19:439 days 2 hrs ago0xc084005208c69fd4f85a40fde87b233a8be29e65 IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000072855
0x154204624e102ebbe16faaf8cfa69586fd6cc15b725743e82fd42f1224ab5e7d81593642021-06-09 23:01:1513 days 16 hrs ago0xb8cba80cfcd351b5b47b5954cbd63cae7e0ddb00 IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.00022263
0x2d6ca91b741e04b2301b5fafb9b501ccc98bf4b3ec0ad7b18afb64ee637a5a0079633482021-06-03 3:15:1820 days 12 hrs ago0x9e0532ce56e6a101725cf9aba1fe233d4d85998a IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.00022263
0x23b524cd801ebde5d894af51a08559a8351bbe865aef6d552f1d503b058b01bf79415982021-06-02 9:04:1421 days 6 hrs ago0x4c9db35002373d50988ba91bae5afc8f28d6fcf1 IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000072855
0x39a71a570f38f1fff0c1438a72731af1f6b16316fd94aa4f37350be60c25917578381132021-05-29 18:32:0724 days 21 hrs ago0x5ca0b84b5576ce2416e16d97a1e1ec7971bf5f7d IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000072855
0x6950415adc3647a775ba8c15a3ea0c1a9dbd0c94b492c5cf82b25adac9e9979d77896762021-05-28 2:02:4726 days 13 hrs ago0xed5b2e0b05a6b6d4cdff589aff7c51d79c6edc87 IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.00022263
0x8f1b1a351ccd3895b89aeaba10343fd6f34ff5079192e723494d99c70a3feeb477832262021-05-27 20:38:4426 days 19 hrs ago0x1a71dcdc19f748ed5eea4d1db48f0db7f9fcf10c IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.00022263
0xe50cd3cb02893f4888724bd82c758dd16067949fc3b64e5475357fefa5c6bac377105352021-05-25 7:37:1829 days 8 hrs ago0x7a2f33728fe2abb2f1f7d155d7b4ecbbe6300a8e IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000267156
0xdd3189fd7e5fbd8333369a3e6431f518101c12818b2e0aa5caa48f6527466f6977102482021-05-25 7:22:5029 days 8 hrs ago0xbf3648f5baaa13e6860494e9b48ae0273f76d547 IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000267156
0x0ef8d6a0c3ed985889bc1688d6bd912f31538b3a6a344a3a47b0c059edf204a576676882021-05-23 19:45:2230 days 20 hrs ago0xc3f1adc798ae4fecf3ef976f9f495c5c22c94251 IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000072855
0x6989396d8692058dcdfd6a5a5240edfa46fc9761c83ea5be843519a54d2432e176676862021-05-23 19:45:1630 days 20 hrs ago0xc3f1adc798ae4fecf3ef976f9f495c5c22c94251 IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000072855
0xe02bd60cf1e71152891526477d79cb8d2dc31fbc6c7bcf30ae40c218b616f61376649912021-05-23 17:30:3030 days 22 hrs ago0x28c5135603a890b20c4e74ab47190b9747d94c2f IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000072855
0x44a3589ebc7a9ddca080d3f32cfb00389200dddd0b38fd24505b2d7ea32f281e76647032021-05-23 17:16:0630 days 22 hrs ago0x32d9cd793296eaec957577f5396921fcc921507e IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000072855
0x81beebb24e389e02adb31b49bf287f474e33179a62be0a238ff8dccd40393d2376360802021-05-22 17:19:1431 days 22 hrs ago0x8d9f03dec5e8dfec1b5e3e9b8a2dbfe2b882ba9e IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000072855
0x3d8f9e463636ba3a5411f83daf9aa70a0b088cb82e8e3d4107b0c91ebb03204c75487682021-05-19 16:13:0134 days 23 hrs ago0x9f4d4998f01558c146122141a9d13af0a2919c2f IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000072855
0x2833d5d9e677d163463e09c4e76415d5a05caa5b5b50a4332eea7c6b21f1a54675469862021-05-19 14:43:3635 days 1 hr ago0x77f1a0d4111ab8e4c525d37b83e71882fb1a7759 IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.0002938716
0x1e3457a7d99c21f6ebca6adfd4b89cce55293dff9e582d330f57fd192ed1518875385712021-05-19 7:39:4535 days 8 hrs ago0x4892bcd9da536be2ec33097e0428a793c1120951 IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000072855
0xd25dfceffc81318c1d7cf1c26351f31cbb524e21b94a05bd8677d92a8f44988875374572021-05-19 6:36:5735 days 9 hrs ago0x639db8ea5529083dddaf4a87816b395691a26a5f IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000072855
0x40065498690d9e4cb5e31bab1d5084c1178853d984daff5788d7d1df95eed94e75245292021-05-18 19:40:1035 days 20 hrs ago0x92883f8d2051a9014394303c236f3ec31b00f0fb IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.00012663
0x0d094add54fa24ce32359dfe66e91b1ea0203e773d762b604bee158e44e2765e75245232021-05-18 19:39:5235 days 20 hrs ago0x92883f8d2051a9014394303c236f3ec31b00f0fb IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.00022263
0x245c696f1d2d9786f3ea01f74ace48d8a86a6605ae471156bdb0fa4fd6f5f80a74822502021-05-17 7:48:0437 days 8 hrs ago0xd3e7d44c7c04482d072c261b73bfc3ddd0319fb1 IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.00022263
0xef904291071884d5dbd98c6d2232f499ab48620cfec984ee84550e1c298e6a3074139272021-05-14 21:49:3239 days 18 hrs ago0xb0fd0d40808ec1f99c660b74f8fcbce84565fbf8 IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.00022263
0x067e395dc60f6eefe21031905e5a81bdfd1b8904826aab373722e8e8bd8d9bbf73980682021-05-14 8:24:1240 days 7 hrs ago0x32d9cd793296eaec957577f5396921fcc921507e IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000486785
0x7be8830603326739dc30fbe59776f6a9d55360df22e094ab4c0fea12c73a874073798842021-05-13 17:07:5240 days 22 hrs ago0x25aaf0de57ed4c52e021dd49471f9e65961af1f2 IN  0x44e5436ae19aa2bd76c5c397e7a622e3d35d60590 BNB0.000311682
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
MoonCandyDAO

Compiler Version
v0.6.12+commit.27d51765

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

//https://t.me/MoonCandyDAOCHAT First Candy on the moon!
pragma solidity ^0.6.0;


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

    function _msgData() internal view virtual returns (bytes memory) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

interface IBEP20 {
   
    function totalSupply() external view returns (uint256);

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

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

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

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

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

   
    event Transfer(address indexed from, address indexed to, uint256 value);

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


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

        return c;
    }

   
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

   
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 0;
        }

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

        return c;
    }

    
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

   
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

/**
 * @dev Collection of functions related to the address type
 */
library Address {
   
    function isContract(address account) internal view returns (bool) {
        // According to EIP-1052, 0x0 is the value returned for not-yet created accounts
        // and 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 is returned
        // for accounts without code, i.e. `keccak256('')`
        bytes32 codehash;
        bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;
        // solhint-disable-next-line no-inline-assembly
        assembly { codehash := extcodehash(account) }
        return (codehash != accountHash && codehash != 0x0);
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        // solhint-disable-next-line avoid-low-level-calls, avoid-call-value
        (bool success, ) = recipient.call{ value: amount }("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

   
    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
      return functionCall(target, data, "Address: low-level call failed");
    }

    
    function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        return _functionCallWithValue(target, data, 0, errorMessage);
    }

  
    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }

    function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        return _functionCallWithValue(target, data, value, errorMessage);
    }

    function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) {
        require(isContract(target), "Address: call to non-contract");

        // solhint-disable-next-line avoid-low-level-calls
        (bool success, bytes memory returndata) = target.call{ value: weiValue }(data);
        if (success) {
            return returndata;
        } else {
            // Look for revert reason and bubble it up if present
            if (returndata.length > 0) {
                // The easiest way to bubble the revert reason is using memory via assembly

                // solhint-disable-next-line no-inline-assembly
                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}


contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor () internal {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

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

    
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

// MCDAO

contract MoonCandyDAO is Context, IBEP20, Ownable {
    using SafeMath for uint256;
    using Address for address;

    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;

    mapping (address => bool) private _isExcluded;
    mapping (address => bool) public  isAllowed;
    
    address[] private _excluded;
    
    string  private constant _NAME = 'MoonCandyDAO';
    string  private constant _SYMBOL = 'MCDAO';
    uint8   private constant _DECIMALS = 9;
   
    uint256 private constant _MAX = ~uint256(0);
    uint256 private constant _DECIMALFACTOR = 10 ** uint256(_DECIMALS);
    uint256 private constant _GRANULARITY = 100;
    
    uint256 private _tTotal = 1000000000000000 * _DECIMALFACTOR;
    uint256 private _rTotal = (_MAX - (_MAX % _tTotal));
    
    uint256 private _tFeeTotal;
    uint256 private _tBurnTotal;
    
    uint256 private _TAX_FEE = 500;
    uint256 private _BURN_FEE = 400;
    uint256 public _MAX_TX_SIZE =1000000000000000 * _DECIMALFACTOR;

bool public isPaused = false;
    constructor () public {
        _rOwned[_msgSender()] = _rTotal;
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    function name() public view returns (string memory) {
        return _NAME;
    }

    function symbol() public view returns (string memory) {
        return _SYMBOL;
    }

    function decimals() public view returns (uint8) {
        return _DECIMALS;
    }

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

    function balanceOf(address account) public view override returns (uint256) {
        if (_isExcluded[account]) return _tOwned[account];
        return tokenFromMagnetion(_rOwned[account]);
    }

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

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

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

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

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "BEP20: decreased allowance below zero"));
        return true;
    }

    function isExcluded(address account) public view returns (bool) {
        return _isExcluded[account];
    }

    function totalFees() public view returns (uint256) {
        return _tFeeTotal;
    }
    
    function totalBurn() public view returns (uint256) {
        return _tBurnTotal;
    }
    
    function deliver(uint256 tAmount) public {
        address sender = _msgSender();
        require(!_isExcluded[sender], "Excluded addresses cannot call this function");
        (uint256 rAmount,,,,,) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rTotal = _rTotal.sub(rAmount);
        _tFeeTotal = _tFeeTotal.add(tAmount);
    }

    function magnetionFromToken(uint256 tAmount, bool deductTransferFee) public view returns(uint256) {
        require(tAmount <= _tTotal, "Amount must be less than supply");
        if (!deductTransferFee) {
            (uint256 rAmount,,,,,) = _getValues(tAmount);
            return rAmount;
        } else {
            (,uint256 rTransferAmount,,,,) = _getValues(tAmount);
            return rTransferAmount;
        }
    }

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

    function excludeAccount(address account) external onlyOwner() {
        require(account != 0x05fF2B0DB69458A0750badebc4f9e13aDd608C7F, 'We can not exclude Uniswap router.');
        require(!_isExcluded[account], "Account is already excluded");
        if(_rOwned[account] > 0) {
            _tOwned[account] = tokenFromMagnetion(_rOwned[account]);
        }
        _isExcluded[account] = true;
        _excluded.push(account);
    }

    function includeAccount(address account) external onlyOwner() {
        require(_isExcluded[account], "Account is already excluded");
        for (uint256 i = 0; i < _excluded.length; i++) {
            if (_excluded[i] == account) {
                _excluded[i] = _excluded[_excluded.length - 1];
                _tOwned[account] = 0;
                _isExcluded[account] = false;
                _excluded.pop();
                break;
            }
        }
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "BEP20: approve from the zero address");
        require(spender != address(0), "BEP20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address sender, address recipient, uint256 amount) private {
        require(sender != address(0), "BEP20: transfer from the zero address");
        require(recipient != address(0), "BEP20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        
        if(sender != owner() && recipient != owner())
            require(amount <= _MAX_TX_SIZE, "Transfer amount exceeds the maxTxAmount.");
        
        if (_isExcluded[sender] && !_isExcluded[recipient]) {
            _transferFromExcluded(sender, recipient, amount);
        } else if (!_isExcluded[sender] && _isExcluded[recipient]) {
            _transferToExcluded(sender, recipient, amount);
        } else if (!_isExcluded[sender] && !_isExcluded[recipient]) {
            _transferStandard(sender, recipient, amount);
        } else if (_isExcluded[sender] && _isExcluded[recipient]) {
            _transferBothExcluded(sender, recipient, amount);
        } else {
            _transferStandard(sender, recipient, amount);
        }
    }

    function _transferStandard(address sender, address recipient, uint256 tAmount) private {
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tBurn) = _getValues(tAmount);
        uint256 rBurn =  tBurn.mul(currentRate);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);       
        _magnetFee(rFee, rBurn, tFee, tBurn);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _transferToExcluded(address sender, address recipient, uint256 tAmount) private {
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tBurn) = _getValues(tAmount);
        uint256 rBurn =  tBurn.mul(currentRate);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);           
        _magnetFee(rFee, rBurn, tFee, tBurn);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _transferFromExcluded(address sender, address recipient, uint256 tAmount) private {
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tBurn) = _getValues(tAmount);
        uint256 rBurn =  tBurn.mul(currentRate);
        _tOwned[sender] = _tOwned[sender].sub(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);   
        _magnetFee(rFee, rBurn, tFee, tBurn);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _transferBothExcluded(address sender, address recipient, uint256 tAmount) private {
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tBurn) = _getValues(tAmount);
        uint256 rBurn =  tBurn.mul(currentRate);
        _tOwned[sender] = _tOwned[sender].sub(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);        
        _magnetFee(rFee, rBurn, tFee, tBurn);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _magnetFee(uint256 rFee, uint256 rBurn, uint256 tFee, uint256 tBurn) private {
        _rTotal = _rTotal.sub(rFee).sub(rBurn);
        _tFeeTotal = _tFeeTotal.add(tFee);
        _tBurnTotal = _tBurnTotal.add(tBurn);
        _tTotal = _tTotal.sub(tBurn);
    }

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

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

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

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

    function _getCurrentSupply() private view returns(uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;      
        for (uint256 i = 0; i < _excluded.length; i++) {
            if (_rOwned[_excluded[i]] > rSupply || _tOwned[_excluded[i]] > tSupply) return (_rTotal, _tTotal);
            rSupply = rSupply.sub(_rOwned[_excluded[i]]);
            tSupply = tSupply.sub(_tOwned[_excluded[i]]);
        }
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }
    
    function _getTaxFee() public view returns(uint256) {
        return _TAX_FEE;
    }
    
    function _getBurnFee() public view returns(uint256) {
        return _BURN_FEE;
    }

    function _getMaxTxAmount() private view returns(uint256) {
        return _MAX_TX_SIZE;
    }
    
    function _setTaxFee(uint256 taxFee) external onlyOwner() {
        _TAX_FEE = taxFee;
    }
    
    function _setBurnFee(uint256 burnFee) external onlyOwner() {
        _BURN_FEE = burnFee;
    }
    
}

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":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_MAX_TX_SIZE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_getBurnFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_getTaxFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"burnFee","type":"uint256"}],"name":"_setBurnFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"taxFee","type":"uint256"}],"name":"_setTaxFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"}],"name":"deliver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeAccount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeAccount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isAllowed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcluded","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isPaused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"},{"internalType":"bool","name":"deductTransferFee","type":"bool"}],"name":"magnetionFromToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"rAmount","type":"uint256"}],"name":"tokenFromMagnetion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalBurn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFees","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","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

6080604052600960ff16600a0a66038d7ea4c6800002600755600754600019816200002657fe5b06600019036008556101f4600b55610190600c55600960ff16600a0a66038d7ea4c6800002600d556000600e60006101000a81548160ff0219169083151502179055503480156200007657600080fd5b50600062000089620001f960201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350600854600160006200013e620001f960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506200018c620001f960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6007546040518082815260200191505060405180910390a362000201565b600033905090565b61399980620002116000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c806370a0823111610104578063b187bd26116100a2578063dd62ed3e11610071578063dd62ed3e14610847578063f2cc0c18146108bf578063f2fde38b14610903578063f84354f114610947576101cf565b8063b187bd2614610731578063babcc53914610751578063c018f579146107ab578063cba0e996146107ed576101cf565b806395d89b41116100de57806395d89b41146105c8578063a457c2d71461064b578063a457fd64146106af578063a9059cbb146106cd576101cf565b806370a0823114610532578063715018a61461058a5780638da5cb5b14610594576101cf565b8063313ce567116101715780633bd5d1731161014b5780633bd5d1731461049a5780633c9f861d146104c85780635880b873146104e65780636a39d32c14610514576101cf565b8063313ce567146103e757806339509351146104085780633b6b19611461046c576101cf565b806313114a9d116101ad57806313114a9d1461030957806318160ddd1461032757806323b872dd146103455780632fbff030146103c9576101cf565b806306fdde03146101d4578063095ea7b3146102575780630f8d8914146102bb575b600080fd5b6101dc61098b565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561021c578082015181840152602081019050610201565b50505050905090810190601f1680156102495780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102a36004803603604081101561026d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109c8565b60405180821515815260200191505060405180910390f35b6102f3600480360360408110156102d157600080fd5b81019080803590602001909291908035151590602001909291905050506109e6565b6040518082815260200191505060405180910390f35b610311610a9d565b6040518082815260200191505060405180910390f35b61032f610aa7565b6040518082815260200191505060405180910390f35b6103b16004803603606081101561035b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ab1565b60405180821515815260200191505060405180910390f35b6103d1610b8a565b6040518082815260200191505060405180910390f35b6103ef610b94565b604051808260ff16815260200191505060405180910390f35b6104546004803603604081101561041e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b9d565b60405180821515815260200191505060405180910390f35b6104986004803603602081101561048257600080fd5b8101908080359060200190929190505050610c50565b005b6104c6600480360360208110156104b057600080fd5b8101908080359060200190929190505050610d22565b005b6104d0610eb3565b6040518082815260200191505060405180910390f35b610512600480360360208110156104fc57600080fd5b8101908080359060200190929190505050610ebd565b005b61051c610f8f565b6040518082815260200191505060405180910390f35b6105746004803603602081101561054857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f99565b6040518082815260200191505060405180910390f35b610592611084565b005b61059c61120a565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6105d0611233565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156106105780820151818401526020810190506105f5565b50505050905090810190601f16801561063d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6106976004803603604081101561066157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611270565b60405180821515815260200191505060405180910390f35b6106b761133d565b6040518082815260200191505060405180910390f35b610719600480360360408110156106e357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611343565b60405180821515815260200191505060405180910390f35b610739611361565b60405180821515815260200191505060405180910390f35b6107936004803603602081101561076757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611374565b60405180821515815260200191505060405180910390f35b6107d7600480360360208110156107c157600080fd5b8101908080359060200190929190505050611394565b6040518082815260200191505060405180910390f35b61082f6004803603602081101561080357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611418565b60405180821515815260200191505060405180910390f35b6108a96004803603604081101561085d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061146e565b6040518082815260200191505060405180910390f35b610901600480360360208110156108d557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506114f5565b005b6109456004803603602081101561091957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118a8565b005b6109896004803603602081101561095d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ab3565b005b60606040518060400160405280600c81526020017f4d6f6f6e43616e647944414f0000000000000000000000000000000000000000815250905090565b60006109dc6109d5611e3d565b8484611e45565b6001905092915050565b6000600754831115610a60576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f416d6f756e74206d757374206265206c657373207468616e20737570706c790081525060200191505060405180910390fd5b81610a80576000610a708461203c565b5050505050905080915050610a97565b6000610a8b8461203c565b50505050915050809150505b92915050565b6000600954905090565b6000600754905090565b6000610abe8484846120a4565b610b7f84610aca611e3d565b610b7a8560405180606001604052806028815260200161381260289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610b30611e3d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125d49092919063ffffffff16565b611e45565b600190509392505050565b6000600b54905090565b60006009905090565b6000610c46610baa611e3d565b84610c418560036000610bbb611e3d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461269490919063ffffffff16565b611e45565b6001905092915050565b610c58611e3d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d18576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600c8190555050565b6000610d2c611e3d565b9050600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610dd1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c815260200180613916602c913960400191505060405180910390fd5b6000610ddc8361203c565b50505050509050610e3581600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461271c90919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e8d8160085461271c90919063ffffffff16565b600881905550610ea88360095461269490919063ffffffff16565b600981905550505050565b6000600a54905090565b610ec5611e3d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f85576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600b8190555050565b6000600c54905090565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561103457600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905061107f565b61107c600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611394565b90505b919050565b61108c611e3d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461114c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600581526020017f4d4344414f000000000000000000000000000000000000000000000000000000815250905090565b600061133361127d611e3d565b8461132e856040518060600160405280602581526020016138cf60259139600360006112a7611e3d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125d49092919063ffffffff16565b611e45565b6001905092915050565b600d5481565b6000611357611350611e3d565b84846120a4565b6001905092915050565b600e60009054906101000a900460ff1681565b60056020528060005260406000206000915054906101000a900460ff1681565b60006008548211156113f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260298152602001806137c36029913960400191505060405180910390fd5b60006113fb612766565b9050611410818461279190919063ffffffff16565b915050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6114fd611e3d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146115bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b7305ff2b0db69458a0750badebc4f9e13add608c7f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611656576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806138f46022913960400191505060405180910390fd5b600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611716576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f4163636f756e7420697320616c7265616479206578636c75646564000000000081525060200191505060405180910390fd5b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411156117ea576117a6600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611394565b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506006819080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6118b0611e3d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611970576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156119f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806137ec6026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b611abb611e3d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b7b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611c3a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f4163636f756e7420697320616c7265616479206578636c75646564000000000081525060200191505060405180910390fd5b60005b600680549050811015611e39578173ffffffffffffffffffffffffffffffffffffffff1660068281548110611c6e57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611e2c57600660016006805490500381548110611cca57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660068281548110611d0257fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506006805480611df257fe5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690559055611e39565b8080600101915050611c3d565b5050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611ecb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061379f6024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611f51576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806139426022913960400191505060405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b60008060008060008060008060006120598a600b54600c546127db565b9250925092506000612069612766565b9050600080600061207c8e878787612897565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561212a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602581526020018061377a6025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156121b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806138ac6023913960400191505060405180910390fd5b60008111612209576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260298152602001806138836029913960400191505060405180910390fd5b61221161120a565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561227f575061224f61120a565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156122e057600d548111156122df576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602881526020018061383a6028913960400191505060405180910390fd5b5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156123835750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561239857612393838383612920565b6125cf565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561243b5750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156124505761244b838383612b9e565b6125ce565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156124f45750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561250957612504838383612e1c565b6125cd565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156125ab5750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156125c0576125bb838383613005565b6125cc565b6125cb838383612e1c565b5b5b5b5b505050565b6000838311158290612681576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561264657808201518184015260208101905061262b565b50505050905090810190601f1680156126735780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b600080828401905083811015612712576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600061275e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506125d4565b905092915050565b6000806000612773613318565b9150915061278a818361279190919063ffffffff16565b9250505090565b60006127d383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506135a9565b905092915050565b60008060008061281a606461280c60646127fe8a8c61366f90919063ffffffff16565b61279190919063ffffffff16565b61279190919063ffffffff16565b905060006128576064612849606461283b8a8d61366f90919063ffffffff16565b61279190919063ffffffff16565b61279190919063ffffffff16565b9050600061288082612872858c61271c90919063ffffffff16565b61271c90919063ffffffff16565b905080838395509550955050505093509350939050565b6000806000806128b0858961366f90919063ffffffff16565b905060006128c7868961366f90919063ffffffff16565b905060006128de878961366f90919063ffffffff16565b90506000612907826128f9858761271c90919063ffffffff16565b61271c90919063ffffffff16565b9050838184965096509650505050509450945094915050565b600061292a612766565b905060008060008060008061293e8861203c565b955095509550955095509550600061295f888361366f90919063ffffffff16565b90506129b389600260008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461271c90919063ffffffff16565b600260008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612a4887600160008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461271c90919063ffffffff16565b600160008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612add86600160008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461269490919063ffffffff16565b600160008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612b2c858285856136f5565b8973ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a35050505050505050505050565b6000612ba8612766565b9050600080600080600080612bbc8861203c565b9550955095509550955095506000612bdd888361366f90919063ffffffff16565b9050612c3187600160008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461271c90919063ffffffff16565b600160008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612cc684600260008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461269490919063ffffffff16565b600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612d5b86600160008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461269490919063ffffffff16565b600160008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612daa858285856136f5565b8973ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a35050505050505050505050565b6000612e26612766565b9050600080600080600080612e3a8861203c565b9550955095509550955095506000612e5b888361366f90919063ffffffff16565b9050612eaf87600160008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461271c90919063ffffffff16565b600160008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612f4486600160008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461269490919063ffffffff16565b600160008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612f93858285856136f5565b8973ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a35050505050505050505050565b600061300f612766565b90506000806000806000806130238861203c565b9550955095509550955095506000613044888361366f90919063ffffffff16565b905061309889600260008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461271c90919063ffffffff16565b600260008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061312d87600160008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461271c90919063ffffffff16565b600160008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506131c284600260008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461269490919063ffffffff16565b600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061325786600160008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461269490919063ffffffff16565b600160008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506132a6858285856136f5565b8973ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a35050505050505050505050565b600080600060085490506000600754905060005b60068054905081101561356c5782600160006006848154811061334b57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054118061343257508160026000600684815481106133ca57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561344957600854600754945094505050506135a5565b6134d2600160006006848154811061345d57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548461271c90919063ffffffff16565b925061355d60026000600684815481106134e857fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361271c90919063ffffffff16565b9150808060010191505061332c565b5061358460075460085461279190919063ffffffff16565b82101561359c576008546007549350935050506135a5565b81819350935050505b9091565b60008083118290613655576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561361a5780820151818401526020810190506135ff565b50505050905090810190601f1680156136475780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161366157fe5b049050809150509392505050565b60008083141561368257600090506136ef565b600082840290508284828161369357fe5b04146136ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806138626021913960400191505060405180910390fd5b809150505b92915050565b61371c8361370e8660085461271c90919063ffffffff16565b61271c90919063ffffffff16565b6008819055506137378260095461269490919063ffffffff16565b60098190555061375281600a5461269490919063ffffffff16565b600a8190555061376d8160075461271c90919063ffffffff16565b6007819055505050505056fe42455032303a207472616e736665722066726f6d20746865207a65726f206164647265737342455032303a20617070726f76652066726f6d20746865207a65726f2061646472657373416d6f756e74206d757374206265206c657373207468616e20746f74616c206d61676e6574696f6e734f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737342455032303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63655472616e7366657220616d6f756e74206578636565647320746865206d61785478416d6f756e742e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775472616e7366657220616d6f756e74206d7573742062652067726561746572207468616e207a65726f42455032303a207472616e7366657220746f20746865207a65726f206164647265737342455032303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f57652063616e206e6f74206578636c75646520556e697377617020726f757465722e4578636c75646564206164647265737365732063616e6e6f742063616c6c20746869732066756e6374696f6e42455032303a20617070726f766520746f20746865207a65726f2061646472657373a26469706673582212203c606db73d0a8b62482e25b7db315a5e662e3e5d8a7915245290e72ed3675ca064736f6c634300060c0033

Deployed ByteCode Sourcemap

7328:12424:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8631:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9542:161;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11237:435;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10653:87;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8908:95;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9711:313;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;19242:85;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8817:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;10032:218;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;19646:97;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10852:377;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10752:88;;;:::i;:::-;;;;;;;;;;;;;;;;;;;19541:93;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;19339:87;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9011:197;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6903:148;;;:::i;:::-;;6598:79;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8722:87;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10258:269;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8390:62;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9216:167;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8457:28;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;7684:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11680:251;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10535:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;9391:143;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11939:442;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7065:244;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12389:478;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8631:83;8668:13;8701:5;;;;;;;;;;;;;;;;;8694:12;;8631:83;:::o;9542:161::-;9617:4;9634:39;9643:12;:10;:12::i;:::-;9657:7;9666:6;9634:8;:39::i;:::-;9691:4;9684:11;;9542:161;;;;:::o;11237:435::-;11326:7;11365;;11354;:18;;11346:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11424:17;11419:246;;11459:15;11483:19;11494:7;11483:10;:19::i;:::-;11458:44;;;;;;;11524:7;11517:14;;;;;11419:246;11566:23;11597:19;11608:7;11597:10;:19::i;:::-;11564:52;;;;;;;11638:15;11631:22;;;11237:435;;;;;:::o;10653:87::-;10695:7;10722:10;;10715:17;;10653:87;:::o;8908:95::-;8961:7;8988;;8981:14;;8908:95;:::o;9711:313::-;9809:4;9826:36;9836:6;9844:9;9855:6;9826:9;:36::i;:::-;9873:121;9882:6;9890:12;:10;:12::i;:::-;9904:89;9942:6;9904:89;;;;;;;;;;;;;;;;;:11;:19;9916:6;9904:19;;;;;;;;;;;;;;;:33;9924:12;:10;:12::i;:::-;9904:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;9873:8;:121::i;:::-;10012:4;10005:11;;9711:313;;;;;:::o;19242:85::-;19284:7;19311:8;;19304:15;;19242:85;:::o;8817:83::-;8858:5;7920:1;8876:16;;8817:83;:::o;10032:218::-;10120:4;10137:83;10146:12;:10;:12::i;:::-;10160:7;10169:50;10208:10;10169:11;:25;10181:12;:10;:12::i;:::-;10169:25;;;;;;;;;;;;;;;:34;10195:7;10169:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;10137:8;:83::i;:::-;10238:4;10231:11;;10032:218;;;;:::o;19646:97::-;6820:12;:10;:12::i;:::-;6810:22;;:6;;;;;;;;;;:22;;;6802:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19728:7:::1;19716:9;:19;;;;19646:97:::0;:::o;10852:377::-;10904:14;10921:12;:10;:12::i;:::-;10904:29;;10953:11;:19;10965:6;10953:19;;;;;;;;;;;;;;;;;;;;;;;;;10952:20;10944:77;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11033:15;11057:19;11068:7;11057:10;:19::i;:::-;11032:44;;;;;;;11105:28;11125:7;11105;:15;11113:6;11105:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;11087:7;:15;11095:6;11087:15;;;;;;;;;;;;;;;:46;;;;11154:20;11166:7;11154;;:11;;:20;;;;:::i;:::-;11144:7;:30;;;;11198:23;11213:7;11198:10;;:14;;:23;;;;:::i;:::-;11185:10;:36;;;;10852:377;;;:::o;10752:88::-;10794:7;10821:11;;10814:18;;10752:88;:::o;19541:93::-;6820:12;:10;:12::i;:::-;6810:22;;:6;;;;;;;;;;:22;;;6802:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19620:6:::1;19609:8;:17;;;;19541:93:::0;:::o;19339:87::-;19382:7;19409:9;;19402:16;;19339:87;:::o;9011:197::-;9077:7;9101:11;:20;9113:7;9101:20;;;;;;;;;;;;;;;;;;;;;;;;;9097:49;;;9130:7;:16;9138:7;9130:16;;;;;;;;;;;;;;;;9123:23;;;;9097:49;9164:36;9183:7;:16;9191:7;9183:16;;;;;;;;;;;;;;;;9164:18;:36::i;:::-;9157:43;;9011:197;;;;:::o;6903:148::-;6820:12;:10;:12::i;:::-;6810:22;;:6;;;;;;;;;;:22;;;6802:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7010:1:::1;6973:40;;6994:6;::::0;::::1;;;;;;;;6973:40;;;;;;;;;;;;7041:1;7024:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;6903:148::o:0;6598:79::-;6636:7;6663:6;;;;;;;;;;;6656:13;;6598:79;:::o;8722:87::-;8761:13;8794:7;;;;;;;;;;;;;;;;;8787:14;;8722:87;:::o;10258:269::-;10351:4;10368:129;10377:12;:10;:12::i;:::-;10391:7;10400:96;10439:15;10400:96;;;;;;;;;;;;;;;;;:11;:25;10412:12;:10;:12::i;:::-;10400:25;;;;;;;;;;;;;;;:34;10426:7;10400:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;10368:8;:129::i;:::-;10515:4;10508:11;;10258:269;;;;:::o;8390:62::-;;;;:::o;9216:167::-;9294:4;9311:42;9321:12;:10;:12::i;:::-;9335:9;9346:6;9311:9;:42::i;:::-;9371:4;9364:11;;9216:167;;;;:::o;8457:28::-;;;;;;;;;;;;;:::o;7684:43::-;;;;;;;;;;;;;;;;;;;;;;:::o;11680:251::-;11745:7;11784;;11773;:18;;11765:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11848:19;11871:10;:8;:10::i;:::-;11848:33;;11899:24;11911:11;11899:7;:11;;:24;;;;:::i;:::-;11892:31;;;11680:251;;;:::o;10535:110::-;10593:4;10617:11;:20;10629:7;10617:20;;;;;;;;;;;;;;;;;;;;;;;;;10610:27;;10535:110;;;:::o;9391:143::-;9472:7;9499:11;:18;9511:5;9499:18;;;;;;;;;;;;;;;:27;9518:7;9499:27;;;;;;;;;;;;;;;;9492:34;;9391:143;;;;:::o;11939:442::-;6820:12;:10;:12::i;:::-;6810:22;;:6;;;;;;;;;;:22;;;6802:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12031:42:::1;12020:53;;:7;:53;;;;12012:100;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12132:11;:20;12144:7;12132:20;;;;;;;;;;;;;;;;;;;;;;;;;12131:21;12123:61;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;12217:1;12198:7;:16;12206:7;12198:16;;;;;;;;;;;;;;;;:20;12195:107;;;12254:36;12273:7;:16;12281:7;12273:16;;;;;;;;;;;;;;;;12254:18;:36::i;:::-;12235:7;:16;12243:7;12235:16;;;;;;;;;;;;;;;:55;;;;12195:107;12335:4;12312:11;:20;12324:7;12312:20;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;12350:9;12365:7;12350:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11939:442:::0;:::o;7065:244::-;6820:12;:10;:12::i;:::-;6810:22;;:6;;;;;;;;;;:22;;;6802:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7174:1:::1;7154:22;;:8;:22;;;;7146:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7264:8;7235:38;;7256:6;::::0;::::1;;;;;;;;7235:38;;;;;;;;;;;;7293:8;7284:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;7065:244:::0;:::o;12389:478::-;6820:12;:10;:12::i;:::-;6810:22;;:6;;;;;;;;;;:22;;;6802:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12470:11:::1;:20;12482:7;12470:20;;;;;;;;;;;;;;;;;;;;;;;;;12462:60;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;12538:9;12533:327;12557:9;:16;;;;12553:1;:20;12533:327;;;12615:7;12599:23;;:9;12609:1;12599:12;;;;;;;;;;;;;;;;;;;;;;;;;:23;;;12595:254;;;12658:9;12687:1;12668:9;:16;;;;:20;12658:31;;;;;;;;;;;;;;;;;;;;;;;;;12643:9;12653:1;12643:12;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;12727:1;12708:7;:16;12716:7;12708:16;;;;;;;;;;;;;;;:20;;;;12770:5;12747:11;:20;12759:7;12747:20;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;;;;;;;12794:9;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12828:5;;12595:254;12575:3;;;;;;;12533:327;;;;12389:478:::0;:::o;120:106::-;173:15;208:10;201:17;;120:106;:::o;12875:337::-;12985:1;12968:19;;:5;:19;;;;12960:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13066:1;13047:21;;:7;:21;;;;13039:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13150:6;13120:11;:18;13132:5;13120:18;;;;;;;;;;;;;;;:27;13139:7;13120:27;;;;;;;;;;;;;;;:36;;;;13188:7;13172:32;;13181:5;13172:32;;;13197:6;13172:32;;;;;;;;;;;;;;;;;;12875:337;;;:::o;17200:470::-;17259:7;17268;17277;17286;17295;17304;17325:23;17350:12;17364:13;17381:41;17393:7;17402:8;;17412:9;;17381:11;:41::i;:::-;17324:98;;;;;;17433:19;17456:10;:8;:10::i;:::-;17433:33;;17478:15;17495:23;17520:12;17536:46;17548:7;17557:4;17563:5;17570:11;17536;:46::i;:::-;17477:105;;;;;;17601:7;17610:15;17627:4;17633:15;17650:4;17656:5;17593:69;;;;;;;;;;;;;;;;;;;17200:470;;;;;;;:::o;13220:1096::-;13335:1;13317:20;;:6;:20;;;;13309:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13419:1;13398:23;;:9;:23;;;;13390:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13489:1;13480:6;:10;13472:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13570:7;:5;:7::i;:::-;13560:17;;:6;:17;;;;:41;;;;;13594:7;:5;:7::i;:::-;13581:20;;:9;:20;;;;13560:41;13557:134;;;13634:12;;13624:6;:22;;13616:75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13557:134;13716:11;:19;13728:6;13716:19;;;;;;;;;;;;;;;;;;;;;;;;;:46;;;;;13740:11;:22;13752:9;13740:22;;;;;;;;;;;;;;;;;;;;;;;;;13739:23;13716:46;13712:597;;;13779:48;13801:6;13809:9;13820:6;13779:21;:48::i;:::-;13712:597;;;13850:11;:19;13862:6;13850:19;;;;;;;;;;;;;;;;;;;;;;;;;13849:20;:46;;;;;13873:11;:22;13885:9;13873:22;;;;;;;;;;;;;;;;;;;;;;;;;13849:46;13845:464;;;13912:46;13932:6;13940:9;13951:6;13912:19;:46::i;:::-;13845:464;;;13981:11;:19;13993:6;13981:19;;;;;;;;;;;;;;;;;;;;;;;;;13980:20;:47;;;;;14005:11;:22;14017:9;14005:22;;;;;;;;;;;;;;;;;;;;;;;;;14004:23;13980:47;13976:333;;;14044:44;14062:6;14070:9;14081:6;14044:17;:44::i;:::-;13976:333;;;14110:11;:19;14122:6;14110:19;;;;;;;;;;;;;;;;;;;;;;;;;:45;;;;;14133:11;:22;14145:9;14133:22;;;;;;;;;;;;;;;;;;;;;;;;;14110:45;14106:203;;;14172:48;14194:6;14202:9;14213:6;14172:21;:48::i;:::-;14106:203;;;14253:44;14271:6;14279:9;14290:6;14253:17;:44::i;:::-;14106:203;13976:333;13845:464;13712:597;13220:1096;;;:::o;1575:192::-;1661:7;1694:1;1689;:6;;1697:12;1681:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1721:9;1737:1;1733;:5;1721:17;;1758:1;1751:8;;;1575:192;;;;;:::o;1232:181::-;1290:7;1310:9;1326:1;1322;:5;1310:17;;1351:1;1346;:6;;1338:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1404:1;1397:8;;;1232:181;;;;:::o;1426:136::-;1484:7;1511:43;1515:1;1518;1511:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1504:50;;1426:136;;;;:::o;18498:163::-;18539:7;18560:15;18577;18596:19;:17;:19::i;:::-;18559:56;;;;18633:20;18645:7;18633;:11;;:20;;;;:::i;:::-;18626:27;;;;18498:163;:::o;2266:132::-;2324:7;2351:39;2355:1;2358;2351:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2344:46;;2266:132;;;;:::o;17678:395::-;17771:7;17780;17789;17809:12;17824:50;17870:3;17825:39;8096:3;17826:19;17838:6;17826:7;:11;;:19;;;;:::i;:::-;17825:25;;:39;;;;:::i;:::-;17824:45;;:50;;;;:::i;:::-;17809:65;;17885:13;17901:51;17948:3;17902:40;8096:3;17903:20;17915:7;17903;:11;;:20;;;;:::i;:::-;17902:26;;:40;;;;:::i;:::-;17901:46;;:51;;;;:::i;:::-;17885:67;;17963:23;17989:28;18011:5;17989:17;18001:4;17989:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;17963:54;;18036:15;18053:4;18059:5;18028:37;;;;;;;;;17678:395;;;;;;;:::o;18081:409::-;18191:7;18200;18209;18229:15;18247:24;18259:11;18247:7;:11;;:24;;;;:::i;:::-;18229:42;;18282:12;18297:21;18306:11;18297:4;:8;;:21;;;;:::i;:::-;18282:36;;18329:13;18345:22;18355:11;18345:5;:9;;:22;;;;:::i;:::-;18329:38;;18378:23;18404:28;18426:5;18404:17;18416:4;18404:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;18378:54;;18451:7;18460:15;18477:4;18443:39;;;;;;;;;;18081:409;;;;;;;;:::o;15565:631::-;15667:19;15690:10;:8;:10::i;:::-;15667:33;;15712:15;15729:23;15754:12;15768:23;15793:12;15807:13;15824:19;15835:7;15824:10;:19::i;:::-;15711:132;;;;;;;;;;;;15854:13;15871:22;15881:11;15871:5;:9;;:22;;;;:::i;:::-;15854:39;;15922:28;15942:7;15922;:15;15930:6;15922:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;15904:7;:15;15912:6;15904:15;;;;;;;;;;;;;;;:46;;;;15979:28;15999:7;15979;:15;15987:6;15979:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;15961:7;:15;15969:6;15961:15;;;;;;;;;;;;;;;:46;;;;16039:39;16062:15;16039:7;:18;16047:9;16039:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;16018:7;:18;16026:9;16018:18;;;;;;;;;;;;;;;:60;;;;16092:36;16103:4;16109:5;16116:4;16122:5;16092:10;:36::i;:::-;16161:9;16144:44;;16153:6;16144:44;;;16172:15;16144:44;;;;;;;;;;;;;;;;;;15565:631;;;;;;;;;;;:::o;14906:651::-;15006:19;15029:10;:8;:10::i;:::-;15006:33;;15051:15;15068:23;15093:12;15107:23;15132:12;15146:13;15163:19;15174:7;15163:10;:19::i;:::-;15050:132;;;;;;;;;;;;15193:13;15210:22;15220:11;15210:5;:9;;:22;;;;:::i;:::-;15193:39;;15261:28;15281:7;15261;:15;15269:6;15261:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;15243:7;:15;15251:6;15243:15;;;;;;;;;;;;;;;:46;;;;15321:39;15344:15;15321:7;:18;15329:9;15321:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;15300:7;:18;15308:9;15300:18;;;;;;;;;;;;;;;:60;;;;15392:39;15415:15;15392:7;:18;15400:9;15392:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;15371:7;:18;15379:9;15371:18;;;;;;;;;;;;;;;:60;;;;15453:36;15464:4;15470:5;15477:4;15483:5;15453:10;:36::i;:::-;15522:9;15505:44;;15514:6;15505:44;;;15533:15;15505:44;;;;;;;;;;;;;;;;;;14906:651;;;;;;;;;;;:::o;14324:574::-;14422:19;14445:10;:8;:10::i;:::-;14422:33;;14467:15;14484:23;14509:12;14523:23;14548:12;14562:13;14579:19;14590:7;14579:10;:19::i;:::-;14466:132;;;;;;;;;;;;14609:13;14626:22;14636:11;14626:5;:9;;:22;;;;:::i;:::-;14609:39;;14677:28;14697:7;14677;:15;14685:6;14677:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;14659:7;:15;14667:6;14659:15;;;;;;;;;;;;;;;:46;;;;14737:39;14760:15;14737:7;:18;14745:9;14737:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;14716:7;:18;14724:9;14716:18;;;;;;;;;;;;;;;:60;;;;14794:36;14805:4;14811:5;14818:4;14824:5;14794:10;:36::i;:::-;14863:9;14846:44;;14855:6;14846:44;;;14874:15;14846:44;;;;;;;;;;;;;;;;;;14324:574;;;;;;;;;;;:::o;16204:707::-;16306:19;16329:10;:8;:10::i;:::-;16306:33;;16351:15;16368:23;16393:12;16407:23;16432:12;16446:13;16463:19;16474:7;16463:10;:19::i;:::-;16350:132;;;;;;;;;;;;16493:13;16510:22;16520:11;16510:5;:9;;:22;;;;:::i;:::-;16493:39;;16561:28;16581:7;16561;:15;16569:6;16561:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;16543:7;:15;16551:6;16543:15;;;;;;;;;;;;;;;:46;;;;16618:28;16638:7;16618;:15;16626:6;16618:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;16600:7;:15;16608:6;16600:15;;;;;;;;;;;;;;;:46;;;;16678:39;16701:15;16678:7;:18;16686:9;16678:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;16657:7;:18;16665:9;16657:18;;;;;;;;;;;;;;;:60;;;;16749:39;16772:15;16749:7;:18;16757:9;16749:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;16728:7;:18;16736:9;16728:18;;;;;;;;;;;;;;;:60;;;;16807:36;16818:4;16824:5;16831:4;16837:5;16807:10;:36::i;:::-;16876:9;16859:44;;16868:6;16859:44;;;16887:15;16859:44;;;;;;;;;;;;;;;;;;16204:707;;;;;;;;;;;:::o;18669:561::-;18719:7;18728;18748:15;18766:7;;18748:25;;18784:15;18802:7;;18784:25;;18831:9;18826:289;18850:9;:16;;;;18846:1;:20;18826:289;;;18916:7;18892;:21;18900:9;18910:1;18900:12;;;;;;;;;;;;;;;;;;;;;;;;;18892:21;;;;;;;;;;;;;;;;:31;:66;;;;18951:7;18927;:21;18935:9;18945:1;18935:12;;;;;;;;;;;;;;;;;;;;;;;;;18927:21;;;;;;;;;;;;;;;;:31;18892:66;18888:97;;;18968:7;;18977;;18960:25;;;;;;;;;18888:97;19010:34;19022:7;:21;19030:9;19040:1;19030:12;;;;;;;;;;;;;;;;;;;;;;;;;19022:21;;;;;;;;;;;;;;;;19010:7;:11;;:34;;;;:::i;:::-;19000:44;;19069:34;19081:7;:21;19089:9;19099:1;19089:12;;;;;;;;;;;;;;;;;;;;;;;;;19081:21;;;;;;;;;;;;;;;;19069:7;:11;;:34;;;;:::i;:::-;19059:44;;18868:3;;;;;;;18826:289;;;;19139:20;19151:7;;19139;;:11;;:20;;;;:::i;:::-;19129:7;:30;19125:61;;;19169:7;;19178;;19161:25;;;;;;;;19125:61;19205:7;19214;19197:25;;;;;;18669:561;;;:::o;2412:278::-;2498:7;2530:1;2526;:5;2533:12;2518:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2557:9;2573:1;2569;:5;;;;;;2557:17;;2681:1;2674:8;;;2412:278;;;;;:::o;1781:471::-;1839:7;2089:1;2084;:6;2080:47;;;2114:1;2107:8;;;;2080:47;2139:9;2155:1;2151;:5;2139:17;;2184:1;2179;2175;:5;;;;;;:10;2167:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2243:1;2236:8;;;1781:471;;;;;:::o;16919:273::-;17026:28;17048:5;17026:17;17038:4;17026:7;;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;17016:7;:38;;;;17078:20;17093:4;17078:10;;:14;;:20;;;;:::i;:::-;17065:10;:33;;;;17123:22;17139:5;17123:11;;:15;;:22;;;;:::i;:::-;17109:11;:36;;;;17166:18;17178:5;17166:7;;:11;;:18;;;;:::i;:::-;17156:7;:28;;;;16919:273;;;;:::o

Swarm Source

ipfs://3c606db73d0a8b62482e25b7db315a5e662e3e5d8a7915245290e72ed3675ca0
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.