ETH Price: $2,700.50 (-0.83%)

Contract

0xb88C69F540870065829e71cF13157790bC26FFB5
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Get Funds To Own...110698092020-10-16 23:01:391573 days ago1602889299IN
0xb88C69F5...0bC26FFB5
0 ETH0.0006882723
Get Funds To Own...110698092020-10-16 23:01:391573 days ago1602889299IN
0xb88C69F5...0bC26FFB5
0 ETH0.0005924719.8
Get Funds To Own...110697772020-10-16 22:52:321573 days ago1602888752IN
0xb88C69F5...0bC26FFB5
0 ETH0.0005922319.8
Transfer99714132020-04-30 3:02:061743 days ago1588215726IN
0xb88C69F5...0bC26FFB5
0.05787248 ETH0.0002241110
Get Funds To Own...99487312020-04-26 14:51:531747 days ago1587912713IN
0xb88C69F5...0bC26FFB5
0 ETH0.0003589312
Transfer99485542020-04-26 14:05:441747 days ago1587909944IN
0xb88C69F5...0bC26FFB5
0.0186 ETH0.0003070313.7
Transfer99482382020-04-26 12:54:521747 days ago1587905692IN
0xb88C69F5...0bC26FFB5
0.02669636 ETH0.0001688
Transfer To Upli...99480992020-04-26 12:22:321747 days ago1587903752IN
0xb88C69F5...0bC26FFB5
0 ETH0.0141558200
Register Emerald99480972020-04-26 12:22:041747 days ago1587903724IN
0xb88C69F5...0bC26FFB5
0.25 ETH0.000402128
Pool1Register99480972020-04-26 12:22:041747 days ago1587903724IN
0xb88C69F5...0bC26FFB5
0.08 ETH0.00024878
Transfer To Pool...99480922020-04-26 12:20:261747 days ago1587903626IN
0xb88C69F5...0bC26FFB5
0 ETH0.0062088200
Pool1Register99480872020-04-26 12:19:531747 days ago1587903593IN
0xb88C69F5...0bC26FFB5
0.08 ETH0.00040238
Transfer To Pool...99480832020-04-26 12:18:171747 days ago1587903497IN
0xb88C69F5...0bC26FFB5
0 ETH0.0062064200
Pool3Register99480812020-04-26 12:17:371747 days ago1587903457IN
0xb88C69F5...0bC26FFB5
0.2 ETH0.000402128
Transfer To Upli...99480782020-04-26 12:16:401747 days ago1587903400IN
0xb88C69F5...0bC26FFB5
0 ETH0.0125626200
Register Ruby99480772020-04-26 12:16:371747 days ago1587903397IN
0xb88C69F5...0bC26FFB5
0.15 ETH0.000301866
Transfer To Pool...99480762020-04-26 12:16:131747 days ago1587903373IN
0xb88C69F5...0bC26FFB5
0 ETH0.0062064200
Pool3Register99480752020-04-26 12:16:101747 days ago1587903370IN
0xb88C69F5...0bC26FFB5
0.2 ETH0.000301596
Send Rejoin And ...99480592020-04-26 12:10:431747 days ago1587903043IN
0xb88C69F5...0bC26FFB5
0 ETH0.0076002200
Transfer To Pool...99480562020-04-26 12:09:421747 days ago1587902982IN
0xb88C69F5...0bC26FFB5
0 ETH0.0062064200
Pool3Register99480532020-04-26 12:09:331747 days ago1587902973IN
0xb88C69F5...0bC26FFB5
0.2 ETH0.000186396
Get Funds To Own...99480442020-04-26 12:07:541747 days ago1587902874IN
0xb88C69F5...0bC26FFB5
0 ETH0.0003291511
Pool1Register99480422020-04-26 12:07:401747 days ago1587902860IN
0xb88C69F5...0bC26FFB5
0.08 ETH0.000301726
Pool2Register99480422020-04-26 12:07:401747 days ago1587902860IN
0xb88C69F5...0bC26FFB5
0.12 ETH0.000352037
Get Funds To Own...99480402020-04-26 12:07:221747 days ago1587902842IN
0xb88C69F5...0bC26FFB5
0 ETH0.0003290211
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
110698092020-10-16 23:01:391573 days ago1602889299
0xb88C69F5...0bC26FFB5
0.47022523 ETH
110697772020-10-16 22:52:321573 days ago1602888752
0xb88C69F5...0bC26FFB5
0.05224724 ETH
99487312020-04-26 14:51:531747 days ago1587912713
0xb88C69F5...0bC26FFB5
4 ETH
99480992020-04-26 12:22:321747 days ago1587903752
0xb88C69F5...0bC26FFB5
0.035 ETH
99480992020-04-26 12:22:321747 days ago1587903752
0xb88C69F5...0bC26FFB5
0.03 ETH
99480992020-04-26 12:22:321747 days ago1587903752
0xb88C69F5...0bC26FFB5
0.025 ETH
99480992020-04-26 12:22:321747 days ago1587903752
0xb88C69F5...0bC26FFB5
0.02 ETH
99480992020-04-26 12:22:321747 days ago1587903752
0xb88C69F5...0bC26FFB5
0.015 ETH
99480992020-04-26 12:22:321747 days ago1587903752
0xb88C69F5...0bC26FFB5
0.1 ETH
99480972020-04-26 12:22:041747 days ago1587903724
0xb88C69F5...0bC26FFB5
0xb88C69F5...0bC26FFB5
0.25 ETH
99480972020-04-26 12:22:041747 days ago1587903724
0xb88C69F5...0bC26FFB5
0xb88C69F5...0bC26FFB5
0.08 ETH
99480922020-04-26 12:20:261747 days ago1587903626
0xb88C69F5...0bC26FFB5
0.06 ETH
99480872020-04-26 12:19:531747 days ago1587903593
0xb88C69F5...0bC26FFB5
0xb88C69F5...0bC26FFB5
0.08 ETH
99480832020-04-26 12:18:171747 days ago1587903497
0xb88C69F5...0bC26FFB5
0.15 ETH
99480812020-04-26 12:17:371747 days ago1587903457
0xb88C69F5...0bC26FFB5
0xb88C69F5...0bC26FFB5
0.2 ETH
99480782020-04-26 12:16:401747 days ago1587903400
0xb88C69F5...0bC26FFB5
0.025 ETH
99480782020-04-26 12:16:401747 days ago1587903400
0xb88C69F5...0bC26FFB5
0.02 ETH
99480782020-04-26 12:16:401747 days ago1587903400
0xb88C69F5...0bC26FFB5
0.015 ETH
99480782020-04-26 12:16:401747 days ago1587903400
0xb88C69F5...0bC26FFB5
0.01 ETH
99480782020-04-26 12:16:401747 days ago1587903400
0xb88C69F5...0bC26FFB5
0.06 ETH
99480772020-04-26 12:16:371747 days ago1587903397
0xb88C69F5...0bC26FFB5
0xb88C69F5...0bC26FFB5
0.15 ETH
99480762020-04-26 12:16:131747 days ago1587903373
0xb88C69F5...0bC26FFB5
0.15 ETH
99480752020-04-26 12:16:101747 days ago1587903370
0xb88C69F5...0bC26FFB5
0xb88C69F5...0bC26FFB5
0.2 ETH
99480592020-04-26 12:10:431747 days ago1587903043
0xb88C69F5...0bC26FFB5
0.025 ETH
99480592020-04-26 12:10:431747 days ago1587903043
0xb88C69F5...0bC26FFB5
0.025 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Ultraspace

Compiler Version
v0.6.5+commit.f956cc89

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2020-04-21
*/

pragma solidity ^0.6.5;

contract Ultraspace {


    address payable public owner = 0x600247A0E0e6aa4d1B79D6c56739D2f85C666533;

    
    event Received(address, uint);
    receive() external payable {
        emit Received(msg.sender, msg.value);
    }
    
    function getBalance(address _ad) public view returns(uint){
        return _ad.balance;
    }
    
    // diamond Plan registration
    
    mapping(address => uint) public diamondPayment;
    
    function registerDiamond() public payable {
        require(msg.value == 0.1 ether, "Not appropriate amount");
        diamondPayment[msg.sender] = msg.value;
        address(this).transfer(msg.value);
    }
    
    function transferToUplineDiamond(address payable _u1, address payable _u2, address payable _u3, address payable _sponsor) public{
        require(msg.sender == owner, "You are not authorized");

        
        _sponsor.transfer(0.04 ether);
        
        if(_u1 == address(0x0)) {
            // owner.transfer(0.06 ether);
        }
        else if(_u2 == address(0x0)) {
            _u1.transfer(0.01 ether);
            // owner.transfer(0.05 ether);
        }
        else if(_u3 == address(0x0)) {
            _u1.transfer(0.01 ether);
            _u2.transfer(0.015 ether);
            // owner.transfer(0.035 ether);
        }
        
        else{
            _u1.transfer(0.01 ether);
            _u2.transfer(0.015 ether);
            _u3.transfer(0.02 ether);
            // owner.transfer(0.015 ether);
        }
        
        delete diamondPayment[msg.sender];
        
    }
    
    
    // ruby Plan registration
    
    mapping(address => uint) public rubyPayment;
    
    function registerRuby() public payable {
        require(msg.value == 0.15 ether, "Not appropriate amount");
        rubyPayment[msg.sender] = msg.value;
        address(this).transfer(msg.value);
    }
    
    function transferToUplineRuby(address payable _u1, address payable _u2, address payable _u3, address payable _u4, address payable _sponsor) public{
        // uint val = rubyPayment[msg.sender];
        require(msg.sender == owner, "You are not authorized");
        
        _sponsor.transfer(0.06 ether);
        
        if(_u1 == address(0x0)) {
            // owner.transfer(0.09 ether);
        }
        else if(_u2 == address(0x0)) {
            _u1.transfer(0.01 ether);
            
            // owner.transfer(0.08 ether);
        }
        else if(_u3 == address(0x0)) {
            _u1.transfer(0.01 ether);
            _u2.transfer(0.015 ether);
            
            // owner.transfer(0.065 ether);
        }
        
        else if(_u4 == address(0x0)) {
            _u1.transfer(0.01 ether);
            _u2.transfer(0.015 ether);
            _u3.transfer(0.02 ether);
        
            // owner.transfer(0.045 ether);
        }
        
        else{
            _u1.transfer(0.01 ether);
            _u2.transfer(0.015 ether);
            _u3.transfer(0.02 ether);
            _u4.transfer(0.025 ether);
        
            // owner.transfer(0.02 ether);
        }
        
        
        delete rubyPayment[msg.sender];
        
    }
    
    // emerald Plan registration
    
    mapping(address => uint) public emeraldPayment;
    
    function registerEmerald() public payable {
        require(msg.value == 0.25 ether, "Not appropriate amount");
        emeraldPayment[msg.sender] = msg.value;
        address(this).transfer(msg.value);
    }
    
    function transferToUplineEmerald(address payable _u1, address payable _u2, address payable _u3, address payable _u4, address payable _u5, address payable _sponsor) public{
        // uint val = emeraldPayment[msg.sender];
        
        require(msg.sender == owner, "You are not authorized");
        
        _sponsor.transfer(0.1 ether);
        
        if(_u1 == address(0x0)) {
            // owner.transfer(0.15 ether);
        }
        else if(_u2 == address(0x0)) {
            _u1.transfer(0.015 ether);
        
            // owner.transfer(0.135 ether);
        }
        else if(_u3 == address(0x0)) {
            _u1.transfer(0.015 ether);
            _u2.transfer(0.02 ether);
        
            // owner.transfer(0.115 ether);
        }
        
        else if(_u4 == address(0x0)) {
            _u1.transfer(0.015 ether);
            _u2.transfer(0.02 ether);
            _u3.transfer(0.025 ether);
        
            // owner.transfer(0.09 ether);
        }
        
        else if(_u5 == address(0x0)) {
            _u1.transfer(0.015 ether);
            _u2.transfer(0.02 ether);
            _u3.transfer(0.025 ether);
            _u4.transfer(0.03 ether);
        
            // owner.transfer(0.06 ether);
        }
        
        else{
            _u1.transfer(0.015 ether);
            _u2.transfer(0.02 ether);
            _u3.transfer(0.025 ether);
            _u4.transfer(0.03 ether);
            _u5.transfer(0.035 ether);
        
            // owner.transfer(0.025 ether);
        }
        
        delete emeraldPayment[msg.sender];
        
    }
    
    
    // leadership bonus
    function sendLeaderShipBonusDiamond(address payable _leader, uint8 _value) public {
        require(msg.sender == owner, "You are not authorized");
        require(_value == 5 || _value == 15 || _value == 25 || _value == 50, "Wrong value");
        if(_value == 5){
            _leader.transfer(0.025 ether);
        }
        else if(_value == 15){
            _leader.transfer(0.04 ether);
        }
        else if(_value == 25){
            _leader.transfer(0.06 ether);
        }
        else if(_value == 50){
            _leader.transfer(0.10 ether);
        }
        
    }
    
    function sendLeaderShipBonusRuby(address payable _leader, uint8 _value) public {
        require(msg.sender == owner, "You are not authorized");
        require(_value == 5 || _value == 15 || _value == 25 || _value == 50, "Wrong value");
        if(_value == 5){
            _leader.transfer(0.03 ether);
        }
        else if(_value == 15){
            _leader.transfer(0.05 ether);
        }
        else if(_value == 25){
            _leader.transfer(0.07 ether);
        }
        else if(_value == 50){
            _leader.transfer(0.15 ether);
        }
    }
    
    function sendLeaderShipBonusEmerald(address payable _leader, uint8 _value) public {
        require(msg.sender == owner, "You are not authorized");
        require(_value == 5 || _value == 15 || _value == 25 || _value == 50, "Wrong value");
        if(_value == 5){
            _leader.transfer(0.035 ether);
        }
        else if(_value == 15){
            _leader.transfer(0.06 ether);
        }
        else if(_value == 25){
            _leader.transfer(0.08 ether);
        }
        else if(_value == 50){
            _leader.transfer(0.20 ether);
        }
    }
    
    
    // mono line plans
    
    // pool 1
    
    mapping(address => uint) pool1;
    
    function pool1Register() payable public {
        require(msg.value == 0.08 ether, "Wrong amount sent");
        address(this).transfer(msg.value);
        pool1[msg.sender] = msg.value;
    }
    
    function transferToPool1Upline(address payable _ad) public{
        require(msg.sender == owner, "You are not authorized");
        require(_ad != address(0x0), "Invalid Address");
        
        _ad.transfer(0.06 ether);
        // address(this).transfer(0.02 ether);
        
        delete pool1[msg.sender];
    }
    
    function sendRejoinAndMatchingBonusPool1(address payable _user, address payable _sponcer) public{
        require(msg.sender == owner, "You are not authorized");
        _user.transfer(0.01 ether);
        _sponcer.transfer(0.01 ether);
    }
    
    // pool 2
    
    mapping(address => uint) pool2;
    
    function pool2Register() payable public {
        require(msg.value == 0.12 ether, "Wrong amount sent");
        pool2[msg.sender] = msg.value;
        address(this).transfer(msg.value);
    }
    
    function transferToPool2Upline(address payable _ad) public{
        require(msg.sender == owner, "You are not authorized");
        require(_ad != address(0x0), "Invalid Address");
        
        _ad.transfer(0.09 ether);
        // address(this).transfer(0.03 ether);
        
        delete pool2[msg.sender];
    }
    
    function sendRejoinAndMatchingBonusPool2(address payable _user, address payable _sponcer) public  {
        require(msg.sender == owner, "You are not authorized");
        _user.transfer(0.015 ether);
        _sponcer.transfer(0.015 ether);
    }
    
    // pool 3
    mapping(address => uint) pool3;
    
    function pool3Register() payable public {
        require(msg.value == 0.20 ether, "Wrong amount sent");
        pool3[msg.sender] = msg.value;
        address(this).transfer(msg.value);
    }
    
    function transferToPool3Upline(address payable _ad) public{
        require(msg.sender == owner, "You are not authorized");
        require(_ad != address(0x0), "Invalid Address");
        
        _ad.transfer(0.15 ether);
        // address(this).transfer(0.05 ether);
        
        delete pool3[msg.sender];
    }
    
    function sendRejoinAndMatchingBonusPool3(address payable _user, address payable _sponcer) public {
        require(msg.sender == owner, "You are not authorized");
        _user.transfer(0.025 ether);
        _sponcer.transfer(0.025 ether);
    }
    
    // pool 4
    mapping(address => uint) pool4;
    
    function pool4Register() payable public {
        require(msg.value == 0.30 ether, "Wrong amount sent");
        pool4[msg.sender] = msg.value;
        address(this).transfer(msg.value);
    }
    
    function transferToPool4Upline(address payable _ad) public{
        require(msg.sender == owner, "You are not authorized");
        require(_ad != address(0x0), "Invalid Address");
        
        _ad.transfer(0.23 ether);
        // address(this).transfer(0.07 ether);
        
        delete pool4[msg.sender];
    }
    
    function sendRejoinAndMatchingBonusPool4(address payable _user, address payable _sponcer) public {
        require(msg.sender == owner, "You are not authorized");
        _user.transfer(0.035 ether);
        _sponcer.transfer(0.035 ether);
    }


    // only owner;
    
    event ContractBalance(uint Balance);
    
    function getContractBalance() public returns(uint _balance){
      require(msg.sender == owner, "You are not authorized");
      emit ContractBalance(address(this).balance);
      return(address(this).balance);
    }
    
    // amount in wei
    function getFundsToOwner(uint _amount) public {
      require(msg.sender == owner, "You are not authorized");
      msg.sender.transfer(_amount);
    }
    
}

Contract Security Audit

Contract ABI

[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"Balance","type":"uint256"}],"name":"ContractBalance","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"","type":"address"},{"indexed":false,"internalType":"uint256","name":"","type":"uint256"}],"name":"Received","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"diamondPayment","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"emeraldPayment","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_ad","type":"address"}],"name":"getBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getContractBalance","outputs":[{"internalType":"uint256","name":"_balance","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"getFundsToOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pool1Register","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"pool2Register","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"pool3Register","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"pool4Register","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"registerDiamond","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"registerEmerald","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"registerRuby","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"rubyPayment","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address payable","name":"_leader","type":"address"},{"internalType":"uint8","name":"_value","type":"uint8"}],"name":"sendLeaderShipBonusDiamond","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_leader","type":"address"},{"internalType":"uint8","name":"_value","type":"uint8"}],"name":"sendLeaderShipBonusEmerald","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_leader","type":"address"},{"internalType":"uint8","name":"_value","type":"uint8"}],"name":"sendLeaderShipBonusRuby","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_user","type":"address"},{"internalType":"address payable","name":"_sponcer","type":"address"}],"name":"sendRejoinAndMatchingBonusPool1","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_user","type":"address"},{"internalType":"address payable","name":"_sponcer","type":"address"}],"name":"sendRejoinAndMatchingBonusPool2","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_user","type":"address"},{"internalType":"address payable","name":"_sponcer","type":"address"}],"name":"sendRejoinAndMatchingBonusPool3","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_user","type":"address"},{"internalType":"address payable","name":"_sponcer","type":"address"}],"name":"sendRejoinAndMatchingBonusPool4","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_ad","type":"address"}],"name":"transferToPool1Upline","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_ad","type":"address"}],"name":"transferToPool2Upline","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_ad","type":"address"}],"name":"transferToPool3Upline","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_ad","type":"address"}],"name":"transferToPool4Upline","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_u1","type":"address"},{"internalType":"address payable","name":"_u2","type":"address"},{"internalType":"address payable","name":"_u3","type":"address"},{"internalType":"address payable","name":"_sponsor","type":"address"}],"name":"transferToUplineDiamond","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_u1","type":"address"},{"internalType":"address payable","name":"_u2","type":"address"},{"internalType":"address payable","name":"_u3","type":"address"},{"internalType":"address payable","name":"_u4","type":"address"},{"internalType":"address payable","name":"_u5","type":"address"},{"internalType":"address payable","name":"_sponsor","type":"address"}],"name":"transferToUplineEmerald","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_u1","type":"address"},{"internalType":"address payable","name":"_u2","type":"address"},{"internalType":"address payable","name":"_u3","type":"address"},{"internalType":"address payable","name":"_u4","type":"address"},{"internalType":"address payable","name":"_sponsor","type":"address"}],"name":"transferToUplineRuby","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405273600247a0e0e6aa4d1b79d6c56739d2f85c6665336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555034801561006457600080fd5b50613bd9806100746000396000f3fe6080604052600436106101bb5760003560e01c80638e89a906116100ec578063b5dd9bce1161008a578063c8e1cf8411610064578063c8e1cf84146109b2578063cad167ac14610a17578063f3011d7f14610a88578063f8b2cb4f14610af95761022d565b8063b5dd9bce146108d9578063bda9b5dc146108e3578063bf594cf5146109415761022d565b8063a76050f5116100c6578063a76050f5146107ca578063a9d932b2146107d4578063ac230a95146107de578063b3355ade146107e85761022d565b80638e89a906146106bd57806391623ebb1461071b57806394de95b01461076c5761022d565b8063390a1096116101595780636f9fb98a116101335780636f9fb98a146105e057806386c8e1771461060b57806388413c4a146106155780638da5cb5b146106665761022d565b8063390a1096146104a55780633f99189d146105165780635eb35df81461057b5761022d565b80632cf43a1e116101955780632cf43a1e146103be5780632eeefabb146103f95780633420d0591461044a5780633453e17f146104545761022d565b806323c695811461023257806325a857a8146102e35780632a0fcc82146102ed5761022d565b3661022d577f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f885258743334604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1005b600080fd5b34801561023e57600080fd5b506102e16004803603608081101561025557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b5e565b005b6102eb610f3c565b005b3480156102f957600080fd5b506103bc600480360360a081101561031057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611046565b005b3480156103ca57600080fd5b506103f7600480360360208110156103e157600080fd5b8101908080359060200190929190505050611598565b005b34801561040557600080fd5b506104486004803603602081101561041c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506116a4565b005b61045261189e565b005b34801561046057600080fd5b506104a36004803603602081101561047757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119a8565b005b3480156104b157600080fd5b50610514600480360360408110156104c857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ba2565b005b34801561052257600080fd5b506105656004803603602081101561053957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d04565b6040518082815260200191505060405180910390f35b34801561058757600080fd5b506105ca6004803603602081101561059e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d1c565b6040518082815260200191505060405180910390f35b3480156105ec57600080fd5b506105f5611d34565b6040518082815260200191505060405180910390f35b610613611e35565b005b34801561062157600080fd5b506106646004803603602081101561063857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f3f565b005b34801561067257600080fd5b5061067b612139565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106c957600080fd5b50610719600480360360408110156106e057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff16906020019092919050505061215e565b005b34801561072757600080fd5b5061076a6004803603602081101561073e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612443565b005b34801561077857600080fd5b506107c86004803603604081101561078f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff16906020019092919050505061263c565b005b6107d2612921565b005b6107dc612a2b565b005b6107e6612b35565b005b3480156107f457600080fd5b506108d7600480360360c081101561080b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612c3f565b005b6108e1613354565b005b3480156108ef57600080fd5b5061093f6004803603604081101561090657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff16906020019092919050505061345e565b005b34801561094d57600080fd5b506109b06004803603604081101561096457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613744565b005b3480156109be57600080fd5b50610a01600480360360208110156109d557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506138a6565b6040518082815260200191505060405180910390f35b348015610a2357600080fd5b50610a8660048036036040811015610a3a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506138be565b005b348015610a9457600080fd5b50610af760048036036040811015610aab57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613a20565b005b348015610b0557600080fd5b50610b4860048036036020811015610b1c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613b82565b6040518082815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c20576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc668e1bc9bf0400009081150290604051600060405180830381858888f19350505050158015610c6d573d6000803e3d6000fd5b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610ca857610ef3565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d30578373ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f19350505050158015610d2a573d6000803e3d6000fd5b50610ef2565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e06578373ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f19350505050158015610db2573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015610e00573d6000803e3d6000fd5b50610ef1565b8373ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f19350505050158015610e53573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015610ea1573d6000803e3d6000fd5b508173ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f19350505050158015610eef573d6000803e3d6000fd5b505b5b5b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000905550505050565b6701aa535d3d0c00003414610fb9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f57726f6e6720616d6f756e742073656e7400000000000000000000000000000081525060200191505060405180910390fd5b34600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015611043573d6000803e3d6000fd5b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611108576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc66d529ae9e8600009081150290604051600060405180830381858888f19350505050158015611155573d6000803e3d6000fd5b50600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614156111905761154e565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611218578473ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f19350505050158015611212573d6000803e3d6000fd5b5061154d565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112ee578473ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f1935050505015801561129a573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f193505050501580156112e8573d6000803e3d6000fd5b5061154c565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611412578473ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f19350505050158015611370573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f193505050501580156113be573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f1935050505015801561140c573d6000803e3d6000fd5b5061154b565b8473ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f1935050505015801561145f573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f193505050501580156114ad573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f193505050501580156114fb573d6000803e3d6000fd5b508173ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f19350505050158015611549573d6000803e3d6000fd5b505b5b5b5b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600090555050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461165a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156116a0573d6000803e3d6000fd5b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611766576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611809576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f496e76616c69642041646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc670214e8348c4f00009081150290604051600060405180830381858888f19350505050158015611857573d6000803e3d6000fd5b50600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000905550565b670214e8348c4f0000341461191b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f4e6f7420617070726f70726961746520616d6f756e740000000000000000000081525060200191505060405180910390fd5b34600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501580156119a5573d6000803e3d6000fd5b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a6a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611b0d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f496e76616c69642041646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc6703311fc80a5700009081150290604051600060405180830381858888f19350505050158015611b5b573d6000803e3d6000fd5b50600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c64576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015611cb1573d6000803e3d6000fd5b508073ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015611cff573d6000803e3d6000fd5b505050565b60016020528060005260406000206000915090505481565b60036020528060005260406000206000915090505481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611df8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b7f9eda563474dcf999b0332c34dedb9066a385693682ea01c43234fa4e95668a0e476040518082815260200191505060405180910390a147905090565b670429d069189e00003414611eb2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f57726f6e6720616d6f756e742073656e7400000000000000000000000000000081525060200191505060405180910390fd5b34600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015611f3c573d6000803e3d6000fd5b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612001576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156120a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f496e76616c69642041646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc67013fbe85edc900009081150290604051600060405180830381858888f193505050501580156120f2573d6000803e3d6000fd5b50600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612220576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b60058160ff1614806122355750600f8160ff16145b80612243575060198160ff16145b80612251575060328160ff16145b6122c3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f57726f6e672076616c756500000000000000000000000000000000000000000081525060200191505060405180910390fd5b60058160ff161415612322578173ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f1935050505015801561231c573d6000803e3d6000fd5b5061243f565b600f8160ff161415612381578173ffffffffffffffffffffffffffffffffffffffff166108fc668e1bc9bf0400009081150290604051600060405180830381858888f1935050505015801561237b573d6000803e3d6000fd5b5061243e565b60198160ff1614156123e0578173ffffffffffffffffffffffffffffffffffffffff166108fc66d529ae9e8600009081150290604051600060405180830381858888f193505050501580156123da573d6000803e3d6000fd5b5061243d565b60328160ff16141561243c578173ffffffffffffffffffffffffffffffffffffffff166108fc67016345785d8a00009081150290604051600060405180830381858888f1935050505015801561243a573d6000803e3d6000fd5b505b5b5b5b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612505576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156125a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f496e76616c69642041646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc66d529ae9e8600009081150290604051600060405180830381858888f193505050501580156125f5573d6000803e3d6000fd5b50600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146126fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b60058160ff1614806127135750600f8160ff16145b80612721575060198160ff16145b8061272f575060328160ff16145b6127a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f57726f6e672076616c756500000000000000000000000000000000000000000081525060200191505060405180910390fd5b60058160ff161415612800578173ffffffffffffffffffffffffffffffffffffffff166108fc666a94d74f4300009081150290604051600060405180830381858888f193505050501580156127fa573d6000803e3d6000fd5b5061291d565b600f8160ff16141561285f578173ffffffffffffffffffffffffffffffffffffffff166108fc66b1a2bc2ec500009081150290604051600060405180830381858888f19350505050158015612859573d6000803e3d6000fd5b5061291c565b60198160ff1614156128be578173ffffffffffffffffffffffffffffffffffffffff166108fc66f8b0a10e4700009081150290604051600060405180830381858888f193505050501580156128b8573d6000803e3d6000fd5b5061291b565b60328160ff16141561291a578173ffffffffffffffffffffffffffffffffffffffff166108fc670214e8348c4f00009081150290604051600060405180830381858888f19350505050158015612918573d6000803e3d6000fd5b505b5b5b5b5050565b6702c68af0bb140000341461299e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f57726f6e6720616d6f756e742073656e7400000000000000000000000000000081525060200191505060405180910390fd5b34600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015612a28573d6000803e3d6000fd5b50565b67011c37937e0800003414612aa8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f57726f6e6720616d6f756e742073656e7400000000000000000000000000000081525060200191505060405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015612aee573d6000803e3d6000fd5b5034600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550565b67016345785d8a00003414612bb2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f4e6f7420617070726f70726961746520616d6f756e740000000000000000000081525060200191505060405180910390fd5b34600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015612c3c573d6000803e3d6000fd5b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612d01576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc67016345785d8a00009081150290604051600060405180830381858888f19350505050158015612d4f573d6000803e3d6000fd5b50600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415612d8a57613309565b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612e12578573ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015612e0c573d6000803e3d6000fd5b50613308565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415612ee8578573ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015612e94573d6000803e3d6000fd5b508473ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f19350505050158015612ee2573d6000803e3d6000fd5b50613307565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561300c578573ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015612f6a573d6000803e3d6000fd5b508473ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f19350505050158015612fb8573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f19350505050158015613006573d6000803e3d6000fd5b50613306565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561317e578573ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f1935050505015801561308e573d6000803e3d6000fd5b508473ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f193505050501580156130dc573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f1935050505015801561312a573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff166108fc666a94d74f4300009081150290604051600060405180830381858888f19350505050158015613178573d6000803e3d6000fd5b50613305565b8573ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f193505050501580156131cb573d6000803e3d6000fd5b508473ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f19350505050158015613219573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f19350505050158015613267573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff166108fc666a94d74f4300009081150290604051600060405180830381858888f193505050501580156132b5573d6000803e3d6000fd5b508173ffffffffffffffffffffffffffffffffffffffff166108fc667c5850872380009081150290604051600060405180830381858888f19350505050158015613303573d6000803e3d6000fd5b505b5b5b5b5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009055505050505050565b6703782dace9d9000034146133d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f4e6f7420617070726f70726961746520616d6f756e740000000000000000000081525060200191505060405180910390fd5b34600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561345b573d6000803e3d6000fd5b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613520576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b60058160ff1614806135355750600f8160ff16145b80613543575060198160ff16145b80613551575060328160ff16145b6135c3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f57726f6e672076616c756500000000000000000000000000000000000000000081525060200191505060405180910390fd5b60058160ff161415613622578173ffffffffffffffffffffffffffffffffffffffff166108fc667c5850872380009081150290604051600060405180830381858888f1935050505015801561361c573d6000803e3d6000fd5b50613740565b600f8160ff161415613681578173ffffffffffffffffffffffffffffffffffffffff166108fc66d529ae9e8600009081150290604051600060405180830381858888f1935050505015801561367b573d6000803e3d6000fd5b5061373f565b60198160ff1614156136e1578173ffffffffffffffffffffffffffffffffffffffff166108fc67011c37937e0800009081150290604051600060405180830381858888f193505050501580156136db573d6000803e3d6000fd5b5061373e565b60328160ff16141561373d578173ffffffffffffffffffffffffffffffffffffffff166108fc6702c68af0bb1400009081150290604051600060405180830381858888f1935050505015801561373b573d6000803e3d6000fd5b505b5b5b5b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613806576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f19350505050158015613853573d6000803e3d6000fd5b508073ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f193505050501580156138a1573d6000803e3d6000fd5b505050565b60026020528060005260406000206000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613980576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f193505050501580156139cd573d6000803e3d6000fd5b508073ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f19350505050158015613a1b573d6000803e3d6000fd5b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613ae2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc667c5850872380009081150290604051600060405180830381858888f19350505050158015613b2f573d6000803e3d6000fd5b508073ffffffffffffffffffffffffffffffffffffffff166108fc667c5850872380009081150290604051600060405180830381858888f19350505050158015613b7d573d6000803e3d6000fd5b505050565b60008173ffffffffffffffffffffffffffffffffffffffff1631905091905056fea2646970667358221220df3ea004bf8592d1490f024af86cd285127464642688f97506029a6c4ff12ffb64736f6c63430006050033

Deployed Bytecode

0x6080604052600436106101bb5760003560e01c80638e89a906116100ec578063b5dd9bce1161008a578063c8e1cf8411610064578063c8e1cf84146109b2578063cad167ac14610a17578063f3011d7f14610a88578063f8b2cb4f14610af95761022d565b8063b5dd9bce146108d9578063bda9b5dc146108e3578063bf594cf5146109415761022d565b8063a76050f5116100c6578063a76050f5146107ca578063a9d932b2146107d4578063ac230a95146107de578063b3355ade146107e85761022d565b80638e89a906146106bd57806391623ebb1461071b57806394de95b01461076c5761022d565b8063390a1096116101595780636f9fb98a116101335780636f9fb98a146105e057806386c8e1771461060b57806388413c4a146106155780638da5cb5b146106665761022d565b8063390a1096146104a55780633f99189d146105165780635eb35df81461057b5761022d565b80632cf43a1e116101955780632cf43a1e146103be5780632eeefabb146103f95780633420d0591461044a5780633453e17f146104545761022d565b806323c695811461023257806325a857a8146102e35780632a0fcc82146102ed5761022d565b3661022d577f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f885258743334604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1005b600080fd5b34801561023e57600080fd5b506102e16004803603608081101561025557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b5e565b005b6102eb610f3c565b005b3480156102f957600080fd5b506103bc600480360360a081101561031057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611046565b005b3480156103ca57600080fd5b506103f7600480360360208110156103e157600080fd5b8101908080359060200190929190505050611598565b005b34801561040557600080fd5b506104486004803603602081101561041c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506116a4565b005b61045261189e565b005b34801561046057600080fd5b506104a36004803603602081101561047757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119a8565b005b3480156104b157600080fd5b50610514600480360360408110156104c857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ba2565b005b34801561052257600080fd5b506105656004803603602081101561053957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d04565b6040518082815260200191505060405180910390f35b34801561058757600080fd5b506105ca6004803603602081101561059e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d1c565b6040518082815260200191505060405180910390f35b3480156105ec57600080fd5b506105f5611d34565b6040518082815260200191505060405180910390f35b610613611e35565b005b34801561062157600080fd5b506106646004803603602081101561063857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f3f565b005b34801561067257600080fd5b5061067b612139565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106c957600080fd5b50610719600480360360408110156106e057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff16906020019092919050505061215e565b005b34801561072757600080fd5b5061076a6004803603602081101561073e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612443565b005b34801561077857600080fd5b506107c86004803603604081101561078f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff16906020019092919050505061263c565b005b6107d2612921565b005b6107dc612a2b565b005b6107e6612b35565b005b3480156107f457600080fd5b506108d7600480360360c081101561080b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612c3f565b005b6108e1613354565b005b3480156108ef57600080fd5b5061093f6004803603604081101561090657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff16906020019092919050505061345e565b005b34801561094d57600080fd5b506109b06004803603604081101561096457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613744565b005b3480156109be57600080fd5b50610a01600480360360208110156109d557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506138a6565b6040518082815260200191505060405180910390f35b348015610a2357600080fd5b50610a8660048036036040811015610a3a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506138be565b005b348015610a9457600080fd5b50610af760048036036040811015610aab57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613a20565b005b348015610b0557600080fd5b50610b4860048036036020811015610b1c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613b82565b6040518082815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c20576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc668e1bc9bf0400009081150290604051600060405180830381858888f19350505050158015610c6d573d6000803e3d6000fd5b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610ca857610ef3565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d30578373ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f19350505050158015610d2a573d6000803e3d6000fd5b50610ef2565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e06578373ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f19350505050158015610db2573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015610e00573d6000803e3d6000fd5b50610ef1565b8373ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f19350505050158015610e53573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015610ea1573d6000803e3d6000fd5b508173ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f19350505050158015610eef573d6000803e3d6000fd5b505b5b5b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000905550505050565b6701aa535d3d0c00003414610fb9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f57726f6e6720616d6f756e742073656e7400000000000000000000000000000081525060200191505060405180910390fd5b34600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015611043573d6000803e3d6000fd5b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611108576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc66d529ae9e8600009081150290604051600060405180830381858888f19350505050158015611155573d6000803e3d6000fd5b50600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614156111905761154e565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611218578473ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f19350505050158015611212573d6000803e3d6000fd5b5061154d565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112ee578473ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f1935050505015801561129a573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f193505050501580156112e8573d6000803e3d6000fd5b5061154c565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611412578473ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f19350505050158015611370573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f193505050501580156113be573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f1935050505015801561140c573d6000803e3d6000fd5b5061154b565b8473ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f1935050505015801561145f573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f193505050501580156114ad573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f193505050501580156114fb573d6000803e3d6000fd5b508173ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f19350505050158015611549573d6000803e3d6000fd5b505b5b5b5b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600090555050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461165a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156116a0573d6000803e3d6000fd5b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611766576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611809576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f496e76616c69642041646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc670214e8348c4f00009081150290604051600060405180830381858888f19350505050158015611857573d6000803e3d6000fd5b50600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000905550565b670214e8348c4f0000341461191b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f4e6f7420617070726f70726961746520616d6f756e740000000000000000000081525060200191505060405180910390fd5b34600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501580156119a5573d6000803e3d6000fd5b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a6a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611b0d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f496e76616c69642041646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc6703311fc80a5700009081150290604051600060405180830381858888f19350505050158015611b5b573d6000803e3d6000fd5b50600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c64576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015611cb1573d6000803e3d6000fd5b508073ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015611cff573d6000803e3d6000fd5b505050565b60016020528060005260406000206000915090505481565b60036020528060005260406000206000915090505481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611df8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b7f9eda563474dcf999b0332c34dedb9066a385693682ea01c43234fa4e95668a0e476040518082815260200191505060405180910390a147905090565b670429d069189e00003414611eb2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f57726f6e6720616d6f756e742073656e7400000000000000000000000000000081525060200191505060405180910390fd5b34600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015611f3c573d6000803e3d6000fd5b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612001576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156120a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f496e76616c69642041646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc67013fbe85edc900009081150290604051600060405180830381858888f193505050501580156120f2573d6000803e3d6000fd5b50600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612220576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b60058160ff1614806122355750600f8160ff16145b80612243575060198160ff16145b80612251575060328160ff16145b6122c3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f57726f6e672076616c756500000000000000000000000000000000000000000081525060200191505060405180910390fd5b60058160ff161415612322578173ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f1935050505015801561231c573d6000803e3d6000fd5b5061243f565b600f8160ff161415612381578173ffffffffffffffffffffffffffffffffffffffff166108fc668e1bc9bf0400009081150290604051600060405180830381858888f1935050505015801561237b573d6000803e3d6000fd5b5061243e565b60198160ff1614156123e0578173ffffffffffffffffffffffffffffffffffffffff166108fc66d529ae9e8600009081150290604051600060405180830381858888f193505050501580156123da573d6000803e3d6000fd5b5061243d565b60328160ff16141561243c578173ffffffffffffffffffffffffffffffffffffffff166108fc67016345785d8a00009081150290604051600060405180830381858888f1935050505015801561243a573d6000803e3d6000fd5b505b5b5b5b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612505576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156125a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f496e76616c69642041646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc66d529ae9e8600009081150290604051600060405180830381858888f193505050501580156125f5573d6000803e3d6000fd5b50600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146126fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b60058160ff1614806127135750600f8160ff16145b80612721575060198160ff16145b8061272f575060328160ff16145b6127a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f57726f6e672076616c756500000000000000000000000000000000000000000081525060200191505060405180910390fd5b60058160ff161415612800578173ffffffffffffffffffffffffffffffffffffffff166108fc666a94d74f4300009081150290604051600060405180830381858888f193505050501580156127fa573d6000803e3d6000fd5b5061291d565b600f8160ff16141561285f578173ffffffffffffffffffffffffffffffffffffffff166108fc66b1a2bc2ec500009081150290604051600060405180830381858888f19350505050158015612859573d6000803e3d6000fd5b5061291c565b60198160ff1614156128be578173ffffffffffffffffffffffffffffffffffffffff166108fc66f8b0a10e4700009081150290604051600060405180830381858888f193505050501580156128b8573d6000803e3d6000fd5b5061291b565b60328160ff16141561291a578173ffffffffffffffffffffffffffffffffffffffff166108fc670214e8348c4f00009081150290604051600060405180830381858888f19350505050158015612918573d6000803e3d6000fd5b505b5b5b5b5050565b6702c68af0bb140000341461299e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f57726f6e6720616d6f756e742073656e7400000000000000000000000000000081525060200191505060405180910390fd5b34600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015612a28573d6000803e3d6000fd5b50565b67011c37937e0800003414612aa8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f57726f6e6720616d6f756e742073656e7400000000000000000000000000000081525060200191505060405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015612aee573d6000803e3d6000fd5b5034600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550565b67016345785d8a00003414612bb2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f4e6f7420617070726f70726961746520616d6f756e740000000000000000000081525060200191505060405180910390fd5b34600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015612c3c573d6000803e3d6000fd5b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612d01576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc67016345785d8a00009081150290604051600060405180830381858888f19350505050158015612d4f573d6000803e3d6000fd5b50600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415612d8a57613309565b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612e12578573ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015612e0c573d6000803e3d6000fd5b50613308565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415612ee8578573ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015612e94573d6000803e3d6000fd5b508473ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f19350505050158015612ee2573d6000803e3d6000fd5b50613307565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561300c578573ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f19350505050158015612f6a573d6000803e3d6000fd5b508473ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f19350505050158015612fb8573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f19350505050158015613006573d6000803e3d6000fd5b50613306565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561317e578573ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f1935050505015801561308e573d6000803e3d6000fd5b508473ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f193505050501580156130dc573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f1935050505015801561312a573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff166108fc666a94d74f4300009081150290604051600060405180830381858888f19350505050158015613178573d6000803e3d6000fd5b50613305565b8573ffffffffffffffffffffffffffffffffffffffff166108fc66354a6ba7a180009081150290604051600060405180830381858888f193505050501580156131cb573d6000803e3d6000fd5b508473ffffffffffffffffffffffffffffffffffffffff166108fc66470de4df8200009081150290604051600060405180830381858888f19350505050158015613219573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f19350505050158015613267573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff166108fc666a94d74f4300009081150290604051600060405180830381858888f193505050501580156132b5573d6000803e3d6000fd5b508173ffffffffffffffffffffffffffffffffffffffff166108fc667c5850872380009081150290604051600060405180830381858888f19350505050158015613303573d6000803e3d6000fd5b505b5b5b5b5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009055505050505050565b6703782dace9d9000034146133d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f4e6f7420617070726f70726961746520616d6f756e740000000000000000000081525060200191505060405180910390fd5b34600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561345b573d6000803e3d6000fd5b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613520576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b60058160ff1614806135355750600f8160ff16145b80613543575060198160ff16145b80613551575060328160ff16145b6135c3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f57726f6e672076616c756500000000000000000000000000000000000000000081525060200191505060405180910390fd5b60058160ff161415613622578173ffffffffffffffffffffffffffffffffffffffff166108fc667c5850872380009081150290604051600060405180830381858888f1935050505015801561361c573d6000803e3d6000fd5b50613740565b600f8160ff161415613681578173ffffffffffffffffffffffffffffffffffffffff166108fc66d529ae9e8600009081150290604051600060405180830381858888f1935050505015801561367b573d6000803e3d6000fd5b5061373f565b60198160ff1614156136e1578173ffffffffffffffffffffffffffffffffffffffff166108fc67011c37937e0800009081150290604051600060405180830381858888f193505050501580156136db573d6000803e3d6000fd5b5061373e565b60328160ff16141561373d578173ffffffffffffffffffffffffffffffffffffffff166108fc6702c68af0bb1400009081150290604051600060405180830381858888f1935050505015801561373b573d6000803e3d6000fd5b505b5b5b5b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613806576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f19350505050158015613853573d6000803e3d6000fd5b508073ffffffffffffffffffffffffffffffffffffffff166108fc662386f26fc100009081150290604051600060405180830381858888f193505050501580156138a1573d6000803e3d6000fd5b505050565b60026020528060005260406000206000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613980576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f193505050501580156139cd573d6000803e3d6000fd5b508073ffffffffffffffffffffffffffffffffffffffff166108fc6658d15e176280009081150290604051600060405180830381858888f19350505050158015613a1b573d6000803e3d6000fd5b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613ae2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f596f7520617265206e6f7420617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc667c5850872380009081150290604051600060405180830381858888f19350505050158015613b2f573d6000803e3d6000fd5b508073ffffffffffffffffffffffffffffffffffffffff166108fc667c5850872380009081150290604051600060405180830381858888f19350505050158015613b7d573d6000803e3d6000fd5b505050565b60008173ffffffffffffffffffffffffffffffffffffffff1631905091905056fea2646970667358221220df3ea004bf8592d1490f024af86cd285127464642688f97506029a6c4ff12ffb64736f6c63430006050033

Deployed Bytecode Sourcemap

27:11066:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;225:31;234:10;246:9;225:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;27:11066;;12:1:-1;9;2:12;705:925:0;;5:9:-1;2:2;;;27:1;24;17:12;2:2;705:925:0;;;;;;15:3:-1;10;7:12;4:2;;;32:1;29;22:12;4:2;705:925:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8063:196;;;:::i;:::-;;1959:1307;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1959:1307:0;;;;;;15:3:-1;10;7:12;4:2;;;32:1;29;22:12;4:2;1959:1307:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10930:154;;5:9:-1;2:2;;;27:1;24;17:12;2:2;10930:154:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;10930:154:0;;;;;;;;;;;;;;;;;:::i;:::-;;9138:327;;5:9:-1;2:2;;;27:1;24;17:12;2:2;9138:327:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;9138:327:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;1741:206;;;:::i;:::-;;10004:327;;5:9:-1;2:2;;;27:1;24;17:12;2:2;10004:327:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;10004:327:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;8610:250;;5:9:-1;2:2;;;27:1;24;17:12;2:2;8610:250:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;8610:250:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;423:46;;5:9:-1;2:2;;;27:1;24;17:12;2:2;423:46:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;423:46:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3318;;5:9:-1;2:2;;;27:1;24;17:12;2:2;3318:46:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;3318:46:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10676:220;;5:9:-1;2:2;;;27:1;24;17:12;2:2;10676:220:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9796:196;;;:::i;:::-;;8271:327;;5:9:-1;2:2;;;27:1;24;17:12;2:2;8271:327:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;8271:327:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;58:73;;5:9:-1;2:2;;;27:1;24;17:12;2:2;58:73:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5288:598;;5:9:-1;2:2;;;27:1;24;17:12;2:2;5288:598:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5288:598:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7402:327;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7402:327:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;7402:327:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;5898:584;;5:9:-1;2:2;;;27:1;24;17:12;2:2;5898:584:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5898:584:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8930:196;;;:::i;:::-;;7194;;;:::i;:::-;;482:211;;;:::i;:::-;;3601:1644;;5:9:-1;2:2;;;27:1;24;17:12;2:2;3601:1644:0;;;;;;15:3:-1;10;7:12;4:2;;;32:1;29;22:12;4:2;3601:1644:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3377:212;;;:::i;:::-;;6494:588;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6494:588:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;6494:588:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7741:246;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7741:246:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;7741:246:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1685:43;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1685:43:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1685:43:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9477:249;;5:9:-1;2:2;;;27:1;24;17:12;2:2;9477:249:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;9477:249:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10343;;5:9:-1;2:2;;;27:1;24;17:12;2:2;10343:249:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;10343:249:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;276:95;;5:9:-1;2:2;;;27:1;24;17:12;2:2;276:95:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;276:95:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;705:925;866:5;;;;;;;;;;;852:19;;:10;:19;;;844:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;921:8;:17;;:29;939:10;921:29;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;921:29:0;989:3;974:19;;:3;:19;;;971:588;;;;;;1084:3;1069:19;;:3;:19;;;1066:493;;;1105:3;:12;;:24;1118:10;1105:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1105:24:0;1066:493;;;1218:3;1203:19;;:3;:19;;;1200:359;;;1239:3;:12;;:24;1252:10;1239:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1239:24:0;1278:3;:12;;:25;1291:11;1278:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1278:25:0;1200:359;;;1399:3;:12;;:24;1412:10;1399:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1399:24:0;1438:3;:12;;:25;1451:11;1438:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1438:25:0;1478:3;:12;;:24;1491:10;1478:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1478:24:0;1200:359;1066:493;971:588;1586:14;:26;1601:10;1586:26;;;;;;;;;;;;;;;1579:33;;;705:925;;;;:::o;8063:196::-;8135:10;8122:9;:23;8114:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8198:9;8178:5;:17;8184:10;8178:17;;;;;;;;;;;;;;;:29;;;;8226:4;8218:22;;:33;8241:9;8218:33;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8218:33:0;8063:196::o;1959:1307::-;2186:5;;;;;;;;;;;2172:19;;:10;:19;;;2164:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2239:8;:17;;:29;2257:10;2239:29;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2239:29:0;2307:3;2292:19;;:3;:19;;;2289:899;;;;;;2402:3;2387:19;;:3;:19;;;2384:804;;;2423:3;:12;;:24;2436:10;2423:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2423:24:0;2384:804;;;2550:3;2535:19;;:3;:19;;;2532:656;;;2571:3;:12;;:24;2584:10;2571:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2571:24:0;2610:3;:12;;:25;2623:11;2610:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2610:25:0;2532:656;;;2749:3;2734:19;;:3;:19;;;2731:457;;;2770:3;:12;;:24;2783:10;2770:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2770:24:0;2809:3;:12;;:25;2822:11;2809:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2809:25:0;2849:3;:12;;:24;2862:10;2849:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2849:24:0;2731:457;;;2979:3;:12;;:24;2992:10;2979:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2979:24:0;3018:3;:12;;:25;3031:11;3018:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3018:25:0;3058:3;:12;;:24;3071:10;3058:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3058:24:0;3097:3;:12;;:25;3110:11;3097:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3097:25:0;2731:457;2532:656;2384:804;2289:899;3225:11;:23;3237:10;3225:23;;;;;;;;;;;;;;;3218:30;;;1959:1307;;;;;:::o;10930:154::-;11007:5;;;;;;;;;;;10993:19;;:10;:19;;;10985:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11048:10;:19;;:28;11068:7;11048:28;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11048:28:0;10930:154;:::o;9138:327::-;9229:5;;;;;;;;;;;9215:19;;:10;:19;;;9207:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9295:3;9280:19;;:3;:19;;;;9272:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9340:3;:12;;:24;9353:10;9340:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9340:24:0;9440:5;:17;9446:10;9440:17;;;;;;;;;;;;;;;9433:24;;;9138:327;:::o;1741:206::-;1812:10;1799:9;:23;1791:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1886:9;1860:11;:23;1872:10;1860:23;;;;;;;;;;;;;;;:35;;;;1914:4;1906:22;;:33;1929:9;1906:33;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1906:33:0;1741:206::o;10004:327::-;10095:5;;;;;;;;;;;10081:19;;:10;:19;;;10073:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10161:3;10146:19;;:3;:19;;;;10138:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10206:3;:12;;:24;10219:10;10206:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10206:24:0;10306:5;:17;10312:10;10306:17;;;;;;;;;;;;;;;10299:24;;;10004:327;:::o;8610:250::-;8741:5;;;;;;;;;;;8727:19;;:10;:19;;;8719:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8784:5;:14;;:27;8799:11;8784:27;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8784:27:0;8822:8;:17;;:30;8840:11;8822:30;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8822:30:0;8610:250;;:::o;423:46::-;;;;;;;;;;;;;;;;;:::o;3318:::-;;;;;;;;;;;;;;;;;:::o;10676:220::-;10721:13;10766:5;;;;;;;;;;;10752:19;;:10;:19;;;10744:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10812:38;10828:21;10812:38;;;;;;;;;;;;;;;;;;10866:21;10859:29;;10676:220;:::o;9796:196::-;9868:10;9855:9;:23;9847:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9931:9;9911:5;:17;9917:10;9911:17;;;;;;;;;;;;;;;:29;;;;9959:4;9951:22;;:33;9974:9;9951:33;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9951:33:0;9796:196::o;8271:327::-;8362:5;;;;;;;;;;;8348:19;;:10;:19;;;8340:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8428:3;8413:19;;:3;:19;;;;8405:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8473:3;:12;;:24;8486:10;8473:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8473:24:0;8573:5;:17;8579:10;8573:17;;;;;;;;;;;;;;;8566:24;;;8271:327;:::o;58:73::-;;;;;;;;;;;;;:::o;5288:598::-;5403:5;;;;;;;;;;;5389:19;;:10;:19;;;5381:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5464:1;5454:6;:11;;;:27;;;;5479:2;5469:6;:12;;;5454:27;:43;;;;5495:2;5485:6;:12;;;5454:43;:59;;;;5511:2;5501:6;:12;;;5454:59;5446:83;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5553:1;5543:6;:11;;;5540:329;;;5570:7;:16;;:29;5587:11;5570:29;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5570:29:0;5540:329;;;5639:2;5629:6;:12;;;5626:243;;;5657:7;:16;;:28;5674:10;5657:28;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5657:28:0;5626:243;;;5725:2;5715:6;:12;;;5712:157;;;5743:7;:16;;:28;5760:10;5743:28;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5743:28:0;5712:157;;;5811:2;5801:6;:12;;;5798:71;;;5829:7;:16;;:28;5846:10;5829:28;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5829:28:0;5798:71;5712:157;5626:243;5540:329;5288:598;;:::o;7402:327::-;7493:5;;;;;;;;;;;7479:19;;:10;:19;;;7471:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7559:3;7544:19;;:3;:19;;;;7536:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7604:3;:12;;:24;7617:10;7604:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7604:24:0;7704:5;:17;7710:10;7704:17;;;;;;;;;;;;;;;7697:24;;;7402:327;:::o;5898:584::-;6010:5;;;;;;;;;;;5996:19;;:10;:19;;;5988:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6071:1;6061:6;:11;;;:27;;;;6086:2;6076:6;:12;;;6061:27;:43;;;;6102:2;6092:6;:12;;;6061:43;:59;;;;6118:2;6108:6;:12;;;6061:59;6053:83;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6160:1;6150:6;:11;;;6147:328;;;6177:7;:16;;:28;6194:10;6177:28;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6177:28:0;6147:328;;;6245:2;6235:6;:12;;;6232:243;;;6263:7;:16;;:28;6280:10;6263:28;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6263:28:0;6232:243;;;6331:2;6321:6;:12;;;6318:157;;;6349:7;:16;;:28;6366:10;6349:28;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6349:28:0;6318:157;;;6417:2;6407:6;:12;;;6404:71;;;6435:7;:16;;:28;6452:10;6435:28;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6435:28:0;6404:71;6318:157;6232:243;6147:328;5898:584;;:::o;8930:196::-;9002:10;8989:9;:23;8981:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9065:9;9045:5;:17;9051:10;9045:17;;;;;;;;;;;;;;;:29;;;;9093:4;9085:22;;:33;9108:9;9085:33;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9085:33:0;8930:196::o;7194:::-;7266:10;7253:9;:23;7245:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7317:4;7309:22;;:33;7332:9;7309:33;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7309:33:0;7373:9;7353:5;:17;7359:10;7353:17;;;;;;;;;;;;;;;:29;;;;7194:196::o;482:211::-;556:9;543;:22;535:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;632:9;603:14;:26;618:10;603:26;;;;;;;;;;;;;;;:38;;;;660:4;652:22;;:33;675:9;652:33;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;652:33:0;482:211::o;3601:1644::-;3865:5;;;;;;;;;;;3851:19;;:10;:19;;;3843:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3918:8;:17;;:28;3936:9;3918:28;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3918:28:0;3985:3;3970:19;;:3;:19;;;3967:1207;;;;;;4080:3;4065:19;;:3;:19;;;4062:1112;;;4101:3;:12;;:25;4114:11;4101:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4101:25:0;4062:1112;;;4226:3;4211:19;;:3;:19;;;4208:966;;;4247:3;:12;;:25;4260:11;4247:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4247:25:0;4287:3;:12;;:24;4300:10;4287:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4287:24:0;4208:966;;;4421:3;4406:19;;:3;:19;;;4403:771;;;4442:3;:12;;:25;4455:11;4442:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4442:25:0;4482:3;:12;;:24;4495:10;4482:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4482:24:0;4521:3;:12;;:25;4534:11;4521:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4521:25:0;4403:771;;;4655:3;4640:19;;:3;:19;;;4637:537;;;4676:3;:12;;:25;4689:11;4676:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4676:25:0;4716:3;:12;;:24;4729:10;4716:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4716:24:0;4755:3;:12;;:25;4768:11;4755:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4755:25:0;4795:3;:12;;:24;4808:10;4795:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4795:24:0;4637:537;;;4924:3;:12;;:25;4937:11;4924:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4924:25:0;4964:3;:12;;:24;4977:10;4964:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4964:24:0;5003:3;:12;;:25;5016:11;5003:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5003:25:0;5043:3;:12;;:24;5056:10;5043:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5043:24:0;5082:3;:12;;:25;5095:11;5082:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5082:25:0;4637:537;4403:771;4208:966;4062:1112;3967:1207;5201:14;:26;5216:10;5201:26;;;;;;;;;;;;;;;5194:33;;;3601:1644;;;;;;:::o;3377:212::-;3451:10;3438:9;:23;3430:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3528:9;3499:14;:26;3514:10;3499:26;;;;;;;;;;;;;;;:38;;;;3556:4;3548:22;;:33;3571:9;3548:33;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3548:33:0;3377:212::o;6494:588::-;6609:5;;;;;;;;;;;6595:19;;:10;:19;;;6587:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6670:1;6660:6;:11;;;:27;;;;6685:2;6675:6;:12;;;6660:27;:43;;;;6701:2;6691:6;:12;;;6660:43;:59;;;;6717:2;6707:6;:12;;;6660:59;6652:83;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6759:1;6749:6;:11;;;6746:329;;;6776:7;:16;;:29;6793:11;6776:29;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6776:29:0;6746:329;;;6845:2;6835:6;:12;;;6832:243;;;6863:7;:16;;:28;6880:10;6863:28;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6863:28:0;6832:243;;;6931:2;6921:6;:12;;;6918:157;;;6949:7;:16;;:28;6966:10;6949:28;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6949:28:0;6918:157;;;7017:2;7007:6;:12;;;7004:71;;;7035:7;:16;;:28;7052:10;7035:28;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7035:28:0;7004:71;6918:157;6832:243;6746:329;6494:588;;:::o;7741:246::-;7870:5;;;;;;;;;;;7856:19;;:10;:19;;;7848:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7913:5;:14;;:26;7928:10;7913:26;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7913:26:0;7950:8;:17;;:29;7968:10;7950:29;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7950:29:0;7741:246;;:::o;1685:43::-;;;;;;;;;;;;;;;;;:::o;9477:249::-;9607:5;;;;;;;;;;;9593:19;;:10;:19;;;9585:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9650:5;:14;;:27;9665:11;9650:27;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9650:27:0;9688:8;:17;;:30;9706:11;9688:30;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9688:30:0;9477:249;;:::o;10343:::-;10473:5;;;;;;;;;;;10459:19;;:10;:19;;;10451:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10516:5;:14;;:27;10531:11;10516:27;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10516:27:0;10554:8;:17;;:30;10572:11;10554:30;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10554:30:0;10343:249;;:::o;276:95::-;329:4;352:3;:11;;;345:18;;276:95;;;:::o

Swarm Source

ipfs://df3ea004bf8592d1490f024af86cd285127464642688f97506029a6c4ff12ffb

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.