Contract 0x30b29c6c03546f6395ddb454538d0eb7e4a6e32f 1

 
 
Txn Hash
Block
From
To
Value [Txn Fee]
0x1c5fcfaa8f6b13f2b27cf48dc96bccf3ca8f61352913df2914f9f17d3e0a5c6d97021352021-08-03 2:13:525 mins ago0xe7fa28dfae4c7cd89dffcd25d4ed01a0ae9e1a91 IN  RooCoin: ROO Token0 BNB0.00022558
0xc5d63197c457241289552803868df2f4860ad2d967b7194f0b72643ca8c2184f97015582021-08-03 1:44:2434 mins ago0xa44e7a580b733aaf0c4d71bf2d2491322e1620b8 IN  RooCoin: ROO Token0 BNB0.00067674
0xae09bb9ff5699f099887a4a832238c4876cbbdf59224f69f10b4c0b4779f591797015442021-08-03 1:43:3435 mins ago0xd28754fc65be3738fa6e8812c8f3da3f2f01f425 IN  RooCoin: ROO Token0 BNB0.00022558
0x263c5fbe32210a72ebd3e7d33013066b3eb1aabe1b08ea6fa9504724e3a3afc197010662021-08-03 1:18:311 hr ago0x767fb4402f198ce494d89c22c862c73a28967c26 IN  RooCoin: ROO Token0 BNB0.000148615
0x942f74cd364e27c80791f4575fc12a4da34ff6b100bcdea501ffb34d22df0d0097010022021-08-03 1:15:191 hr 3 mins ago0xd7f36726b5e3bb8ba928f703986997c4622d6b4f IN  RooCoin: ROO Token0 BNB0.00022558
0x4520f7b36e5bc2df7aab05743f0a00a53d01ae7e0aaf4b9be32bd2497881a09597008342021-08-03 1:06:551 hr 12 mins ago0x177d58a5b42a81b7eea7a4ff2f3bc1cc9e54a88c IN  RooCoin: ROO Token0.1975309 BNB0.000105225
0x8e08d69a70ee3ff288482efd74b6093947a04e5a0fd3081789e4a977e36b763297007352021-08-03 1:01:581 hr 17 mins ago0x177d58a5b42a81b7eea7a4ff2f3bc1cc9e54a88c IN  RooCoin: ROO Token0.197636125 BNB0.000105225
0xd8793a13b64738d82ca91da469c874531f62500b405afd2d28ceb419483806ef97005152021-08-03 0:50:201 hr 28 mins ago0x177d58a5b42a81b7eea7a4ff2f3bc1cc9e54a88c IN  RooCoin: ROO Token0.19774135 BNB0.000105225
0x8e0e880577d749627d6ca71203dad852d0b6e762841b6940a6f768511a1b52e497004722021-08-03 0:48:111 hr 30 mins ago0x177d58a5b42a81b7eea7a4ff2f3bc1cc9e54a88c IN  RooCoin: ROO Token0.197846575 BNB0.000105225
0xf08d890a1b631852f6ceb36c2cabc5585be6e595fdccf461e8626745c5e990de97000642021-08-03 0:27:401 hr 51 mins ago0x177d58a5b42a81b7eea7a4ff2f3bc1cc9e54a88c IN  RooCoin: ROO Token0.1979518 BNB0.000105225
0xbb36024b9cbad64990661793e46afa547a6d1465f436f65da4c94480356d2cb197000142021-08-03 0:24:561 hr 54 mins ago0x177d58a5b42a81b7eea7a4ff2f3bc1cc9e54a88c IN  RooCoin: ROO Token0.198057025 BNB0.000105225
0xad909eaa500effa8e6add022283a56d1ddc65c08fddead134ba35c1a3f58a1d997000082021-08-03 0:24:371 hr 54 mins ago0x177d58a5b42a81b7eea7a4ff2f3bc1cc9e54a88c IN  RooCoin: ROO Token0.19816225 BNB0.000105225
0x39d1e7a931e9c54e17ce76a4e8e68dc61b8dceaad7053593b4ca5863256db89e97000022021-08-03 0:24:181 hr 54 mins ago0x177d58a5b42a81b7eea7a4ff2f3bc1cc9e54a88c IN  RooCoin: ROO Token0.198267475 BNB0.000105225
0x2d7d5058744d7474e568d652d5efddaedb92e770b8c5a24e2847c349bab72d1f96999772021-08-03 0:22:541 hr 56 mins ago0x177d58a5b42a81b7eea7a4ff2f3bc1cc9e54a88c IN  RooCoin: ROO Token0.1 BNB0.000105225
0x47b0f9444fe3b0a2465cbc77ad2d5b589031a6fc7953a70145a4dc8a94efa01196999562021-08-03 0:21:381 hr 57 mins ago0x177d58a5b42a81b7eea7a4ff2f3bc1cc9e54a88c IN  RooCoin: ROO Token0.19 BNB0.000105225
0xc148e683dae40deb2e824cb1bab08cc3544226bcbc06fccab72ad44de2b1acf596999122021-08-03 0:19:171 hr 59 mins ago0x177d58a5b42a81b7eea7a4ff2f3bc1cc9e54a88c IN  RooCoin: ROO Token0.19858315 BNB0.000105225
0xc943099fc638367f0165c8c3f7e605e350ca24311cadbefe3606fe6195c5c82196998312021-08-03 0:15:062 hrs 3 mins ago0x177d58a5b42a81b7eea7a4ff2f3bc1cc9e54a88c IN  RooCoin: ROO Token0.198688375 BNB0.000105225
0x1aed491a45374003ab061621118bac9da01dd86772af0bac4ede075ae57966dd96994022021-08-02 23:53:182 hrs 25 mins ago0x1d34655a40bcdd3e00daf272ad879b584beeb554 IN  RooCoin: ROO Token0 BNB0.00022558
0xd112e2023d7c348172309475f52f907d98e3e857b644823e5fda5e1fb8cfcc5e96990532021-08-02 23:35:482 hrs 43 mins ago0xe25335ce188bffc70f447d848fecbeb44fe95b0f IN  RooCoin: ROO Token0 BNB0.00022558
0x221423dddabce66ad73c72bc080e8252a49dfbde121480b2c105840681517afa96990332021-08-02 23:34:482 hrs 44 mins ago0x70f0fc29e2a23ad292779499ab1582b115737dab IN  RooCoin: ROO Token0 BNB0.00022558
0x85db730b4af71e64dd492675ea59ec80dea7df47d20fe80678abfec29ec59a6d96989002021-08-02 23:28:092 hrs 50 mins ago0x72f8ce6c456a2cc95a424613d6086bd626906d87 IN  RooCoin: ROO Token0 BNB0.000148495
0x0c2774136c2baff95741eb0fad8cbbf726a5747a63c99833269e892af157671996987592021-08-02 23:21:052 hrs 57 mins ago0x2f3804c4ed152fdaf2ab39e6d3135986416288ca IN  RooCoin: ROO Token0 BNB0.00022558
0x4956c69c5671ef0cf6f0fb615338d594751df364be57b38ec0d612a0d5e819d096987332021-08-02 23:19:472 hrs 59 mins ago0x512e458a89a31fdb1064cee3c3cd09ecc4dc797b IN  RooCoin: ROO Token0 BNB0.00022558
0xa3a6f2e0da87f1b3f7b6179bd7025a44b2ddd15ca9dcc3f45486f037e2284c4696986462021-08-02 23:15:263 hrs 3 mins ago0xb06f245617e1c26c43f7697ce246b2496e2e186a IN  RooCoin: ROO Token0 BNB0.00022558
0x7c369a372d1dd3b26f1a00049182452e1964f3e3018d97569a7d28845f6e8ac496985922021-08-02 23:12:443 hrs 6 mins ago0xde9f62e752a4b21f00bf614d44970dd01a40c837 IN  RooCoin: ROO Token0 BNB0.00022558
[ Download CSV Export 

OVERVIEW

RooCoin is a charity oriented token that helps to support community causes across the world aiming to change the direction of philanthropy to become more transparent and ethical.

Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
RooCoin

Compiler Version
v0.8.3+commit.8d00100c

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

File 1 of 2: roocoin.sol
//SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import {ERC20, ERC20Detailed, SafeERC20, Address, SafeMath, IERC20} from "./imports.sol";

contract RooCoin is ERC20, ERC20Detailed {
  using SafeERC20 for IERC20;
  using Address for address;
  using SafeMath for uint256;
  
  constructor () public ERC20Detailed("RooCoin", "ROO", 18){
    _totalSupply =  400000000 *(10**uint256(18));
	_balances[msg.sender] = _totalSupply;
  }
  
}


File 2 of 2: imports.sol
//SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

interface IERC20 {
    function totalSupply() external view returns (uint);
    function balanceOf(address account) external view returns (uint);
    function transfer(address recipient, uint amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint);
    function approve(address spender, uint amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint value);
    event Approval(address indexed owner, address indexed spender, uint value);
}
library SafeMath {
    function add(uint a, uint b) internal pure returns (uint) {
        uint c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }
    function sub(uint a, uint b) internal pure returns (uint) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }
    function sub(uint a, uint b, string memory errorMessage) internal pure returns (uint) {
        require(b <= a, errorMessage);
        uint c = a - b;

        return c;
    }
    function mul(uint a, uint b) internal pure returns (uint) {
        if (a == 0) {
            return 0;
        }

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

        return c;
    }
    function div(uint a, uint b) internal pure returns (uint) {
        return div(a, b, "SafeMath: division by zero");
    }
    function div(uint a, uint b, string memory errorMessage) internal pure returns (uint) {
        // Solidity only automatically asserts when dividing by 0
        require(b > 0, errorMessage);
        uint c = a / b;

        return c;
    }
}

contract Context {
    constructor () public { }
    // solhint-disable-previous-line no-empty-blocks

    function _msgSender() internal view returns (address) {
        return msg.sender;
    }
}

 contract Owned {

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

/// @notice The Constructor assigns the message sender to be `owner`
constructor() public {
    owner = msg.sender;
}

modifier onlyOwner() {
    require(msg.sender == owner,"Owner only function");
    _;
}

/**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(owner, address(0));
        owner = address(0);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
    }
}


contract ERC20 is Context, Owned, IERC20 {
    using SafeMath for uint;

    mapping (address => uint) internal _balances;

    mapping (address => mapping (address => uint)) internal _allowances;
    
    /*
    Address mappings to exclude from tax
    */
    
    mapping (address => bool) public TaxFreeWallets;
    event NewTaxFreeAddress(address sender, address newAddress);

    function setTaxFreeWallet(address _wallet) public onlyOwner{
        emit NewTaxFreeAddress(msg.sender, _wallet);
        TaxFreeWallets[_wallet] = true;
    }
    
    function containsTaxFree(address _wallet) public view returns (bool){
        return TaxFreeWallets[_wallet];
    }
    
    function removeTaxFreeWallet(address _wallet) public onlyOwner {
        delete TaxFreeWallets[_wallet];
    }
    
    /*
    Timelock: Allows you to lock a function for a specified period.
    */
    enum Functions { TAX }
    uint256 private constant _TIMELOCK = 259200; //3 days
    mapping(Functions => uint256) public timelock;
    
    modifier notLocked(Functions _fn) {
        require(timelock[_fn] != 0 && timelock[_fn] <= block.timestamp, "Function is timelocked");  
        _;
    }
    
    //unlock function
    function unlockFunction(Functions _fn) public onlyOwner {
        timelock[_fn] = block.timestamp + _TIMELOCK;
    }
    //lock function
    function lockFunction(Functions _fn) public onlyOwner {
        timelock[_fn] = 0;
    }

    uint internal _totalSupply;
    address public masterWallet = 0xd4F7a97Ad1E0Be2E65F391b8cDA54dd5e43B4902;
    uint public taxPercentageFirst = 1;
    
    function totalSupply() public view override returns (uint) {
        return _totalSupply;
    }
    function balanceOf(address account) public view override returns (uint) {
        return _balances[account];
    }
    function transfer(address recipient, uint amount) public override  returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
    function allowance(address owner, address spender) public view override returns (uint) {
        return _allowances[owner][spender];
    }
    function approve(address spender, uint amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }
    function transferFrom(address sender, address recipient, uint amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }
    function increaseAllowance(address spender, uint addedValue) public returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
        return true;
    }
    function decreaseAllowance(address spender, uint subtractedValue) public returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }
    function _transfer(address sender, address recipient, uint amount) internal{
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        uint netAmount;
        
        if(containsTaxFree(sender)){
            netAmount = amount;
        } else {
            uint taxPercentage = findTaxPercentage(amount);
            netAmount = amount - taxPercentage;
            transferToMasterWallet(sender, masterWallet, taxPercentage);
        }
      
        _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance");
        _balances[recipient] = _balances[recipient].add(netAmount);
        emit Transfer(sender, recipient, netAmount);
    }
   
    function findTaxPercentage(uint256 _amount) internal view returns(uint256)
    {
         uint256 taxPercent = _amount * taxPercentageFirst / 100;
         return taxPercent;
    }
    function transferToMasterWallet(address sender, address _masterWallet, uint256 _taxPercentage) internal
    {
        _balances[_masterWallet] = _balances[_masterWallet].add(_taxPercentage);
        emit Transfer(sender, _masterWallet ,_taxPercentage);
        //_approve(sender, _masterWallet, _allowances[sender][_masterWallet].sub(_taxPercentage, "ERC20: transfer amount exceeds allowance"));
    }
 
    function _approve(address owner, address spender, uint amount) internal {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

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

    function burn(uint256 amount) public onlyOwner {
        _burn(msg.sender, amount);
    }
  
    function _burn(address account, uint amount) internal {
        require(account != address(0), "ERC20: burn from the zero address");
    
        _balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance");
        _totalSupply = _totalSupply.sub(amount);
        emit Transfer(account, address(0), amount);
    }
    
    function changeTaxPercentage(uint _taxPercentage) public onlyOwner {
        require(_taxPercentage <= 100, "Tax can not be charged more than 100%");
        taxPercentageFirst = _taxPercentage;
    }
    
    function changeMasterWalletAddress(address _masterWallet) public onlyOwner{
        require(_masterWallet != address(0), "Invalid address enetered");
        
        masterWallet = _masterWallet;
    }
}

contract ERC20Detailed is ERC20 {
    string private _name;
    string private _symbol;
    uint8 private _decimals;

    constructor (string memory name, string memory symbol, uint8 decimals) public {
        _name = name;
        _symbol = symbol;
        _decimals = decimals;
        
    }
    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;
    }
}


/*
OpenZeppelin: checks address is actually an address
*/
library Address {
    function isContract(address account) internal view returns (bool) {
        bytes32 codehash;
        bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;
        // solhint-disable-next-line no-inline-assembly
        assembly { codehash := extcodehash(account) }
        return (codehash != 0x0 && codehash != accountHash);
    }
}

library SafeERC20 {
    using SafeMath for uint;
    using Address for address;

    function safeTransfer(IERC20 token, address to, uint value) internal {
        callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value));
    }

    function safeTransferFrom(IERC20 token, address from, address to, uint value) internal {
        callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value));
    }

    function safeApprove(IERC20 token, address spender, uint value) internal {
        require((value == 0) || (token.allowance(address(this), spender) == 0),
            "SafeERC20: approve from non-zero to non-zero allowance"
        );
        callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value));
    }
    function callOptionalReturn(IERC20 token, bytes memory data) private {
        require(address(token).isContract(), "SafeERC20: call to non-contract");

        // solhint-disable-next-line avoid-low-level-calls
        (bool success, bytes memory returndata) = address(token).call(data);
        require(success, "SafeERC20: low-level call failed");

        if (returndata.length > 0) { // Return data is optional
            // solhint-disable-next-line max-line-length
            require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed");
        }
    }
}


Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"address","name":"newAddress","type":"address"}],"name":"NewTaxFreeAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"TaxFreeWallets","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_masterWallet","type":"address"}],"name":"changeMasterWalletAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_taxPercentage","type":"uint256"}],"name":"changeTaxPercentage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_wallet","type":"address"}],"name":"containsTaxFree","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"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":"enum ERC20.Functions","name":"_fn","type":"uint8"}],"name":"lockFunction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"masterWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_wallet","type":"address"}],"name":"removeTaxFreeWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_wallet","type":"address"}],"name":"setTaxFreeWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxPercentageFirst","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"enum ERC20.Functions","name":"","type":"uint8"}],"name":"timelock","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"},{"inputs":[{"internalType":"enum ERC20.Functions","name":"_fn","type":"uint8"}],"name":"unlockFunction","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405273d4f7a97ad1e0be2e65f391b8cda54dd5e43b4902600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060016008553480156200006b57600080fd5b506040518060400160405280600781526020017f526f6f436f696e000000000000000000000000000000000000000000000000008152506040518060400160405280600381526020017f524f4f00000000000000000000000000000000000000000000000000000000008152506012336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550826009908051906020019062000132929190620001dd565b5081600a90805190602001906200014b929190620001dd565b5080600b60006101000a81548160ff021916908360ff1602179055505050506012600a6200017a9190620002e8565b6317d784006200018b919062000425565b600681905550600654600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000531565b828054620001eb9062000490565b90600052602060002090601f0160209004810192826200020f57600085556200025b565b82601f106200022a57805160ff19168380011785556200025b565b828001600101855582156200025b579182015b828111156200025a5782518255916020019190600101906200023d565b5b5090506200026a91906200026e565b5090565b5b80821115620002895760008160009055506001016200026f565b5090565b6000808291508390505b6001851115620002df57808604811115620002b757620002b6620004c6565b5b6001851615620002c75780820291505b8081029050620002d78562000524565b945062000297565b94509492505050565b6000620002f58262000486565b9150620003028362000486565b9250620003317fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000339565b905092915050565b6000826200034b57600190506200041e565b816200035b57600090506200041e565b81600181146200037457600281146200037f57620003b5565b60019150506200041e565b60ff841115620003945762000393620004c6565b5b8360020a915084821115620003ae57620003ad620004c6565b5b506200041e565b5060208310610133831016604e8410600b8410161715620003ef5782820a905083811115620003e957620003e8620004c6565b5b6200041e565b620003fe84848460016200028d565b92509050818404811115620004185762000417620004c6565b5b81810290505b9392505050565b6000620004328262000486565b91506200043f8362000486565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156200047b576200047a620004c6565b5b828202905092915050565b6000819050919050565b60006002820490506001821680620004a957607f821691505b60208210811415620004c057620004bf620004f5565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160011c9050919050565b61287980620005416000396000f3fe608060405234801561001057600080fd5b50600436106101735760003560e01c806386e670cb116100de578063b81db4ca11610097578063e17f9db211610071578063e17f9db21461045c578063f2fde38b1461048c578063f8ef0129146104a8578063fc0d0117146104d857610173565b8063b81db4ca146103de578063c17bae2a146103fc578063dd62ed3e1461042c57610173565b806386e670cb1461030c57806395d89b4114610328578063a457c2d714610346578063a9059cbb14610376578063aa53099d146103a6578063b4fa3b98146103c257610173565b80633950935111610130578063395093511461024e57806342966c681461027e57806370a082311461029a578063715018a6146102ca5780637ecf3b9d146102d457806380921f31146102f057610173565b806306fdde0314610178578063095ea7b31461019657806313c6efe4146101c657806318160ddd146101e257806323b872dd14610200578063313ce56714610230575b600080fd5b6101806104f6565b60405161018d91906120ab565b60405180910390f35b6101b060048036038101906101ab9190611deb565b610588565b6040516101bd9190612090565b60405180910390f35b6101e060048036038101906101db9190611d37565b6105a6565b005b6101ea6106c8565b6040516101f7919061220d565b60405180910390f35b61021a60048036038101906102159190611d9c565b6106d2565b6040516102279190612090565b60405180910390f35b6102386107ab565b6040516102459190612228565b60405180910390f35b61026860048036038101906102639190611deb565b6107c2565b6040516102759190612090565b60405180910390f35b61029860048036038101906102939190611e50565b610875565b005b6102b460048036038101906102af9190611d37565b610910565b6040516102c1919061220d565b60405180910390f35b6102d2610959565b005b6102ee60048036038101906102e99190611d37565b610aa5565b005b61030a60048036038101906103059190611d37565b610b85565b005b61032660048036038101906103219190611e50565b610cc7565b005b610330610da3565b60405161033d91906120ab565b60405180910390f35b610360600480360381019061035b9190611deb565b610e35565b60405161036d9190612090565b60405180910390f35b610390600480360381019061038b9190611deb565b610f02565b60405161039d9190612090565b60405180910390f35b6103c060048036038101906103bb9190611e27565b610f20565b005b6103dc60048036038101906103d79190611e27565b611047565b005b6103e6611161565b6040516103f3919061220d565b60405180910390f35b61041660048036038101906104119190611e27565b611167565b604051610423919061220d565b60405180910390f35b61044660048036038101906104419190611d60565b61117f565b604051610453919061220d565b60405180910390f35b61047660048036038101906104719190611d37565b611206565b6040516104839190612090565b60405180910390f35b6104a660048036038101906104a19190611d37565b611226565b005b6104c260048036038101906104bd9190611d37565b6113e1565b6040516104cf9190612090565b60405180910390f35b6104e0611437565b6040516104ed919061204c565b60405180910390f35b606060098054610505906123fc565b80601f0160208091040260200160405190810160405280929190818152602001828054610531906123fc565b801561057e5780601f106105535761010080835404028352916020019161057e565b820191906000526020600020905b81548152906001019060200180831161056157829003601f168201915b5050505050905090565b600061059c61059561145d565b8484611465565b6001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610634576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161062b906120ed565b60405180910390fd5b7fc2ec0653c72c437f31115d4a4277a07c66596663822af8379eaa9ffc70ee2e813382604051610665929190612067565b60405180910390a16001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600654905090565b60006106df848484611630565b6107a0846106eb61145d565b61079b856040518060600160405280602881526020016127f760289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061075161145d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119219092919063ffffffff16565b611465565b600190509392505050565b6000600b60009054906101000a900460ff16905090565b600061086b6107cf61145d565b8461086685600360006107e061145d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461198590919063ffffffff16565b611465565b6001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610903576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fa906120ed565b60405180910390fd5b61090d33826119e3565b50565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109de906120ed565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b2a906120ed565b60405180910390fd5b600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff021916905550565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c13576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0a906120ed565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610c83576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7a9061218d565b60405180910390fd5b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4c906120ed565b60405180910390fd5b6064811115610d99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d90906121ed565b60405180910390fd5b8060088190555050565b6060600a8054610db2906123fc565b80601f0160208091040260200160405190810160405280929190818152602001828054610dde906123fc565b8015610e2b5780601f10610e0057610100808354040283529160200191610e2b565b820191906000526020600020905b815481529060010190602001808311610e0e57829003601f168201915b5050505050905090565b6000610ef8610e4261145d565b84610ef38560405180606001604052806025815260200161281f6025913960036000610e6c61145d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119219092919063ffffffff16565b611465565b6001905092915050565b6000610f16610f0f61145d565b8484611630565b6001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610fae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa5906120ed565b60405180910390fd5b6203f48042610fbd919061225f565b60056000836000811115610ffa577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6000811115611032577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b81526020019081526020016000208190555050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110cc906120ed565b60405180910390fd5b600060056000836000811115611114577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600081111561114c577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b81526020019081526020016000208190555050565b60085481565b60056020528060005260406000206000915090505481565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60046020528060005260406000206000915054906101000a900460ff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146112b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112ab906120ed565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611324576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131b9061210d565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114cc906121cd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611545576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153c9061212d565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611623919061220d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156116a0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611697906121ad565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611710576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611707906120cd565b60405180910390fd5b600061171b846113e1565b1561172857819050611772565b600061173383611b87565b905080836117419190612340565b915061177085600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683611baf565b505b6117de826040518060600160405280602681526020016127d160269139600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119219092919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061187381600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461198590919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611913919061220d565b60405180910390a350505050565b6000838311158290611969576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196091906120ab565b60405180910390fd5b50600083856119789190612340565b9050809150509392505050565b6000808284611994919061225f565b9050838110156119d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d09061214d565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a4a9061216d565b60405180910390fd5b611abf816040518060600160405280602281526020016127af60229139600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119219092919063ffffffff16565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611b1781600654611cae90919063ffffffff16565b600681905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b7b919061220d565b60405180910390a35050565b600080606460085484611b9a91906122e6565b611ba491906122b5565b905080915050919050565b611c0181600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461198590919063ffffffff16565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611ca1919061220d565b60405180910390a3505050565b6000611cf083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611921565b905092915050565b600081359050611d0781612770565b92915050565b600081359050611d1c81612787565b92915050565b600081359050611d3181612797565b92915050565b600060208284031215611d4957600080fd5b6000611d5784828501611cf8565b91505092915050565b60008060408385031215611d7357600080fd5b6000611d8185828601611cf8565b9250506020611d9285828601611cf8565b9150509250929050565b600080600060608486031215611db157600080fd5b6000611dbf86828701611cf8565b9350506020611dd086828701611cf8565b9250506040611de186828701611d22565b9150509250925092565b60008060408385031215611dfe57600080fd5b6000611e0c85828601611cf8565b9250506020611e1d85828601611d22565b9150509250929050565b600060208284031215611e3957600080fd5b6000611e4784828501611d0d565b91505092915050565b600060208284031215611e6257600080fd5b6000611e7084828501611d22565b91505092915050565b611e8281612374565b82525050565b611e9181612386565b82525050565b6000611ea282612243565b611eac818561224e565b9350611ebc8185602086016123c9565b611ec5816124bb565b840191505092915050565b6000611edd60238361224e565b9150611ee8826124cc565b604082019050919050565b6000611f0060138361224e565b9150611f0b8261251b565b602082019050919050565b6000611f2360268361224e565b9150611f2e82612544565b604082019050919050565b6000611f4660228361224e565b9150611f5182612593565b604082019050919050565b6000611f69601b8361224e565b9150611f74826125e2565b602082019050919050565b6000611f8c60218361224e565b9150611f978261260b565b604082019050919050565b6000611faf60188361224e565b9150611fba8261265a565b602082019050919050565b6000611fd260258361224e565b9150611fdd82612683565b604082019050919050565b6000611ff560248361224e565b9150612000826126d2565b604082019050919050565b600061201860258361224e565b915061202382612721565b604082019050919050565b612037816123b2565b82525050565b612046816123bc565b82525050565b60006020820190506120616000830184611e79565b92915050565b600060408201905061207c6000830185611e79565b6120896020830184611e79565b9392505050565b60006020820190506120a56000830184611e88565b92915050565b600060208201905081810360008301526120c58184611e97565b905092915050565b600060208201905081810360008301526120e681611ed0565b9050919050565b6000602082019050818103600083015261210681611ef3565b9050919050565b6000602082019050818103600083015261212681611f16565b9050919050565b6000602082019050818103600083015261214681611f39565b9050919050565b6000602082019050818103600083015261216681611f5c565b9050919050565b6000602082019050818103600083015261218681611f7f565b9050919050565b600060208201905081810360008301526121a681611fa2565b9050919050565b600060208201905081810360008301526121c681611fc5565b9050919050565b600060208201905081810360008301526121e681611fe8565b9050919050565b600060208201905081810360008301526122068161200b565b9050919050565b6000602082019050612222600083018461202e565b92915050565b600060208201905061223d600083018461203d565b92915050565b600081519050919050565b600082825260208201905092915050565b600061226a826123b2565b9150612275836123b2565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156122aa576122a961242e565b5b828201905092915050565b60006122c0826123b2565b91506122cb836123b2565b9250826122db576122da61245d565b5b828204905092915050565b60006122f1826123b2565b91506122fc836123b2565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156123355761233461242e565b5b828202905092915050565b600061234b826123b2565b9150612356836123b2565b9250828210156123695761236861242e565b5b828203905092915050565b600061237f82612392565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b838110156123e75780820151818401526020810190506123cc565b838111156123f6576000848401525b50505050565b6000600282049050600182168061241457607f821691505b602082108114156124285761242761248c565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e6572206f6e6c792066756e6374696f6e00000000000000000000000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f496e76616c6964206164647265737320656e6574657265640000000000000000600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f5461782063616e206e6f742062652063686172676564206d6f7265207468616e60008201527f2031303025000000000000000000000000000000000000000000000000000000602082015250565b61277981612374565b811461278457600080fd5b50565b6001811061279457600080fd5b50565b6127a0816123b2565b81146127ab57600080fd5b5056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220c9cc2edd880d29066c8fdd06332e2eba82aa460bd2ed4b277054d6154acb0df264736f6c63430008030033

Deployed ByteCode Sourcemap

147:293:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9186:81:0;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5362:155;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3621:159;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4833:95;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5522:306;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9362:81;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5833:204;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8021:89;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4933:114;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2701:143;;;:::i;:::-;;3915:110;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8681:202;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8471:200;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9272:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6042:255;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5052:162;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4443:116;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4584:88;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4788:34;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4202:45;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5219:138;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3502:47;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2993:238;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3790:115;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4710:72;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9186:81;9223:13;9255:5;9248:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9186:81;:::o;5362:155::-;5434:4;5450:39;5459:12;:10;:12::i;:::-;5473:7;5482:6;5450:8;:39::i;:::-;5506:4;5499:11;;5362:155;;;;:::o;3621:159::-;2325:5;;;;;;;;;;2311:19;;:10;:19;;;2303:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;3695:38:::1;3713:10;3725:7;3695:38;;;;;;;:::i;:::-;;;;;;;;3769:4;3743:14;:23;3758:7;3743:23;;;;;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;;;3621:159:::0;:::o;4833:95::-;4886:4;4909:12;;4902:19;;4833:95;:::o;5522:306::-;5617:4;5633:36;5643:6;5651:9;5662:6;5633:9;:36::i;:::-;5679:121;5688:6;5696:12;:10;:12::i;:::-;5710:89;5748:6;5710:89;;;;;;;;;;;;;;;;;:11;:19;5722:6;5710:19;;;;;;;;;;;;;;;:33;5730:12;:10;:12::i;:::-;5710:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;5679:8;:121::i;:::-;5817:4;5810:11;;5522:306;;;;;:::o;9362:81::-;9403:5;9427:9;;;;;;;;;;;9420:16;;9362:81;:::o;5833:204::-;5910:4;5926:83;5935:12;:10;:12::i;:::-;5949:7;5958:50;5997:10;5958:11;:25;5970:12;:10;:12::i;:::-;5958:25;;;;;;;;;;;;;;;:34;5984:7;5958:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;5926:8;:83::i;:::-;6026:4;6019:11;;5833:204;;;;:::o;8021:89::-;2325:5;;;;;;;;;;2311:19;;:10;:19;;;2303:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;8078:25:::1;8084:10;8096:6;8078:5;:25::i;:::-;8021:89:::0;:::o;4933:114::-;4999:4;5022:9;:18;5032:7;5022:18;;;;;;;;;;;;;;;;5015:25;;4933:114;;;:::o;2701:143::-;2325:5;;;;;;;;;;2311:19;;:10;:19;;;2303:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;2806:1:::1;2770:39;;2791:5;::::0;::::1;;;;;;;;2770:39;;;;;;;;;;;;2835:1;2819:5:::0;::::1;:18;;;;;;;;;;;;;;;;;;2701:143::o:0;3915:110::-;2325:5;;;;;;;;;;2311:19;;:10;:19;;;2303:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;3995:14:::1;:23;4010:7;3995:23;;;;;;;;;;;;;;;;3988:30;;;;;;;;;;;3915:110:::0;:::o;8681:202::-;2325:5;;;;;;;;;;2311:19;;:10;:19;;;2303:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;8798:1:::1;8773:27;;:13;:27;;;;8765:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8863:13;8848:12;;:28;;;;;;;;;;;;;;;;;;8681:202:::0;:::o;8471:200::-;2325:5;;;;;;;;;;2311:19;;:10;:19;;;2303:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;8574:3:::1;8556:14;:21;;8548:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;8650:14;8629:18;:35;;;;8471:200:::0;:::o;9272:85::-;9311:13;9343:7;9336:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9272:85;:::o;6042:255::-;6124:4;6140:129;6149:12;:10;:12::i;:::-;6163:7;6172:96;6211:15;6172:96;;;;;;;;;;;;;;;;;:11;:25;6184:12;:10;:12::i;:::-;6172:25;;;;;;;;;;;;;;;:34;6198:7;6172:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;6140:8;:129::i;:::-;6286:4;6279:11;;6042:255;;;;:::o;5052:162::-;5128:4;5144:42;5154:12;:10;:12::i;:::-;5168:9;5179:6;5144:9;:42::i;:::-;5203:4;5196:11;;5052:162;;;;:::o;4443:116::-;2325:5;;;;;;;;;;2311:19;;:10;:19;;;2303:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;4181:6:::1;4525:15;:27;;;;:::i;:::-;4509:8;:13;4518:3;4509:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:43;;;;4443:116:::0;:::o;4584:88::-;2325:5;;;;;;;;;;2311:19;;:10;:19;;;2303:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;4664:1:::1;4648:8;:13;4657:3;4648:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:17;;;;4584:88:::0;:::o;4788:34::-;;;;:::o;4202:45::-;;;;;;;;;;;;;;;;;:::o;5219:138::-;5300:4;5323:11;:18;5335:5;5323:18;;;;;;;;;;;;;;;:27;5342:7;5323:27;;;;;;;;;;;;;;;;5316:34;;5219:138;;;;:::o;3502:47::-;;;;;;;;;;;;;;;;;;;;;;:::o;2993:238::-;2325:5;;;;;;;;;;2311:19;;:10;:19;;;2303:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;3101:1:::1;3081:22;;:8;:22;;;;3073:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;3189:8;3161:37;;3182:5;::::0;::::1;;;;;;;;3161:37;;;;;;;;;;;;3216:8;3208:5;::::0;:16:::1;;;;;;;;;;;;;;;;;;2993:238:::0;:::o;3790:115::-;3853:4;3875:14;:23;3890:7;3875:23;;;;;;;;;;;;;;;;;;;;;;;;;3868:30;;3790:115;;;:::o;4710:72::-;;;;;;;;;;;;;:::o;1910:88::-;1955:7;1981:10;1974:17;;1910:88;:::o;7686:329::-;7793:1;7776:19;;:5;:19;;;;7768:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7873:1;7854:21;;:7;:21;;;;7846:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7955:6;7925:11;:18;7937:5;7925:18;;;;;;;;;;;;;;;:27;7944:7;7925:27;;;;;;;;;;;;;;;:36;;;;7992:7;7976:32;;7985:5;7976:32;;;8001:6;7976:32;;;;;;:::i;:::-;;;;;;;;7686:329;;;:::o;6302:782::-;6413:1;6395:20;;:6;:20;;;;6387:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;6496:1;6475:23;;:9;:23;;;;6467:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;6548:14;6584:23;6600:6;6584:15;:23::i;:::-;6581:268;;;6634:6;6622:18;;6581:268;;;6671:18;6692:25;6710:6;6692:17;:25::i;:::-;6671:46;;6752:13;6743:6;:22;;;;:::i;:::-;6731:34;;6779:59;6802:6;6810:12;;;;;;;;;;;6824:13;6779:22;:59::i;:::-;6581:268;;6885:71;6907:6;6885:71;;;;;;;;;;;;;;;;;:9;:17;6895:6;6885:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;6865:9;:17;6875:6;6865:17;;;;;;;;;;;;;;;:91;;;;6989:35;7014:9;6989;:20;6999:9;6989:20;;;;;;;;;;;;;;;;:24;;:35;;;;:::i;:::-;6966:9;:20;6976:9;6966:20;;;;;;;;;;;;;;;:58;;;;7056:9;7039:38;;7048:6;7039:38;;;7067:9;7039:38;;;;;;:::i;:::-;;;;;;;;6302:782;;;;:::o;1019:175::-;1099:4;1128:1;1123;:6;;1131:12;1115:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1154:6;1167:1;1163;:5;;;;:::i;:::-;1154:14;;1186:1;1179:8;;;1019:175;;;;;:::o;720:164::-;772:4;788:6;801:1;797;:5;;;;:::i;:::-;788:14;;825:1;820;:6;;812:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;876:1;869:8;;;720:164;;;;:::o;8118:343::-;8209:1;8190:21;;:7;:21;;;;8182:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8285:68;8308:6;8285:68;;;;;;;;;;;;;;;;;:9;:18;8295:7;8285:18;;;;;;;;;;;;;;;;:22;;:68;;;;;:::i;:::-;8264:9;:18;8274:7;8264:18;;;;;;;;;;;;;;;:89;;;;8378:24;8395:6;8378:12;;:16;;:24;;;;:::i;:::-;8363:12;:39;;;;8443:1;8417:37;;8426:7;8417:37;;;8447:6;8417:37;;;;;;:::i;:::-;;;;;;;;8118:343;;:::o;7093:180::-;7159:7;7183:18;7235:3;7214:18;;7204:7;:28;;;;:::i;:::-;:34;;;;:::i;:::-;7183:55;;7256:10;7249:17;;;7093:180;;;:::o;7278:401::-;7423:44;7452:14;7423:9;:24;7433:13;7423:24;;;;;;;;;;;;;;;;:28;;:44;;;;:::i;:::-;7396:9;:24;7406:13;7396:24;;;;;;;;;;;;;;;:71;;;;7499:13;7482:47;;7491:6;7482:47;;;7514:14;7482:47;;;;;;:::i;:::-;;;;;;;;7278:401;;;:::o;889:125::-;941:4;964:43;968:1;971;964:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;957:50;;889:125;;;;:::o;7:139:2:-;;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:165::-;;249:6;236:20;227:29;;265:46;305:5;265:46;:::i;:::-;217:100;;;;:::o;323:139::-;;407:6;394:20;385:29;;423:33;450:5;423:33;:::i;:::-;375:87;;;;:::o;468:262::-;;576:2;564:9;555:7;551:23;547:32;544:2;;;592:1;589;582:12;544:2;635:1;660:53;705:7;696:6;685:9;681:22;660:53;:::i;:::-;650:63;;606:117;534:196;;;;:::o;736:407::-;;;861:2;849:9;840:7;836:23;832:32;829:2;;;877:1;874;867:12;829:2;920:1;945:53;990:7;981:6;970:9;966:22;945:53;:::i;:::-;935:63;;891:117;1047:2;1073:53;1118:7;1109:6;1098:9;1094:22;1073:53;:::i;:::-;1063:63;;1018:118;819:324;;;;;:::o;1149:552::-;;;;1291:2;1279:9;1270:7;1266:23;1262:32;1259:2;;;1307:1;1304;1297:12;1259:2;1350:1;1375:53;1420:7;1411:6;1400:9;1396:22;1375:53;:::i;:::-;1365:63;;1321:117;1477:2;1503:53;1548:7;1539:6;1528:9;1524:22;1503:53;:::i;:::-;1493:63;;1448:118;1605:2;1631:53;1676:7;1667:6;1656:9;1652:22;1631:53;:::i;:::-;1621:63;;1576:118;1249:452;;;;;:::o;1707:407::-;;;1832:2;1820:9;1811:7;1807:23;1803:32;1800:2;;;1848:1;1845;1838:12;1800:2;1891:1;1916:53;1961:7;1952:6;1941:9;1937:22;1916:53;:::i;:::-;1906:63;;1862:117;2018:2;2044:53;2089:7;2080:6;2069:9;2065:22;2044:53;:::i;:::-;2034:63;;1989:118;1790:324;;;;;:::o;2120:288::-;;2241:2;2229:9;2220:7;2216:23;2212:32;2209:2;;;2257:1;2254;2247:12;2209:2;2300:1;2325:66;2383:7;2374:6;2363:9;2359:22;2325:66;:::i;:::-;2315:76;;2271:130;2199:209;;;;:::o;2414:262::-;;2522:2;2510:9;2501:7;2497:23;2493:32;2490:2;;;2538:1;2535;2528:12;2490:2;2581:1;2606:53;2651:7;2642:6;2631:9;2627:22;2606:53;:::i;:::-;2596:63;;2552:117;2480:196;;;;:::o;2682:118::-;2769:24;2787:5;2769:24;:::i;:::-;2764:3;2757:37;2747:53;;:::o;2806:109::-;2887:21;2902:5;2887:21;:::i;:::-;2882:3;2875:34;2865:50;;:::o;2921:364::-;;3037:39;3070:5;3037:39;:::i;:::-;3092:71;3156:6;3151:3;3092:71;:::i;:::-;3085:78;;3172:52;3217:6;3212:3;3205:4;3198:5;3194:16;3172:52;:::i;:::-;3249:29;3271:6;3249:29;:::i;:::-;3244:3;3240:39;3233:46;;3013:272;;;;;:::o;3291:366::-;;3454:67;3518:2;3513:3;3454:67;:::i;:::-;3447:74;;3530:93;3619:3;3530:93;:::i;:::-;3648:2;3643:3;3639:12;3632:19;;3437:220;;;:::o;3663:366::-;;3826:67;3890:2;3885:3;3826:67;:::i;:::-;3819:74;;3902:93;3991:3;3902:93;:::i;:::-;4020:2;4015:3;4011:12;4004:19;;3809:220;;;:::o;4035:366::-;;4198:67;4262:2;4257:3;4198:67;:::i;:::-;4191:74;;4274:93;4363:3;4274:93;:::i;:::-;4392:2;4387:3;4383:12;4376:19;;4181:220;;;:::o;4407:366::-;;4570:67;4634:2;4629:3;4570:67;:::i;:::-;4563:74;;4646:93;4735:3;4646:93;:::i;:::-;4764:2;4759:3;4755:12;4748:19;;4553:220;;;:::o;4779:366::-;;4942:67;5006:2;5001:3;4942:67;:::i;:::-;4935:74;;5018:93;5107:3;5018:93;:::i;:::-;5136:2;5131:3;5127:12;5120:19;;4925:220;;;:::o;5151:366::-;;5314:67;5378:2;5373:3;5314:67;:::i;:::-;5307:74;;5390:93;5479:3;5390:93;:::i;:::-;5508:2;5503:3;5499:12;5492:19;;5297:220;;;:::o;5523:366::-;;5686:67;5750:2;5745:3;5686:67;:::i;:::-;5679:74;;5762:93;5851:3;5762:93;:::i;:::-;5880:2;5875:3;5871:12;5864:19;;5669:220;;;:::o;5895:366::-;;6058:67;6122:2;6117:3;6058:67;:::i;:::-;6051:74;;6134:93;6223:3;6134:93;:::i;:::-;6252:2;6247:3;6243:12;6236:19;;6041:220;;;:::o;6267:366::-;;6430:67;6494:2;6489:3;6430:67;:::i;:::-;6423:74;;6506:93;6595:3;6506:93;:::i;:::-;6624:2;6619:3;6615:12;6608:19;;6413:220;;;:::o;6639:366::-;;6802:67;6866:2;6861:3;6802:67;:::i;:::-;6795:74;;6878:93;6967:3;6878:93;:::i;:::-;6996:2;6991:3;6987:12;6980:19;;6785:220;;;:::o;7011:118::-;7098:24;7116:5;7098:24;:::i;:::-;7093:3;7086:37;7076:53;;:::o;7135:112::-;7218:22;7234:5;7218:22;:::i;:::-;7213:3;7206:35;7196:51;;:::o;7253:222::-;;7384:2;7373:9;7369:18;7361:26;;7397:71;7465:1;7454:9;7450:17;7441:6;7397:71;:::i;:::-;7351:124;;;;:::o;7481:332::-;;7640:2;7629:9;7625:18;7617:26;;7653:71;7721:1;7710:9;7706:17;7697:6;7653:71;:::i;:::-;7734:72;7802:2;7791:9;7787:18;7778:6;7734:72;:::i;:::-;7607:206;;;;;:::o;7819:210::-;;7944:2;7933:9;7929:18;7921:26;;7957:65;8019:1;8008:9;8004:17;7995:6;7957:65;:::i;:::-;7911:118;;;;:::o;8035:313::-;;8186:2;8175:9;8171:18;8163:26;;8235:9;8229:4;8225:20;8221:1;8210:9;8206:17;8199:47;8263:78;8336:4;8327:6;8263:78;:::i;:::-;8255:86;;8153:195;;;;:::o;8354:419::-;;8558:2;8547:9;8543:18;8535:26;;8607:9;8601:4;8597:20;8593:1;8582:9;8578:17;8571:47;8635:131;8761:4;8635:131;:::i;:::-;8627:139;;8525:248;;;:::o;8779:419::-;;8983:2;8972:9;8968:18;8960:26;;9032:9;9026:4;9022:20;9018:1;9007:9;9003:17;8996:47;9060:131;9186:4;9060:131;:::i;:::-;9052:139;;8950:248;;;:::o;9204:419::-;;9408:2;9397:9;9393:18;9385:26;;9457:9;9451:4;9447:20;9443:1;9432:9;9428:17;9421:47;9485:131;9611:4;9485:131;:::i;:::-;9477:139;;9375:248;;;:::o;9629:419::-;;9833:2;9822:9;9818:18;9810:26;;9882:9;9876:4;9872:20;9868:1;9857:9;9853:17;9846:47;9910:131;10036:4;9910:131;:::i;:::-;9902:139;;9800:248;;;:::o;10054:419::-;;10258:2;10247:9;10243:18;10235:26;;10307:9;10301:4;10297:20;10293:1;10282:9;10278:17;10271:47;10335:131;10461:4;10335:131;:::i;:::-;10327:139;;10225:248;;;:::o;10479:419::-;;10683:2;10672:9;10668:18;10660:26;;10732:9;10726:4;10722:20;10718:1;10707:9;10703:17;10696:47;10760:131;10886:4;10760:131;:::i;:::-;10752:139;;10650:248;;;:::o;10904:419::-;;11108:2;11097:9;11093:18;11085:26;;11157:9;11151:4;11147:20;11143:1;11132:9;11128:17;11121:47;11185:131;11311:4;11185:131;:::i;:::-;11177:139;;11075:248;;;:::o;11329:419::-;;11533:2;11522:9;11518:18;11510:26;;11582:9;11576:4;11572:20;11568:1;11557:9;11553:17;11546:47;11610:131;11736:4;11610:131;:::i;:::-;11602:139;;11500:248;;;:::o;11754:419::-;;11958:2;11947:9;11943:18;11935:26;;12007:9;12001:4;11997:20;11993:1;11982:9;11978:17;11971:47;12035:131;12161:4;12035:131;:::i;:::-;12027:139;;11925:248;;;:::o;12179:419::-;;12383:2;12372:9;12368:18;12360:26;;12432:9;12426:4;12422:20;12418:1;12407:9;12403:17;12396:47;12460:131;12586:4;12460:131;:::i;:::-;12452:139;;12350:248;;;:::o;12604:222::-;;12735:2;12724:9;12720:18;12712:26;;12748:71;12816:1;12805:9;12801:17;12792:6;12748:71;:::i;:::-;12702:124;;;;:::o;12832:214::-;;12959:2;12948:9;12944:18;12936:26;;12972:67;13036:1;13025:9;13021:17;13012:6;12972:67;:::i;:::-;12926:120;;;;:::o;13052:99::-;;13138:5;13132:12;13122:22;;13111:40;;;:::o;13157:169::-;;13275:6;13270:3;13263:19;13315:4;13310:3;13306:14;13291:29;;13253:73;;;;:::o;13332:305::-;;13391:20;13409:1;13391:20;:::i;:::-;13386:25;;13425:20;13443:1;13425:20;:::i;:::-;13420:25;;13579:1;13511:66;13507:74;13504:1;13501:81;13498:2;;;13585:18;;:::i;:::-;13498:2;13629:1;13626;13622:9;13615:16;;13376:261;;;;:::o;13643:185::-;;13700:20;13718:1;13700:20;:::i;:::-;13695:25;;13734:20;13752:1;13734:20;:::i;:::-;13729:25;;13773:1;13763:2;;13778:18;;:::i;:::-;13763:2;13820:1;13817;13813:9;13808:14;;13685:143;;;;:::o;13834:348::-;;13897:20;13915:1;13897:20;:::i;:::-;13892:25;;13931:20;13949:1;13931:20;:::i;:::-;13926:25;;14119:1;14051:66;14047:74;14044:1;14041:81;14036:1;14029:9;14022:17;14018:105;14015:2;;;14126:18;;:::i;:::-;14015:2;14174:1;14171;14167:9;14156:20;;13882:300;;;;:::o;14188:191::-;;14248:20;14266:1;14248:20;:::i;:::-;14243:25;;14282:20;14300:1;14282:20;:::i;:::-;14277:25;;14321:1;14318;14315:8;14312:2;;;14326:18;;:::i;:::-;14312:2;14371:1;14368;14364:9;14356:17;;14233:146;;;;:::o;14385:96::-;;14451:24;14469:5;14451:24;:::i;:::-;14440:35;;14430:51;;;:::o;14487:90::-;;14564:5;14557:13;14550:21;14539:32;;14529:48;;;:::o;14583:126::-;;14660:42;14653:5;14649:54;14638:65;;14628:81;;;:::o;14715:77::-;;14781:5;14770:16;;14760:32;;;:::o;14798:86::-;;14873:4;14866:5;14862:16;14851:27;;14841:43;;;:::o;14890:307::-;14958:1;14968:113;14982:6;14979:1;14976:13;14968:113;;;15067:1;15062:3;15058:11;15052:18;15048:1;15043:3;15039:11;15032:39;15004:2;15001:1;14997:10;14992:15;;14968:113;;;15099:6;15096:1;15093:13;15090:2;;;15179:1;15170:6;15165:3;15161:16;15154:27;15090:2;14939:258;;;;:::o;15203:320::-;;15284:1;15278:4;15274:12;15264:22;;15331:1;15325:4;15321:12;15352:18;15342:2;;15408:4;15400:6;15396:17;15386:27;;15342:2;15470;15462:6;15459:14;15439:18;15436:38;15433:2;;;15489:18;;:::i;:::-;15433:2;15254:269;;;;:::o;15529:180::-;15577:77;15574:1;15567:88;15674:4;15671:1;15664:15;15698:4;15695:1;15688:15;15715:180;15763:77;15760:1;15753:88;15860:4;15857:1;15850:15;15884:4;15881:1;15874:15;15901:180;15949:77;15946:1;15939:88;16046:4;16043:1;16036:15;16070:4;16067:1;16060:15;16087:102;;16179:2;16175:7;16170:2;16163:5;16159:14;16155:28;16145:38;;16135:54;;;:::o;16195:222::-;16335:34;16331:1;16323:6;16319:14;16312:58;16404:5;16399:2;16391:6;16387:15;16380:30;16301:116;:::o;16423:169::-;16563:21;16559:1;16551:6;16547:14;16540:45;16529:63;:::o;16598:225::-;16738:34;16734:1;16726:6;16722:14;16715:58;16807:8;16802:2;16794:6;16790:15;16783:33;16704:119;:::o;16829:221::-;16969:34;16965:1;16957:6;16953:14;16946:58;17038:4;17033:2;17025:6;17021:15;17014:29;16935:115;:::o;17056:177::-;17196:29;17192:1;17184:6;17180:14;17173:53;17162:71;:::o;17239:220::-;17379:34;17375:1;17367:6;17363:14;17356:58;17448:3;17443:2;17435:6;17431:15;17424:28;17345:114;:::o;17465:174::-;17605:26;17601:1;17593:6;17589:14;17582:50;17571:68;:::o;17645:224::-;17785:34;17781:1;17773:6;17769:14;17762:58;17854:7;17849:2;17841:6;17837:15;17830:32;17751:118;:::o;17875:223::-;18015:34;18011:1;18003:6;17999:14;17992:58;18084:6;18079:2;18071:6;18067:15;18060:31;17981:117;:::o;18104:224::-;18244:34;18240:1;18232:6;18228:14;18221:58;18313:7;18308:2;18300:6;18296:15;18289:32;18210:118;:::o;18334:122::-;18407:24;18425:5;18407:24;:::i;:::-;18400:5;18397:35;18387:2;;18446:1;18443;18436:12;18387:2;18377:79;:::o;18462:112::-;18548:1;18541:5;18538:12;18528:2;;18564:1;18561;18554:12;18528:2;18518:56;:::o;18580:122::-;18653:24;18671:5;18653:24;:::i;:::-;18646:5;18643:35;18633:2;;18692:1;18689;18682:12;18633:2;18623:79;:::o

Swarm Source

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