Contract 0x582423c10c9e83387a96d00a69ba3d11ee47b7b5 4

 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xab3fa784581b5ad6ae23e7a62e060260b9e12d23450e11642e07a42a528df206Approve632970792023-05-29 19:09:075 hrs 20 mins ago0x03c74b78c4052776475d330cf39b6f4958f2005e IN  OneRing: RING Token0 FTM0.045393539454
0xa851d935e8a3d7c7cf94e491842b34bcb946d4cc4923409847fd0e83aaaf7030Approve632833432023-05-29 11:07:2113 hrs 22 mins ago0x5b3067c5e26fec823d6fbf8f315e43632658d2f6 IN  OneRing: RING Token0 FTM0.068715373421
0x91afc0efb23e8c7f85d46ef806ca3aeffd85857050225e300eeb72be67ae53c7Approve632744942023-05-29 6:01:1918 hrs 28 mins ago0x217eb3a77e9b20805a95700d90a4a1a5ae61dea7 IN  OneRing: RING Token0 FTM0.021159096
0x4cd4c43c126153f694ff8afa4896ee6afdd18877ad29a2772b6d53b1a5bfa493Approve632741022023-05-29 5:48:4718 hrs 40 mins ago0xc63517004d9b9767e2b32ba6e7b28d73cb2a4524 IN  OneRing: RING Token0 FTM0.009363763452
0xa645f9e8fd10d7493b193bb8520af140823fdc9fbd6fb4628a49a877a215db92Approve632529972023-05-28 21:35:391 day 2 hrs ago0x12cc270bb2136c772b7e28868d7782aa62827229 IN  OneRing: RING Token0 FTM0.005779114
0x5cd264f39ec4f1c3085b386ad310526e6068893ce8bb9fff145a81d6da331f76Approve632444932023-05-28 19:07:391 day 5 hrs ago0x03c74b78c4052776475d330cf39b6f4958f2005e IN  OneRing: RING Token0 FTM0.011674850467
0x63d4e5803b81b4f1d1949cf4902c5d7415f14d75b7694f69d28c518124048531Approve632279982023-05-28 11:59:311 day 12 hrs ago0x11300251b903ba70f51262f3e49aa7c22f81e1b2 IN  OneRing: RING Token0 FTM0.004220876063
0xfc8a82126b84b8adec60069f319cff0b3910564b095a89e5fdafacbe3e842441Approve632022962023-05-27 22:31:592 days 1 hr ago0xf09b9d7949876a20ca071b42fda58b80563a7686 IN  OneRing: RING Token0 FTM0.002355675354
0xc2acc0fb9e0fa7b3f9bac799bc6b42a0372ff9cef2799c6930b4c9458c991aacApprove631705142023-05-27 10:14:442 days 14 hrs ago0xf610ab77b27fd5ea85bb14a8eecf048b845cfd82 IN  OneRing: RING Token0 FTM0.005125952581
0xa2b20bcd6879af926ab17d7392519427dc5b462e50e27d8887970981bff495d5Approve631633222023-05-27 7:33:192 days 16 hrs ago0x4d8f77ba1b5d18c3b2bfd0ca1b0cdd4d346ff67d IN  OneRing: RING Token0 FTM0.0060826
0x048f5aa89fda2c7ebd30568906f9abf56a43482a39bcd121fe40c9f2a29490aeApprove631631772023-05-27 7:29:532 days 16 hrs ago0xfb88f6ee11325c55d4f442eb042fae7fd59292d3 IN  OneRing: RING Token0 FTM0.003777148822
0x5e10504cd60289e19d87ee291ab2bec87974b9506177e2899e5642d1e33a76d9Approve631631672023-05-27 7:29:392 days 16 hrs ago0x4d8f77ba1b5d18c3b2bfd0ca1b0cdd4d346ff67d IN  OneRing: RING Token0 FTM0.003780871198
0x27e6f2b8044ed392eb9b7111023a1398ea4d9d241edf62714b67a3cc56628dbbApprove631424402023-05-26 20:46:253 days 3 hrs ago0x756900d000208d3df5cebe2de78ddf209f1e59b3 IN  OneRing: RING Token0 FTM0.003624236147
0x23c5afe4e19714f97c0b88a7b9c0e6a9a2b18071408c17f331f4dbd9fd9698fcApprove631422932023-05-26 20:43:163 days 3 hrs ago0x756900d000208d3df5cebe2de78ddf209f1e59b3 IN  OneRing: RING Token0 FTM0.030042116
0x77b01650833e7aa4fbc89e7038e59acb19fe36d9cd78963c57209f257b4dcbbbApprove631338882023-05-26 17:30:173 days 6 hrs ago0x5ce963cd8fb8dbf17c6bf823f7e9186f7b7649be IN  OneRing: RING Token0 FTM0.005760834385
0x6f1ef4c3a593dcd578f7b5071d368c4315c9d07231cae6f7cf1943b2b0d632f3Approve631338602023-05-26 17:29:043 days 7 hrs ago0x16d6ea53520e751a99295718ee50c7756313ddb8 IN  OneRing: RING Token0 FTM0.00359934253
0x7d771ebce1d1f37e93450323d727458d14dc2961a60bc72af6d060d1b3e8f238Approve631214072023-05-26 13:20:413 days 11 hrs ago0x1a3acfe01abb6457c25c58d833923184a3da5d46 IN  OneRing: RING Token0 FTM0.003800016869
0x265e2dfe45c5d4027c140f3ffa741e17647b6ac47af59276e1716f5595fa2bacApprove631025592023-05-26 6:37:043 days 17 hrs ago0x0ac9e3ae0de3e9780118a53a542d44d1970955a5 IN  OneRing: RING Token0 FTM0.00555919
0xe32ab8cb89ba5fd9ce2bd1885edc5b72105d3835cea1828e5168396a171f5f1eApprove631011692023-05-26 6:04:423 days 18 hrs ago0xb4a40c9c4940d3f9703d571319406f38e957924a IN  OneRing: RING Token0 FTM0.002415966365
0x9d6e2029c10050eeb583906292018c45bd7edb589d11c271dbceb527529d3c01Approve631001552023-05-26 5:35:093 days 18 hrs ago0xcae8cf1e2119484d6cc3b6efaad2242adbdb1ea8 IN  OneRing: RING Token0 FTM0.005566035435
0x850d3e72bdeab8111e1730da77fdf1b57e2b650ce9423312d72c5f2690fac148Approve630845822023-05-25 22:08:454 days 2 hrs ago0x21f07c0826454badcf1641b6ed1e774f8dc63477 IN  OneRing: RING Token0 FTM0.003288197096
0xf7f6ed0b565b33a7cd24c4b32ea1be8f87b0bb431f05099a5a5109fddad663b8Approve630810562023-05-25 21:00:224 days 3 hrs ago0x8d2e7f87895b518804514ac0f236dfb4f5726164 IN  OneRing: RING Token0 FTM0.003279665664
0xf8871a61ee8afa6a789f0b15c6a7510054f384827e9a42b4db7694aef400b306Approve630788592023-05-25 20:15:094 days 4 hrs ago0xc8fb4d5c98b4c62c45f231f0674ae1b2d94f1131 IN  OneRing: RING Token0 FTM0.006871982
0x8d0fe0f47f336ac8915485bdd3603175e229c2dbba3b51768345cd3c82b4608dApprove630773452023-05-25 19:43:034 days 4 hrs ago0xede00d0267f46e2443b10e75da21d4909c44facd IN  OneRing: RING Token0 FTM0.00638421
0x9ae2f5c65360b55d7e86794f0d9288a722bbf8ef519e6ec2af72478745302ddaApprove630771782023-05-25 19:39:374 days 4 hrs ago0x3cc6ce92eefb01732d88e54e7b2542e70d603aaf IN  OneRing: RING Token0 FTM0.00495023
[ Download CSV Export 

OVERVIEW

One Ring is a multi-chain cross-stable yield optimizer platform.

Latest 1 internal transaction
Parent Txn Hash Block From To Value
0x824211c35e06138f61083d6ecaacacf9513e166ede19c954a14558500eef33f5290220582022-01-25 17:08:51489 days 7 hrs ago OneRing: Deployer  Contract Creation0 FTM
[ Download CSV Export 
Loading

Similar Match Source Code
Note: This contract matches the deployed ByteCode of the Source Code for Contract 0xbc56091118baa8bbedfb384d3f30fd7f4fd6f026

Contract Name:
LERC20

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at FtmScan.com on 2022-01-05
*/

//SPDX-License-Identifier: Unlicense
pragma solidity 0.8.0;

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

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

interface IERC20 {
    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);
}

interface ILosslessController {
    function beforeTransfer(address sender, address recipient, uint256 amount) external;

    function beforeTransferFrom(address msgSender, address sender, address recipient, uint256 amount) external;

    function beforeApprove(address sender, address spender, uint256 amount) external;

    function beforeIncreaseAllowance(address msgSender, address spender, uint256 addedValue) external;

    function beforeDecreaseAllowance(address msgSender, address spender, uint256 subtractedValue) external;
}

contract LERC20 is Context, IERC20 {
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    uint256 private _totalSupply;
    string private _name;
    string private _symbol;

    address public recoveryAdmin;
    address private recoveryAdminCanditate;
    bytes32 private recoveryAdminKeyHash;
    address public admin;
    uint256 public timelockPeriod;
    uint256 public losslessTurnOffTimestamp;
    bool public isLosslessTurnOffProposed;
    bool public isLosslessOn = true;
    ILosslessController public lossless;

    event AdminChanged(address indexed previousAdmin, address indexed newAdmin);
    event RecoveryAdminChangeProposed(address indexed candidate);
    event RecoveryAdminChanged(address indexed previousAdmin, address indexed newAdmin);
    event LosslessTurnOffProposed(uint256 turnOffDate);
    event LosslessTurnedOff();
    event LosslessTurnedOn();

    constructor(uint256 totalSupply_, string memory name_, string memory symbol_, address admin_, address recoveryAdmin_, uint256 timelockPeriod_, address lossless_) {
        _mint(_msgSender(), totalSupply_);
        _name = name_;
        _symbol = symbol_;
        admin = admin_;
        recoveryAdmin = recoveryAdmin_;
        timelockPeriod = timelockPeriod_;
        lossless = ILosslessController(lossless_);
    }

    // --- LOSSLESS modifiers ---

    modifier lssAprove(address spender, uint256 amount) {
        if (isLosslessOn) {
            lossless.beforeApprove(_msgSender(), spender, amount);
        } 
        _;
    }

    modifier lssTransfer(address recipient, uint256 amount) {
        if (isLosslessOn) {
            lossless.beforeTransfer(_msgSender(), recipient, amount);
        } 
        _;
    }

    modifier lssTransferFrom(address sender, address recipient, uint256 amount) {
        if (isLosslessOn) {
            lossless.beforeTransferFrom(_msgSender(), sender, recipient, amount);
        }
        _;
    }

    modifier lssIncreaseAllowance(address spender, uint256 addedValue) {
        if (isLosslessOn) {
            lossless.beforeIncreaseAllowance(_msgSender(), spender, addedValue);
        }
        _;
    }

    modifier lssDecreaseAllowance(address spender, uint256 subtractedValue) {
        if (isLosslessOn) {
            lossless.beforeDecreaseAllowance(_msgSender(), spender, subtractedValue);
        }
        _;
    }

    modifier onlyRecoveryAdmin() {
        require(_msgSender() == recoveryAdmin, "LERC20: Must be recovery admin");
        _;
    }

    // --- LOSSLESS management ---

    function getAdmin() external view returns (address) {
        return admin;
    }

    function transferOutBlacklistedFunds(address[] calldata from) external {
        require(_msgSender() == address(lossless), "LERC20: Only lossless contract");
        for (uint i = 0; i < from.length; i++) {
            _transfer(from[i], address(lossless), balanceOf(from[i]));
        }
    }

    function setLosslessAdmin(address newAdmin) external onlyRecoveryAdmin {
        require(newAdmin != address(0), "LERC20: Cannot be zero address");
        emit AdminChanged(admin, newAdmin);
        admin = newAdmin;
    }

    function transferRecoveryAdminOwnership(address candidate, bytes32 keyHash) external onlyRecoveryAdmin {
        require(candidate != address(0), "LERC20: Cannot be zero address");
        recoveryAdminCanditate = candidate;
        recoveryAdminKeyHash = keyHash;
        emit RecoveryAdminChangeProposed(candidate);
    }

    function acceptRecoveryAdminOwnership(bytes memory key) external {
        require(_msgSender() == recoveryAdminCanditate, "LERC20: Must be canditate");
        require(keccak256(key) == recoveryAdminKeyHash, "LERC20: Invalid key");
        emit RecoveryAdminChanged(recoveryAdmin, recoveryAdminCanditate);
        recoveryAdmin = recoveryAdminCanditate;
    }

    function proposeLosslessTurnOff() external onlyRecoveryAdmin {
        losslessTurnOffTimestamp = block.timestamp + timelockPeriod;
        isLosslessTurnOffProposed = true;
        emit LosslessTurnOffProposed(losslessTurnOffTimestamp);
    }

    function executeLosslessTurnOff() external onlyRecoveryAdmin {
        require(isLosslessTurnOffProposed, "LERC20: TurnOff not proposed");
        require(losslessTurnOffTimestamp <= block.timestamp, "LERC20: Time lock in progress");
        isLosslessOn = false;
        isLosslessTurnOffProposed = false;
        emit LosslessTurnedOff();
    }

    function executeLosslessTurnOn() external onlyRecoveryAdmin {
        isLosslessTurnOffProposed = false;
        isLosslessOn = true;
        emit LosslessTurnedOn();
    }

    // --- ERC20 methods ---

    function name() external view virtual returns (string memory) {
        return _name;
    }

    function symbol() external view virtual returns (string memory) {
        return _symbol;
    }

    function decimals() external view virtual returns (uint8) {
        return 18;
    }

    function totalSupply() external view virtual override returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }

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

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

    function approve(address spender, uint256 amount) external virtual override lssAprove(spender, amount) returns (bool) {
        require((amount == 0) || (_allowances[_msgSender()][spender] == 0), "LERC20: Cannot change non zero allowance");
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) external virtual override lssTransferFrom(sender, recipient, amount) returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "LERC20: transfer amount exceeds allowance");
        _approve(sender, _msgSender(), currentAllowance - amount);

        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) external virtual lssIncreaseAllowance(spender, addedValue) returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) external virtual lssDecreaseAllowance(spender, subtractedValue) returns (bool) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "LERC20: decreased allowance below zero");
        _approve(_msgSender(), spender, currentAllowance - subtractedValue);

        return true;
    }

    function _transfer(address sender, address recipient, uint256 amount) internal virtual {
        require(sender != address(0), "LERC20: transfer from the zero address");
        require(recipient != address(0), "LERC20: transfer to the zero address");

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "LERC20: transfer amount exceeds balance");
        _balances[sender] = senderBalance - amount;
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "LERC20: mint to the zero address");

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);
    }

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

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"uint256","name":"totalSupply_","type":"uint256"},{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"address","name":"admin_","type":"address"},{"internalType":"address","name":"recoveryAdmin_","type":"address"},{"internalType":"uint256","name":"timelockPeriod_","type":"uint256"},{"internalType":"address","name":"lossless_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":true,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"turnOffDate","type":"uint256"}],"name":"LosslessTurnOffProposed","type":"event"},{"anonymous":false,"inputs":[],"name":"LosslessTurnedOff","type":"event"},{"anonymous":false,"inputs":[],"name":"LosslessTurnedOn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"candidate","type":"address"}],"name":"RecoveryAdminChangeProposed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":true,"internalType":"address","name":"newAdmin","type":"address"}],"name":"RecoveryAdminChanged","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":"bytes","name":"key","type":"bytes"}],"name":"acceptRecoveryAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"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":[],"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":[],"name":"executeLosslessTurnOff","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"executeLosslessTurnOn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":[],"name":"isLosslessOn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isLosslessTurnOffProposed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lossless","outputs":[{"internalType":"contract ILosslessController","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"losslessTurnOffTimestamp","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":"proposeLosslessTurnOff","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"recoveryAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"setLosslessAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"timelockPeriod","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":"from","type":"address[]"}],"name":"transferOutBlacklistedFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"candidate","type":"address"},{"internalType":"bytes32","name":"keyHash","type":"bytes32"}],"name":"transferRecoveryAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040526001600b60016101000a81548160ff0219169083151502179055503480156200002c57600080fd5b50604051620033dd380380620033dd833981810160405281019062000052919062000425565b62000073620000666200017c60201b60201c565b886200018460201b60201c565b85600390805190602001906200008b929190620002d5565b508460049080519060200190620000a4929190620002d5565b5083600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160098190555080600b60026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050505050620007d6565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415620001f7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001ee9062000557565b60405180910390fd5b80600260008282546200020b91906200060e565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546200026291906200060e565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620002c9919062000579565b60405180910390a35050565b828054620002e390620006df565b90600052602060002090601f01602090048101928262000307576000855562000353565b82601f106200032257805160ff191683800117855562000353565b8280016001018555821562000353579182015b828111156200035257825182559160200191906001019062000335565b5b50905062000362919062000366565b5090565b5b808211156200038157600081600090555060010162000367565b5090565b60006200039c6200039684620005ca565b62000596565b905082815260208101848484011115620003b557600080fd5b620003c2848285620006a9565b509392505050565b600081519050620003db81620007a2565b92915050565b600082601f830112620003f357600080fd5b81516200040584826020860162000385565b91505092915050565b6000815190506200041f81620007bc565b92915050565b600080600080600080600060e0888a0312156200044157600080fd5b6000620004518a828b016200040e565b975050602088015167ffffffffffffffff8111156200046f57600080fd5b6200047d8a828b01620003e1565b965050604088015167ffffffffffffffff8111156200049b57600080fd5b620004a98a828b01620003e1565b9550506060620004bc8a828b01620003ca565b9450506080620004cf8a828b01620003ca565b93505060a0620004e28a828b016200040e565b92505060c0620004f58a828b01620003ca565b91505092959891949750929550565b600062000513602083620005fd565b91507f4c45524332303a206d696e7420746f20746865207a65726f20616464726573736000830152602082019050919050565b62000551816200069f565b82525050565b60006020820190508181036000830152620005728162000504565b9050919050565b600060208201905062000590600083018462000546565b92915050565b6000604051905081810181811067ffffffffffffffff82111715620005c057620005bf62000773565b5b8060405250919050565b600067ffffffffffffffff821115620005e857620005e762000773565b5b601f19601f8301169050602081019050919050565b600082825260208201905092915050565b60006200061b826200069f565b915062000628836200069f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000660576200065f62000715565b5b828201905092915050565b600062000678826200067f565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b83811015620006c9578082015181840152602081019050620006ac565b83811115620006d9576000848401525b50505050565b60006002820490506001821680620006f857607f821691505b602082108114156200070f576200070e62000744565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620007ad816200066b565b8114620007b957600080fd5b50565b620007c7816200069f565b8114620007d357600080fd5b50565b612bf780620007e66000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c806370a08231116100de578063b38fe95711610097578063d6e242b811610071578063d6e242b814610463578063dd62ed3e1461046d578063efab831c1461049d578063f851a440146104bb5761018e565b8063b38fe9571461041f578063b5c2287714610429578063ccfa214f146104455761018e565b806370a082311461033957806393310ffe14610369578063936af9111461038557806395d89b41146103a1578063a457c2d7146103bf578063a9059cbb146103ef5761018e565b8063313ce5671161014b5780635b8a194a116101255780635b8a194a146102d55780635f6529a3146102df57806361086b00146102fd5780636e9960c31461031b5761018e565b8063313ce5671461026957806334f6ebf51461028757806339509351146102a55761018e565b806306fdde0314610193578063095ea7b3146101b157806318160ddd146101e157806323b872dd146101ff5780632baa3c9e1461022f5780632ecaf6751461024b575b600080fd5b61019b6104d9565b6040516101a8919061265f565b60405180910390f35b6101cb60048036038101906101c69190611f5c565b61056b565b6040516101d89190612629565b60405180910390f35b6101e961070c565b6040516101f69190612861565b60405180910390f35b61021960048036038101906102149190611ed1565b610716565b6040516102269190612629565b60405180910390f35b61024960048036038101906102449190611e6c565b6108cd565b005b610253610a94565b6040516102609190612861565b60405180910390f35b610271610a9a565b60405161027e919061287c565b60405180910390f35b61028f610aa3565b60405161029c9190612644565b60405180910390f35b6102bf60048036038101906102ba9190611f5c565b610ac9565b6040516102cc9190612629565b60405180910390f35b6102dd610c27565b005b6102e7610d22565b6040516102f49190612592565b60405180910390f35b610305610d48565b6040516103129190612861565b60405180910390f35b610323610d4e565b6040516103309190612592565b60405180910390f35b610353600480360381019061034e9190611e6c565b610d78565b6040516103609190612861565b60405180910390f35b610383600480360381019061037e9190611f20565b610dc0565b005b61039f600480360381019061039a9190611f98565b610f56565b005b6103a96110e2565b6040516103b6919061265f565b60405180910390f35b6103d960048036038101906103d49190611f5c565b611174565b6040516103e69190612629565b60405180910390f35b61040960048036038101906104049190611f5c565b61131b565b6040516104169190612629565b60405180910390f35b6104276113eb565b005b610443600480360381019061043e9190611fdd565b61157a565b005b61044d611760565b60405161045a9190612629565b60405180910390f35b61046b611773565b005b61048760048036038101906104829190611e95565b611874565b6040516104949190612861565b60405180910390f35b6104a56118fb565b6040516104b29190612629565b60405180910390f35b6104c361190e565b6040516104d09190612592565b60405180910390f35b6060600380546104e890612a63565b80601f016020809104026020016040519081016040528092919081815260200182805461051490612a63565b80156105615780601f1061053657610100808354040283529160200191610561565b820191906000526020600020905b81548152906001019060200180831161054457829003601f168201915b5050505050905090565b60008282600b60019054906101000a900460ff161561061d57600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166347abf3be6105ca611934565b84846040518463ffffffff1660e01b81526004016105ea939291906125f2565b600060405180830381600087803b15801561060457600080fd5b505af1158015610618573d6000803e3d6000fd5b505050505b60008414806106af5750600060016000610635611934565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b6106ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106e5906127e1565b60405180910390fd5b6107006106f9611934565b868661193c565b60019250505092915050565b6000600254905090565b6000838383600b60019054906101000a900460ff16156107cb57600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663379f5c69610776611934565b8585856040518563ffffffff1660e01b815260040161079894939291906125ad565b600060405180830381600087803b1580156107b257600080fd5b505af11580156107c6573d6000803e3d6000fd5b505050505b6107d6878787611b07565b6000600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610821611934565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050858110156108a1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610898906126e1565b60405180910390fd5b6108be886108ad611934565b88846108b9919061296a565b61193c565b60019450505050509392505050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661090e611934565b73ffffffffffffffffffffffffffffffffffffffff1614610964576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095b906127a1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156109d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109cb90612781565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f60405160405180910390a380600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60095481565b60006012905090565b600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008282600b60019054906101000a900460ff1615610b7b57600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663cf5961bb610b28611934565b84846040518463ffffffff1660e01b8152600401610b48939291906125f2565b600060405180830381600087803b158015610b6257600080fd5b505af1158015610b76573d6000803e3d6000fd5b505050505b610c1b610b86611934565b868660016000610b94611934565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c169190612914565b61193c565b60019250505092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c68611934565b73ffffffffffffffffffffffffffffffffffffffff1614610cbe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb5906127a1565b60405180910390fd5b6000600b60006101000a81548160ff0219169083151502179055506001600b60016101000a81548160ff0219169083151502179055507fa4a40bdd0a809720a61b44f1b3497ce7dad87741a0ba3b961c2e65e645060e7060405160405180910390a1565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610e01611934565b73ffffffffffffffffffffffffffffffffffffffff1614610e57576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4e906127a1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610ec7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ebe90612781565b60405180910390fd5b81600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806007819055508173ffffffffffffffffffffffffffffffffffffffff167fc5666bfdfb79a4b0b4abdbc565d6e9937a263233b2b378c55132d34dc5784a3660405160405180910390a25050565b600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f97611934565b73ffffffffffffffffffffffffffffffffffffffff1614610fed576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fe4906127c1565b60405180910390fd5b60005b828290508110156110dd576110ca838383818110611037577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b905060200201602081019061104c9190611e6c565b600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff166110c58686868181106110ab577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906110c09190611e6c565b610d78565b611b07565b80806110d590612a95565b915050610ff0565b505050565b6060600480546110f190612a63565b80601f016020809104026020016040519081016040528092919081815260200182805461111d90612a63565b801561116a5780601f1061113f5761010080835404028352916020019161116a565b820191906000526020600020905b81548152906001019060200180831161114d57829003601f168201915b5050505050905090565b60008282600b60019054906101000a900460ff161561122657600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663568c75a96111d3611934565b84846040518463ffffffff1660e01b81526004016111f3939291906125f2565b600060405180830381600087803b15801561120d57600080fd5b505af1158015611221573d6000803e3d6000fd5b505050505b600060016000611234611934565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050848110156112f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e890612821565b60405180910390fd5b61130e6112fc611934565b878784611309919061296a565b61193c565b6001935050505092915050565b60008282600b60019054906101000a900460ff16156113cd57600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ffb811f61137a611934565b84846040518463ffffffff1660e01b815260040161139a939291906125f2565b600060405180830381600087803b1580156113b457600080fd5b505af11580156113c8573d6000803e3d6000fd5b505050505b6113df6113d8611934565b8686611b07565b60019250505092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661142c611934565b73ffffffffffffffffffffffffffffffffffffffff1614611482576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611479906127a1565b60405180910390fd5b600b60009054906101000a900460ff166114d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114c890612721565b60405180910390fd5b42600a541115611516576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150d906126a1565b60405180910390fd5b6000600b60016101000a81548160ff0219169083151502179055506000600b60006101000a81548160ff0219169083151502179055507f5b534e2716e5ad68b9f67521378f8199a7ceb9d3f6f354275dad33fe42cf710a60405160405180910390a1565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166115bb611934565b73ffffffffffffffffffffffffffffffffffffffff1614611611576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161160890612761565b60405180910390fd5b60075481805190602001201461165c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161165390612701565b60405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1c7f382531621f02aefb4212478bba8871ffad078202bdbba87f3e21d639aebb60405160405180910390a3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600b60019054906101000a900460ff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166117b4611934565b73ffffffffffffffffffffffffffffffffffffffff161461180a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611801906127a1565b60405180910390fd5b600954426118189190612914565b600a819055506001600b60006101000a81548160ff0219169083151502179055507f88e0be0448355c71674462d3cb36342f0d085f7b43a1deab03052c95eb158709600a5460405161186a9190612861565b60405180910390a1565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600b60009054906101000a900460ff1681565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156119ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119a390612801565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a1390612841565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611afa9190612861565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611b77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6e90612741565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611be7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bde90612681565b60405180910390fd5b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611c6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c64906126c1565b60405180910390fd5b8181611c79919061296a565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611d099190612914565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611d6d9190612861565b60405180910390a350505050565b6000611d8e611d89846128c8565b612897565b905082815260208101848484011115611da657600080fd5b611db1848285612a21565b509392505050565b600081359050611dc881612b7c565b92915050565b60008083601f840112611de057600080fd5b8235905067ffffffffffffffff811115611df957600080fd5b602083019150836020820283011115611e1157600080fd5b9250929050565b600081359050611e2781612b93565b92915050565b600082601f830112611e3e57600080fd5b8135611e4e848260208601611d7b565b91505092915050565b600081359050611e6681612baa565b92915050565b600060208284031215611e7e57600080fd5b6000611e8c84828501611db9565b91505092915050565b60008060408385031215611ea857600080fd5b6000611eb685828601611db9565b9250506020611ec785828601611db9565b9150509250929050565b600080600060608486031215611ee657600080fd5b6000611ef486828701611db9565b9350506020611f0586828701611db9565b9250506040611f1686828701611e57565b9150509250925092565b60008060408385031215611f3357600080fd5b6000611f4185828601611db9565b9250506020611f5285828601611e18565b9150509250929050565b60008060408385031215611f6f57600080fd5b6000611f7d85828601611db9565b9250506020611f8e85828601611e57565b9150509250929050565b60008060208385031215611fab57600080fd5b600083013567ffffffffffffffff811115611fc557600080fd5b611fd185828601611dce565b92509250509250929050565b600060208284031215611fef57600080fd5b600082013567ffffffffffffffff81111561200957600080fd5b61201584828501611e2d565b91505092915050565b6120278161299e565b82525050565b612036816129b0565b82525050565b612045816129fd565b82525050565b6000612056826128f8565b6120608185612903565b9350612070818560208601612a30565b61207981612b6b565b840191505092915050565b6000612091602483612903565b91507f4c45524332303a207472616e7366657220746f20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006120f7601d83612903565b91507f4c45524332303a2054696d65206c6f636b20696e2070726f67726573730000006000830152602082019050919050565b6000612137602783612903565b91507f4c45524332303a207472616e7366657220616d6f756e7420657863656564732060008301527f62616c616e6365000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061219d602983612903565b91507f4c45524332303a207472616e7366657220616d6f756e7420657863656564732060008301527f616c6c6f77616e636500000000000000000000000000000000000000000000006020830152604082019050919050565b6000612203601383612903565b91507f4c45524332303a20496e76616c6964206b6579000000000000000000000000006000830152602082019050919050565b6000612243601c83612903565b91507f4c45524332303a205475726e4f6666206e6f742070726f706f736564000000006000830152602082019050919050565b6000612283602683612903565b91507f4c45524332303a207472616e736665722066726f6d20746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006122e9601983612903565b91507f4c45524332303a204d7573742062652063616e646974617465000000000000006000830152602082019050919050565b6000612329601e83612903565b91507f4c45524332303a2043616e6e6f74206265207a65726f206164647265737300006000830152602082019050919050565b6000612369601e83612903565b91507f4c45524332303a204d757374206265207265636f766572792061646d696e00006000830152602082019050919050565b60006123a9601e83612903565b91507f4c45524332303a204f6e6c79206c6f73736c65737320636f6e747261637400006000830152602082019050919050565b60006123e9602883612903565b91507f4c45524332303a2043616e6e6f74206368616e6765206e6f6e207a65726f206160008301527f6c6c6f77616e63650000000000000000000000000000000000000000000000006020830152604082019050919050565b600061244f602583612903565b91507f4c45524332303a20617070726f76652066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124b5602683612903565b91507f4c45524332303a2064656372656173656420616c6c6f77616e63652062656c6f60008301527f77207a65726f00000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061251b602383612903565b91507f4c45524332303a20617070726f766520746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b61257d816129e6565b82525050565b61258c816129f0565b82525050565b60006020820190506125a7600083018461201e565b92915050565b60006080820190506125c2600083018761201e565b6125cf602083018661201e565b6125dc604083018561201e565b6125e96060830184612574565b95945050505050565b6000606082019050612607600083018661201e565b612614602083018561201e565b6126216040830184612574565b949350505050565b600060208201905061263e600083018461202d565b92915050565b6000602082019050612659600083018461203c565b92915050565b60006020820190508181036000830152612679818461204b565b905092915050565b6000602082019050818103600083015261269a81612084565b9050919050565b600060208201905081810360008301526126ba816120ea565b9050919050565b600060208201905081810360008301526126da8161212a565b9050919050565b600060208201905081810360008301526126fa81612190565b9050919050565b6000602082019050818103600083015261271a816121f6565b9050919050565b6000602082019050818103600083015261273a81612236565b9050919050565b6000602082019050818103600083015261275a81612276565b9050919050565b6000602082019050818103600083015261277a816122dc565b9050919050565b6000602082019050818103600083015261279a8161231c565b9050919050565b600060208201905081810360008301526127ba8161235c565b9050919050565b600060208201905081810360008301526127da8161239c565b9050919050565b600060208201905081810360008301526127fa816123dc565b9050919050565b6000602082019050818103600083015261281a81612442565b9050919050565b6000602082019050818103600083015261283a816124a8565b9050919050565b6000602082019050818103600083015261285a8161250e565b9050919050565b60006020820190506128766000830184612574565b92915050565b60006020820190506128916000830184612583565b92915050565b6000604051905081810181811067ffffffffffffffff821117156128be576128bd612b3c565b5b8060405250919050565b600067ffffffffffffffff8211156128e3576128e2612b3c565b5b601f19601f8301169050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061291f826129e6565b915061292a836129e6565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561295f5761295e612ade565b5b828201905092915050565b6000612975826129e6565b9150612980836129e6565b92508282101561299357612992612ade565b5b828203905092915050565b60006129a9826129c6565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000612a0882612a0f565b9050919050565b6000612a1a826129c6565b9050919050565b82818337600083830152505050565b60005b83811015612a4e578082015181840152602081019050612a33565b83811115612a5d576000848401525b50505050565b60006002820490506001821680612a7b57607f821691505b60208210811415612a8f57612a8e612b0d565b5b50919050565b6000612aa0826129e6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612ad357612ad2612ade565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b612b858161299e565b8114612b9057600080fd5b50565b612b9c816129bc565b8114612ba757600080fd5b50565b612bb3816129e6565b8114612bbe57600080fd5b5056fea26469706673582212208da251fea6d4449a3c04a3e10383792124ed3bd83e8497527c5ff4739cbb3aa564736f6c634300080000330000000000000000000000000000000000000000000000a2a15d09519be0000000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000591244e64e33f595cc010ff5dbfb4568a018b4d9000000000000000000000000591244e64e33f595cc010ff5dbfb4568a018b4d9000000000000000000000000000000000000000000000000000000000002a300000000000000000000000000dbb5125ceeaf7233768c84a5df570aeecf0b4634000000000000000000000000000000000000000000000000000000000000000b46414e544f4d5f5445535400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024654000000000000000000000000000000000000000000000000000000000000

Deployed ByteCode Sourcemap

1685:8489:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6547:93;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7477:320;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6847:110;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7805:468;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4772:227;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2099:29;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6753:86;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2263:35;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8281:259;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6331:176;;;:::i;:::-;;1949:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2135:39;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4374:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6965:127;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5007:328;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4465:299;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6648:97;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8548:427;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7100:208;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5971:352;;;:::i;:::-;;5343:365;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2225:31;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5716:247;;;:::i;:::-;;7316:153;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2181:37;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2072:20;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6547:93;6594:13;6627:5;6620:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6547:93;:::o;7477:320::-;7589:4;7563:7;7572:6;3207:12;;;;;;;;;;;3203:98;;;3236:8;;;;;;;;;;;:22;;;3259:12;:10;:12::i;:::-;3273:7;3282:6;3236:53;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3203:98;7625:1:::1;7615:6;:11;7614:58;;;;7670:1;7632:11;:25;7644:12;:10;:12::i;:::-;7632:25;;;;;;;;;;;;;;;:34;7658:7;7632:34;;;;;;;;;;;;;;;;:39;7614:58;7606:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;7728:39;7737:12;:10;:12::i;:::-;7751:7;7760:6;7728:8;:39::i;:::-;7785:4;7778:11;;7477:320:::0;;;;;;:::o;6847:110::-;6910:7;6937:12;;6930:19;;6847:110;:::o;7805:468::-;7956:4;7920:6;7928:9;7939:6;3616:12;;;;;;;;;;;3612:113;;;3645:8;;;;;;;;;;;:27;;;3673:12;:10;:12::i;:::-;3687:6;3695:9;3706:6;3645:68;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3612:113;7973:36:::1;7983:6;7991:9;8002:6;7973:9;:36::i;:::-;8022:24;8049:11;:19;8061:6;8049:19;;;;;;;;;;;;;;;:33;8069:12;:10;:12::i;:::-;8049:33;;;;;;;;;;;;;;;;8022:60;;8121:6;8101:16;:26;;8093:80;;;;;;;;;;;;:::i;:::-;;;;;;;;;8184:57;8193:6;8201:12;:10;:12::i;:::-;8234:6;8215:16;:25;;;;:::i;:::-;8184:8;:57::i;:::-;8261:4;8254:11;;;7805:468:::0;;;;;;;;:::o;4772:227::-;4260:13;;;;;;;;;;;4244:29;;:12;:10;:12::i;:::-;:29;;;4236:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;4882:1:::1;4862:22;;:8;:22;;;;4854:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;4955:8;4935:29;;4948:5;;;;;;;;;;;4935:29;;;;;;;;;;;;4983:8;4975:5;;:16;;;;;;;;;;;;;;;;;;4772:227:::0;:::o;2099:29::-;;;;:::o;6753:86::-;6804:5;6829:2;6822:9;;6753:86;:::o;2263:35::-;;;;;;;;;;;;;:::o;8281:259::-;8413:4;8383:7;8392:10;3834:12;;;;;;;;;;;3830:112;;;3863:8;;;;;;;;;;;:32;;;3896:12;:10;:12::i;:::-;3910:7;3919:10;3863:67;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3830:112;8430:80:::1;8439:12;:10;:12::i;:::-;8453:7;8499:10;8462:11;:25;8474:12;:10;:12::i;:::-;8462:25;;;;;;;;;;;;;;;:34;8488:7;8462:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;8430:8;:80::i;:::-;8528:4;8521:11;;8281:259:::0;;;;;;:::o;6331:176::-;4260:13;;;;;;;;;;;4244:29;;:12;:10;:12::i;:::-;:29;;;4236:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;6430:5:::1;6402:25;;:33;;;;;;;;;;;;;;;;;;6461:4;6446:12;;:19;;;;;;;;;;;;;;;;;;6481:18;;;;;;;;;;6331:176::o:0;1949:28::-;;;;;;;;;;;;;:::o;2135:39::-;;;;:::o;4374:83::-;4417:7;4444:5;;;;;;;;;;;4437:12;;4374:83;:::o;6965:127::-;7039:7;7066:9;:18;7076:7;7066:18;;;;;;;;;;;;;;;;7059:25;;6965:127;;;:::o;5007:328::-;4260:13;;;;;;;;;;;4244:29;;:12;:10;:12::i;:::-;:29;;;4236:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;5150:1:::1;5129:23;;:9;:23;;;;5121:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;5223:9;5198:22;;:34;;;;;;;;;;;;;;;;;;5266:7;5243:20;:30;;;;5317:9;5289:38;;;;;;;;;;;;5007:328:::0;;:::o;4465:299::-;4579:8;;;;;;;;;;;4555:33;;:12;:10;:12::i;:::-;:33;;;4547:76;;;;;;;;;;;;:::i;:::-;;;;;;;;;4639:6;4634:123;4655:4;;:11;;4651:1;:15;4634:123;;;4688:57;4698:4;;4703:1;4698:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4715:8;;;;;;;;;;;4726:18;4736:4;;4741:1;4736:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4726:9;:18::i;:::-;4688:9;:57::i;:::-;4668:3;;;;;:::i;:::-;;;;4634:123;;;;4465:299;;:::o;6648:97::-;6697:13;6730:7;6723:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6648:97;:::o;8548:427::-;8690:4;8655:7;8664:15;4056:12;;;;;;;;;;;4052:117;;;4085:8;;;;;;;;;;;:32;;;4118:12;:10;:12::i;:::-;4132:7;4141:15;4085:72;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4052:117;8707:24:::1;8734:11;:25;8746:12;:10;:12::i;:::-;8734:25;;;;;;;;;;;;;;;:34;8760:7;8734:34;;;;;;;;;;;;;;;;8707:61;;8807:15;8787:16;:35;;8779:86;;;;;;;;;;;;:::i;:::-;;;;;;;;;8876:67;8885:12;:10;:12::i;:::-;8899:7;8927:15;8908:16;:34;;;;:::i;:::-;8876:8;:67::i;:::-;8963:4;8956:11;;;8548:427:::0;;;;;;:::o;7100:208::-;7219:4;7191:9;7202:6;3400:12;;;;;;;;;;;3396:101;;;3429:8;;;;;;;;;;;:23;;;3453:12;:10;:12::i;:::-;3467:9;3478:6;3429:56;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3396:101;7236:42:::1;7246:12;:10;:12::i;:::-;7260:9;7271:6;7236:9;:42::i;:::-;7296:4;7289:11;;7100:208:::0;;;;;;:::o;5971:352::-;4260:13;;;;;;;;;;;4244:29;;:12;:10;:12::i;:::-;:29;;;4236:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;6051:25:::1;;;;;;;;;;;6043:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;6156:15;6128:24;;:43;;6120:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;6231:5;6216:12;;:20;;;;;;;;;;;;;;;;;;6275:5;6247:25;;:33;;;;;;;;;;;;;;;;;;6296:19;;;;;;;;;;5971:352::o:0;5343:365::-;5443:22;;;;;;;;;;;5427:38;;:12;:10;:12::i;:::-;:38;;;5419:76;;;;;;;;;;;;:::i;:::-;;;;;;;;;5532:20;;5524:3;5514:14;;;;;;:38;5506:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;5628:22;;;;;;;;;;;5592:59;;5613:13;;;;;;;;;;;5592:59;;;;;;;;;;;;5678:22;;;;;;;;;;;5662:13;;:38;;;;;;;;;;;;;;;;;;5343:365;:::o;2225:31::-;;;;;;;;;;;;;:::o;5716:247::-;4260:13;;;;;;;;;;;4244:29;;:12;:10;:12::i;:::-;:29;;;4236:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;5833:14:::1;;5815:15;:32;;;;:::i;:::-;5788:24;:59;;;;5886:4;5858:25;;:32;;;;;;;;;;;;;;;;;;5906:49;5930:24;;5906:49;;;;;;:::i;:::-;;;;;;;;5716:247::o:0;7316:153::-;7407:7;7434:11;:18;7446:5;7434:18;;;;;;;;;;;;;;;:27;7453:7;7434:27;;;;;;;;;;;;;;;;7427:34;;7316:153;;;;:::o;2181:37::-;;;;;;;;;;;;;:::o;2072:20::-;;;;;;;;;;;;;:::o;97:98::-;150:7;177:10;170:17;;97:98;:::o;9823:348::-;9942:1;9925:19;;:5;:19;;;;9917:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;10024:1;10005:21;;:7;:21;;;;9997:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;10109:6;10079:11;:18;10091:5;10079:18;;;;;;;;;;;;;;;:27;10098:7;10079:27;;;;;;;;;;;;;;;:36;;;;10147:7;10131:32;;10140:5;10131:32;;;10156:6;10131:32;;;;;;:::i;:::-;;;;;;;;9823:348;;;:::o;8983:547::-;9107:1;9089:20;;:6;:20;;;;9081:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;9192:1;9171:23;;:9;:23;;;;9163:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;9248:21;9272:9;:17;9282:6;9272:17;;;;;;;;;;;;;;;;9248:41;;9325:6;9308:13;:23;;9300:75;;;;;;;;;;;;:::i;:::-;;;;;;;;;9422:6;9406:13;:22;;;;:::i;:::-;9386:9;:17;9396:6;9386:17;;;;;;;;;;;;;;;:42;;;;9463:6;9439:9;:20;9449:9;9439:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;9504:9;9487:35;;9496:6;9487:35;;;9515:6;9487:35;;;;;;:::i;:::-;;;;;;;;8983:547;;;;:::o;7:342:1:-;;109:64;124:48;165:6;124:48;:::i;:::-;109:64;:::i;:::-;100:73;;196:6;189:5;182:21;234:4;227:5;223:16;272:3;263:6;258:3;254:16;251:25;248:2;;;289:1;286;279:12;248:2;302:41;336:6;331:3;326;302:41;:::i;:::-;90:259;;;;;;:::o;355:139::-;;439:6;426:20;417:29;;455:33;482:5;455:33;:::i;:::-;407:87;;;;:::o;517:367::-;;;650:3;643:4;635:6;631:17;627:27;617:2;;668:1;665;658:12;617:2;704:6;691:20;681:30;;734:18;726:6;723:30;720:2;;;766:1;763;756:12;720:2;803:4;795:6;791:17;779:29;;857:3;849:4;841:6;837:17;827:8;823:32;820:41;817:2;;;874:1;871;864:12;817:2;607:277;;;;;:::o;890:139::-;;974:6;961:20;952:29;;990:33;1017:5;990:33;:::i;:::-;942:87;;;;:::o;1048:271::-;;1152:3;1145:4;1137:6;1133:17;1129:27;1119:2;;1170:1;1167;1160:12;1119:2;1210:6;1197:20;1235:78;1309:3;1301:6;1294:4;1286:6;1282:17;1235:78;:::i;:::-;1226:87;;1109:210;;;;;:::o;1325:139::-;;1409:6;1396:20;1387:29;;1425:33;1452:5;1425:33;:::i;:::-;1377:87;;;;:::o;1470:262::-;;1578:2;1566:9;1557:7;1553:23;1549:32;1546:2;;;1594:1;1591;1584:12;1546:2;1637:1;1662:53;1707:7;1698:6;1687:9;1683:22;1662:53;:::i;:::-;1652:63;;1608:117;1536:196;;;;:::o;1738:407::-;;;1863:2;1851:9;1842:7;1838:23;1834:32;1831:2;;;1879:1;1876;1869:12;1831:2;1922:1;1947:53;1992:7;1983:6;1972:9;1968:22;1947:53;:::i;:::-;1937:63;;1893:117;2049:2;2075:53;2120:7;2111:6;2100:9;2096:22;2075:53;:::i;:::-;2065:63;;2020:118;1821:324;;;;;:::o;2151:552::-;;;;2293:2;2281:9;2272:7;2268:23;2264:32;2261:2;;;2309:1;2306;2299:12;2261:2;2352:1;2377:53;2422:7;2413:6;2402:9;2398:22;2377:53;:::i;:::-;2367:63;;2323:117;2479:2;2505:53;2550:7;2541:6;2530:9;2526:22;2505:53;:::i;:::-;2495:63;;2450:118;2607:2;2633:53;2678:7;2669:6;2658:9;2654:22;2633:53;:::i;:::-;2623:63;;2578:118;2251:452;;;;;:::o;2709:407::-;;;2834:2;2822:9;2813:7;2809:23;2805:32;2802:2;;;2850:1;2847;2840:12;2802:2;2893:1;2918:53;2963:7;2954:6;2943:9;2939:22;2918:53;:::i;:::-;2908:63;;2864:117;3020:2;3046:53;3091:7;3082:6;3071:9;3067:22;3046:53;:::i;:::-;3036:63;;2991:118;2792:324;;;;;:::o;3122:407::-;;;3247:2;3235:9;3226:7;3222:23;3218:32;3215:2;;;3263:1;3260;3253:12;3215:2;3306:1;3331:53;3376:7;3367:6;3356:9;3352:22;3331:53;:::i;:::-;3321:63;;3277:117;3433:2;3459:53;3504:7;3495:6;3484:9;3480:22;3459:53;:::i;:::-;3449:63;;3404:118;3205:324;;;;;:::o;3535:425::-;;;3678:2;3666:9;3657:7;3653:23;3649:32;3646:2;;;3694:1;3691;3684:12;3646:2;3765:1;3754:9;3750:17;3737:31;3795:18;3787:6;3784:30;3781:2;;;3827:1;3824;3817:12;3781:2;3863:80;3935:7;3926:6;3915:9;3911:22;3863:80;:::i;:::-;3845:98;;;;3708:245;3636:324;;;;;:::o;3966:373::-;;4083:2;4071:9;4062:7;4058:23;4054:32;4051:2;;;4099:1;4096;4089:12;4051:2;4170:1;4159:9;4155:17;4142:31;4200:18;4192:6;4189:30;4186:2;;;4232:1;4229;4222:12;4186:2;4260:62;4314:7;4305:6;4294:9;4290:22;4260:62;:::i;:::-;4250:72;;4113:219;4041:298;;;;:::o;4345:118::-;4432:24;4450:5;4432:24;:::i;:::-;4427:3;4420:37;4410:53;;:::o;4469:109::-;4550:21;4565:5;4550:21;:::i;:::-;4545:3;4538:34;4528:50;;:::o;4584:185::-;4698:64;4756:5;4698:64;:::i;:::-;4693:3;4686:77;4676:93;;:::o;4775:364::-;;4891:39;4924:5;4891:39;:::i;:::-;4946:71;5010:6;5005:3;4946:71;:::i;:::-;4939:78;;5026:52;5071:6;5066:3;5059:4;5052:5;5048:16;5026:52;:::i;:::-;5103:29;5125:6;5103:29;:::i;:::-;5098:3;5094:39;5087:46;;4867:272;;;;;:::o;5145:368::-;;5308:67;5372:2;5367:3;5308:67;:::i;:::-;5301:74;;5405:34;5401:1;5396:3;5392:11;5385:55;5471:6;5466:2;5461:3;5457:12;5450:28;5504:2;5499:3;5495:12;5488:19;;5291:222;;;:::o;5519:327::-;;5682:67;5746:2;5741:3;5682:67;:::i;:::-;5675:74;;5779:31;5775:1;5770:3;5766:11;5759:52;5837:2;5832:3;5828:12;5821:19;;5665:181;;;:::o;5852:371::-;;6015:67;6079:2;6074:3;6015:67;:::i;:::-;6008:74;;6112:34;6108:1;6103:3;6099:11;6092:55;6178:9;6173:2;6168:3;6164:12;6157:31;6214:2;6209:3;6205:12;6198:19;;5998:225;;;:::o;6229:373::-;;6392:67;6456:2;6451:3;6392:67;:::i;:::-;6385:74;;6489:34;6485:1;6480:3;6476:11;6469:55;6555:11;6550:2;6545:3;6541:12;6534:33;6593:2;6588:3;6584:12;6577:19;;6375:227;;;:::o;6608:317::-;;6771:67;6835:2;6830:3;6771:67;:::i;:::-;6764:74;;6868:21;6864:1;6859:3;6855:11;6848:42;6916:2;6911:3;6907:12;6900:19;;6754:171;;;:::o;6931:326::-;;7094:67;7158:2;7153:3;7094:67;:::i;:::-;7087:74;;7191:30;7187:1;7182:3;7178:11;7171:51;7248:2;7243:3;7239:12;7232:19;;7077:180;;;:::o;7263:370::-;;7426:67;7490:2;7485:3;7426:67;:::i;:::-;7419:74;;7523:34;7519:1;7514:3;7510:11;7503:55;7589:8;7584:2;7579:3;7575:12;7568:30;7624:2;7619:3;7615:12;7608:19;;7409:224;;;:::o;7639:323::-;;7802:67;7866:2;7861:3;7802:67;:::i;:::-;7795:74;;7899:27;7895:1;7890:3;7886:11;7879:48;7953:2;7948:3;7944:12;7937:19;;7785:177;;;:::o;7968:328::-;;8131:67;8195:2;8190:3;8131:67;:::i;:::-;8124:74;;8228:32;8224:1;8219:3;8215:11;8208:53;8287:2;8282:3;8278:12;8271:19;;8114:182;;;:::o;8302:328::-;;8465:67;8529:2;8524:3;8465:67;:::i;:::-;8458:74;;8562:32;8558:1;8553:3;8549:11;8542:53;8621:2;8616:3;8612:12;8605:19;;8448:182;;;:::o;8636:328::-;;8799:67;8863:2;8858:3;8799:67;:::i;:::-;8792:74;;8896:32;8892:1;8887:3;8883:11;8876:53;8955:2;8950:3;8946:12;8939:19;;8782:182;;;:::o;8970:372::-;;9133:67;9197:2;9192:3;9133:67;:::i;:::-;9126:74;;9230:34;9226:1;9221:3;9217:11;9210:55;9296:10;9291:2;9286:3;9282:12;9275:32;9333:2;9328:3;9324:12;9317:19;;9116:226;;;:::o;9348:369::-;;9511:67;9575:2;9570:3;9511:67;:::i;:::-;9504:74;;9608:34;9604:1;9599:3;9595:11;9588:55;9674:7;9669:2;9664:3;9660:12;9653:29;9708:2;9703:3;9699:12;9692:19;;9494:223;;;:::o;9723:370::-;;9886:67;9950:2;9945:3;9886:67;:::i;:::-;9879:74;;9983:34;9979:1;9974:3;9970:11;9963:55;10049:8;10044:2;10039:3;10035:12;10028:30;10084:2;10079:3;10075:12;10068:19;;9869:224;;;:::o;10099:367::-;;10262:67;10326:2;10321:3;10262:67;:::i;:::-;10255:74;;10359:34;10355:1;10350:3;10346:11;10339:55;10425:5;10420:2;10415:3;10411:12;10404:27;10457:2;10452:3;10448:12;10441:19;;10245:221;;;:::o;10472:118::-;10559:24;10577:5;10559:24;:::i;:::-;10554:3;10547:37;10537:53;;:::o;10596:112::-;10679:22;10695:5;10679:22;:::i;:::-;10674:3;10667:35;10657:51;;:::o;10714:222::-;;10845:2;10834:9;10830:18;10822:26;;10858:71;10926:1;10915:9;10911:17;10902:6;10858:71;:::i;:::-;10812:124;;;;:::o;10942:553::-;;11157:3;11146:9;11142:19;11134:27;;11171:71;11239:1;11228:9;11224:17;11215:6;11171:71;:::i;:::-;11252:72;11320:2;11309:9;11305:18;11296:6;11252:72;:::i;:::-;11334;11402:2;11391:9;11387:18;11378:6;11334:72;:::i;:::-;11416;11484:2;11473:9;11469:18;11460:6;11416:72;:::i;:::-;11124:371;;;;;;;:::o;11501:442::-;;11688:2;11677:9;11673:18;11665:26;;11701:71;11769:1;11758:9;11754:17;11745:6;11701:71;:::i;:::-;11782:72;11850:2;11839:9;11835:18;11826:6;11782:72;:::i;:::-;11864;11932:2;11921:9;11917:18;11908:6;11864:72;:::i;:::-;11655:288;;;;;;:::o;11949:210::-;;12074:2;12063:9;12059:18;12051:26;;12087:65;12149:1;12138:9;12134:17;12125:6;12087:65;:::i;:::-;12041:118;;;;:::o;12165:276::-;;12323:2;12312:9;12308:18;12300:26;;12336:98;12431:1;12420:9;12416:17;12407:6;12336:98;:::i;:::-;12290:151;;;;:::o;12447:313::-;;12598:2;12587:9;12583:18;12575:26;;12647:9;12641:4;12637:20;12633:1;12622:9;12618:17;12611:47;12675:78;12748:4;12739:6;12675:78;:::i;:::-;12667:86;;12565:195;;;;:::o;12766:419::-;;12970:2;12959:9;12955:18;12947:26;;13019:9;13013:4;13009:20;13005:1;12994:9;12990:17;12983:47;13047:131;13173:4;13047:131;:::i;:::-;13039:139;;12937:248;;;:::o;13191:419::-;;13395:2;13384:9;13380:18;13372:26;;13444:9;13438:4;13434:20;13430:1;13419:9;13415:17;13408:47;13472:131;13598:4;13472:131;:::i;:::-;13464:139;;13362:248;;;:::o;13616:419::-;;13820:2;13809:9;13805:18;13797:26;;13869:9;13863:4;13859:20;13855:1;13844:9;13840:17;13833:47;13897:131;14023:4;13897:131;:::i;:::-;13889:139;;13787:248;;;:::o;14041:419::-;;14245:2;14234:9;14230:18;14222:26;;14294:9;14288:4;14284:20;14280:1;14269:9;14265:17;14258:47;14322:131;14448:4;14322:131;:::i;:::-;14314:139;;14212:248;;;:::o;14466:419::-;;14670:2;14659:9;14655:18;14647:26;;14719:9;14713:4;14709:20;14705:1;14694:9;14690:17;14683:47;14747:131;14873:4;14747:131;:::i;:::-;14739:139;;14637:248;;;:::o;14891:419::-;;15095:2;15084:9;15080:18;15072:26;;15144:9;15138:4;15134:20;15130:1;15119:9;15115:17;15108:47;15172:131;15298:4;15172:131;:::i;:::-;15164:139;;15062:248;;;:::o;15316:419::-;;15520:2;15509:9;15505:18;15497:26;;15569:9;15563:4;15559:20;15555:1;15544:9;15540:17;15533:47;15597:131;15723:4;15597:131;:::i;:::-;15589:139;;15487:248;;;:::o;15741:419::-;;15945:2;15934:9;15930:18;15922:26;;15994:9;15988:4;15984:20;15980:1;15969:9;15965:17;15958:47;16022:131;16148:4;16022:131;:::i;:::-;16014:139;;15912:248;;;:::o;16166:419::-;;16370:2;16359:9;16355:18;16347:26;;16419:9;16413:4;16409:20;16405:1;16394:9;16390:17;16383:47;16447:131;16573:4;16447:131;:::i;:::-;16439:139;;16337:248;;;:::o;16591:419::-;;16795:2;16784:9;16780:18;16772:26;;16844:9;16838:4;16834:20;16830:1;16819:9;16815:17;16808:47;16872:131;16998:4;16872:131;:::i;:::-;16864:139;;16762:248;;;:::o;17016:419::-;;17220:2;17209:9;17205:18;17197:26;;17269:9;17263:4;17259:20;17255:1;17244:9;17240:17;17233:47;17297:131;17423:4;17297:131;:::i;:::-;17289:139;;17187:248;;;:::o;17441:419::-;;17645:2;17634:9;17630:18;17622:26;;17694:9;17688:4;17684:20;17680:1;17669:9;17665:17;17658:47;17722:131;17848:4;17722:131;:::i;:::-;17714:139;;17612:248;;;:::o;17866:419::-;;18070:2;18059:9;18055:18;18047:26;;18119:9;18113:4;18109:20;18105:1;18094:9;18090:17;18083:47;18147:131;18273:4;18147:131;:::i;:::-;18139:139;;18037:248;;;:::o;18291:419::-;;18495:2;18484:9;18480:18;18472:26;;18544:9;18538:4;18534:20;18530:1;18519:9;18515:17;18508:47;18572:131;18698:4;18572:131;:::i;:::-;18564:139;;18462:248;;;:::o;18716:419::-;;18920:2;18909:9;18905:18;18897:26;;18969:9;18963:4;18959:20;18955:1;18944:9;18940:17;18933:47;18997:131;19123:4;18997:131;:::i;:::-;18989:139;;18887:248;;;:::o;19141:222::-;;19272:2;19261:9;19257:18;19249:26;;19285:71;19353:1;19342:9;19338:17;19329:6;19285:71;:::i;:::-;19239:124;;;;:::o;19369:214::-;;19496:2;19485:9;19481:18;19473:26;;19509:67;19573:1;19562:9;19558:17;19549:6;19509:67;:::i;:::-;19463:120;;;;:::o;19589:283::-;;19655:2;19649:9;19639:19;;19697:4;19689:6;19685:17;19804:6;19792:10;19789:22;19768:18;19756:10;19753:34;19750:62;19747:2;;;19815:18;;:::i;:::-;19747:2;19855:10;19851:2;19844:22;19629:243;;;;:::o;19878:331::-;;20029:18;20021:6;20018:30;20015:2;;;20051:18;;:::i;:::-;20015:2;20136:4;20132:9;20125:4;20117:6;20113:17;20109:33;20101:41;;20197:4;20191;20187:15;20179:23;;19944:265;;;:::o;20215:99::-;;20301:5;20295:12;20285:22;;20274:40;;;:::o;20320:169::-;;20438:6;20433:3;20426:19;20478:4;20473:3;20469:14;20454:29;;20416:73;;;;:::o;20495:305::-;;20554:20;20572:1;20554:20;:::i;:::-;20549:25;;20588:20;20606:1;20588:20;:::i;:::-;20583:25;;20742:1;20674:66;20670:74;20667:1;20664:81;20661:2;;;20748:18;;:::i;:::-;20661:2;20792:1;20789;20785:9;20778:16;;20539:261;;;;:::o;20806:191::-;;20866:20;20884:1;20866:20;:::i;:::-;20861:25;;20900:20;20918:1;20900:20;:::i;:::-;20895:25;;20939:1;20936;20933:8;20930:2;;;20944:18;;:::i;:::-;20930:2;20989:1;20986;20982:9;20974:17;;20851:146;;;;:::o;21003:96::-;;21069:24;21087:5;21069:24;:::i;:::-;21058:35;;21048:51;;;:::o;21105:90::-;;21182:5;21175:13;21168:21;21157:32;;21147:48;;;:::o;21201:77::-;;21267:5;21256:16;;21246:32;;;:::o;21284:126::-;;21361:42;21354:5;21350:54;21339:65;;21329:81;;;:::o;21416:77::-;;21482:5;21471:16;;21461:32;;;:::o;21499:86::-;;21574:4;21567:5;21563:16;21552:27;;21542:43;;;:::o;21591:180::-;;21701:64;21759:5;21701:64;:::i;:::-;21688:77;;21678:93;;;:::o;21777:140::-;;21887:24;21905:5;21887:24;:::i;:::-;21874:37;;21864:53;;;:::o;21923:154::-;22007:6;22002:3;21997;21984:30;22069:1;22060:6;22055:3;22051:16;22044:27;21974:103;;;:::o;22083:307::-;22151:1;22161:113;22175:6;22172:1;22169:13;22161:113;;;22260:1;22255:3;22251:11;22245:18;22241:1;22236:3;22232:11;22225:39;22197:2;22194:1;22190:10;22185:15;;22161:113;;;22292:6;22289:1;22286:13;22283:2;;;22372:1;22363:6;22358:3;22354:16;22347:27;22283:2;22132:258;;;;:::o;22396:320::-;;22477:1;22471:4;22467:12;22457:22;;22524:1;22518:4;22514:12;22545:18;22535:2;;22601:4;22593:6;22589:17;22579:27;;22535:2;22663;22655:6;22652:14;22632:18;22629:38;22626:2;;;22682:18;;:::i;:::-;22626:2;22447:269;;;;:::o;22722:233::-;;22784:24;22802:5;22784:24;:::i;:::-;22775:33;;22830:66;22823:5;22820:77;22817:2;;;22900:18;;:::i;:::-;22817:2;22947:1;22940:5;22936:13;22929:20;;22765:190;;;:::o;22961:180::-;23009:77;23006:1;22999:88;23106:4;23103:1;23096:15;23130:4;23127:1;23120:15;23147:180;23195:77;23192:1;23185:88;23292:4;23289:1;23282:15;23316:4;23313:1;23306:15;23333:180;23381:77;23378:1;23371:88;23478:4;23475:1;23468:15;23502:4;23499:1;23492:15;23519:102;;23611:2;23607:7;23602:2;23595:5;23591:14;23587:28;23577:38;;23567:54;;;:::o;23627:122::-;23700:24;23718:5;23700:24;:::i;:::-;23693:5;23690:35;23680:2;;23739:1;23736;23729:12;23680:2;23670:79;:::o;23755:122::-;23828:24;23846:5;23828:24;:::i;:::-;23821:5;23818:35;23808:2;;23867:1;23864;23857:12;23808:2;23798:79;:::o;23883:122::-;23956:24;23974:5;23956:24;:::i;:::-;23949:5;23946:35;23936:2;;23995:1;23992;23985:12;23936:2;23926:79;:::o

Swarm Source

ipfs://8da251fea6d4449a3c04a3e10383792124ed3bd83e8497527c5ff4739cbb3aa5
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Validator ID :
0 FTM

Amount Staked
0

Amount Delegated
0

Staking Total
0

Staking Start Epoch
0

Staking Start Time
0

Proof of Importance
0

Origination Score
0

Validation Score
0

Active
0

Online
0

Downtime
0 s
Address Amount claimed Rewards Created On Epoch Created On
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.