ETH Price: $3,099.11 (-6.52%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve189703242024-01-09 15:33:23384 days ago1704814403IN
0x9C91310C...DC96c1A07
0 ETH0.0004918420.38838975
Approve169481032023-03-31 15:35:47668 days ago1680276947IN
0x9C91310C...DC96c1A07
0 ETH0.0008766436.33910285
Transfer130031852021-08-11 9:57:451265 days ago1628675865IN
0x9C91310C...DC96c1A07
0 ETH0.003095246.00000145
Transfer114893072020-12-20 9:06:331499 days ago1608455193IN
0x9C91310C...DC96c1A07
0 ETH0.0017908423
Transfer114659802020-12-16 19:06:191502 days ago1608145579IN
0x9C91310C...DC96c1A07
0 ETH0.0045638572.6
Approve114271502020-12-10 19:47:271508 days ago1607629647IN
0x9C91310C...DC96c1A07
0 ETH0.0008418519
Transfer114128192020-12-08 14:58:511511 days ago1607439531IN
0x9C91310C...DC96c1A07
0 ETH0.004593259
Transfer114120612020-12-08 12:08:271511 days ago1607429307IN
0x9C91310C...DC96c1A07
0 ETH0.0037368448
Transfer114112712020-12-08 9:15:091511 days ago1607418909IN
0x9C91310C...DC96c1A07
0 ETH0.0023449251
Approve113894282020-12-05 0:44:171514 days ago1607129057IN
0x9C91310C...DC96c1A07
0 ETH0.0018033340.70000023
Approve113854972020-12-04 10:08:171515 days ago1607076497IN
0x9C91310C...DC96c1A07
0 ETH0.0017191538.8
Approve113853232020-12-04 9:33:401515 days ago1607074420IN
0x9C91310C...DC96c1A07
0 ETH0.0019938645
Transfer113852152020-12-04 9:10:121515 days ago1607073012IN
0x9C91310C...DC96c1A07
0 ETH0.0030796949
Approve113776732020-12-03 5:15:091516 days ago1606972509IN
0x9C91310C...DC96c1A07
0 ETH0.0009304621
Approve113582152020-11-30 5:36:431519 days ago1606714603IN
0x9C91310C...DC96c1A07
0 ETH0.001222927.6
Approve113576412020-11-30 3:30:291519 days ago1606707029IN
0x9C91310C...DC96c1A07
0 ETH0.0019495544
Approve113540222020-11-29 13:53:311520 days ago1606658011IN
0x9C91310C...DC96c1A07
0 ETH0.0007532317
Get Staking Rewa...113521062020-11-29 6:55:171520 days ago1606632917IN
0x9C91310C...DC96c1A07
0 ETH0.0011396712
Get Staking Rewa...113514272020-11-29 4:23:491520 days ago1606623829IN
0x9C91310C...DC96c1A07
0 ETH0.0012346413.00000145
Approve113508622020-11-29 2:21:141520 days ago1606616474IN
0x9C91310C...DC96c1A07
0 ETH0.0005864613.23617603
Approve113481762020-11-28 16:41:161520 days ago1606581676IN
0x9C91310C...DC96c1A07
0 ETH0.0013646830.8
Approve113469152020-11-28 12:14:151521 days ago1606565655IN
0x9C91310C...DC96c1A07
0 ETH0.0007975418
Approve113468092020-11-28 11:47:521521 days ago1606564072IN
0x9C91310C...DC96c1A07
0 ETH0.0007133516.1
Transfer113446052020-11-28 3:33:381521 days ago1606534418IN
0x9C91310C...DC96c1A07
0 ETH0.0008863614.1
Transfer113444682020-11-28 3:03:081521 days ago1606532588IN
0x9C91310C...DC96c1A07
0 ETH0.0010978614.1
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
RizenCoin

Compiler Version
v0.5.17+commit.d19bba13

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2020-11-24
*/

// Rizencoin is a both deflationary and inflationary currency, designed to reward holders & stakers , pump price, and for sound economy. 
// Rizen is a community-driven Defi project with POT+POL+POS.


pragma solidity ^0.5.17;

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address who) external view returns (uint256);
    function allowance(address owner, address spender) external view returns (uint256);
    function transfer(address to, uint256 value) external returns (bool);
    function approve(address spender, uint256 value) external returns (bool);
    function transferFrom(address from, address to, uint256 value) external returns (bool);
    
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

library SafeMath {
    function add(uint a, uint b) public pure returns (uint c) {
        c = a + b;
        require(c >= a);
    }
    
    function sub(uint a, uint b) public pure returns (uint c) {
        require(b <= a); 
        c = a - b; 
    } 
    
    function mul(uint a, uint b) public pure returns (uint c) {
        c = a * b; 
        require(a == 0 || c / a == b); 
    } 
    
    function div(uint a, uint b) public pure returns (uint c) { 
        require(b > 0);
        c = a / b;
    }
}

contract Ownable {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    
    constructor () internal {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), _owner);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(isOwner(), "Ownable: caller is not the owner");
        _;
    }

    function isOwner() public view returns (bool) {
        return msg.sender == _owner;
    }
}

contract ERC20Detailed is IERC20 {

    string private _name;
    string private _symbol;
    uint8 private _decimals;
    
    constructor(string memory name, string memory symbol, uint8 decimals) public {
        _name = name;
        _symbol = symbol;
        _decimals = decimals;
    }
    
    function name() public view returns(string memory) {
        return _name;
    }
    
    function symbol() public view returns(string memory) {
        return _symbol;
    }
    
    function decimals() public view returns(uint8) {
        return _decimals;
    }
}

contract RizenCoin is ERC20Detailed, Ownable {
    using SafeMath for uint256;
    
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowed;
    
    uint256 public constant ONE_WEEK = 7 days;
    
    mapping (address => uint256) private _lastWeeklyRewardDate;
    
    // bool _isStakingStarted = false;
    // address _stakingContract;
    mapping (address => uint256) private _stakes;
    mapping (address => uint256) private _stakeRewardsPaid;
    uint256 _totalStaked = 0;
    uint256 _totalStakingRewardAmount = 0;
    uint256 _totalStakingRewardPaid = 0;

    string constant tokenName = "Rizen Coin";
    string constant tokenSymbol = "RZN";
    uint8  constant tokenDecimals = 18;
    uint256 _totalSupply = 5000 * (10 ** 18); // 5000
    
    event Staked(address account, uint256 amount);
    event Unstaked(address account, uint256 amount);
    event RewardWithdrawn(address account, uint256 amount);
    
    constructor() public ERC20Detailed(tokenName, tokenSymbol, tokenDecimals) {
        _balances[msg.sender] = _totalSupply;
        emit Transfer(address(0), msg.sender, _totalSupply);
    }
    
    function totalSupply() public view returns (uint256) {
        return _totalSupply;
    }
    
    function balanceOf(address account) public view returns (uint256) {
        return _balances[account];
    }
    
    function allowance(address owner, address spender) public view returns (uint256) {
        return _allowed[owner][spender];
    }
    
    function transfer(address to, uint256 value) public returns (bool) {
        _transfer(msg.sender, to, value);
        emit Transfer(msg.sender, to, value);
        return true;
    }
    
    function approve(address spender, uint256 value) public returns (bool) {
        require(spender != address(0));
        _allowed[msg.sender][spender] = value;
        emit Approval(msg.sender, spender, value);
        return true;
    }
    
    function transferFrom(address from, address to, uint256 value) public returns (bool) {
        _transfer(from, to, value);
        _allowed[from][msg.sender] = _allowed[from][msg.sender].sub(value);
        return true;
    }
    
    function _transfer(address from, address to, uint256 value) internal {
        require(to != address(0));
        _balances[from] = _balances[from].sub(value);
        
        uint256 tax = value.div(100); // 1%
        uint256 withoutTax = value.sub(tax);
        
        _totalStakingRewardAmount = _totalStakingRewardAmount.add(tax);
        _balances[address(this)] = _balances[address(this)].add(tax); // all the taxes will be stored on this contract
        _balances[to] = _balances[to].add(withoutTax);
        
        emit Transfer(from, address(this), tax);
        emit Transfer(from, to, withoutTax);
    }
    
    /*
        Staking logic and functions
    */
    
    function totalStaked() public view returns (uint256) {
        return _totalStaked;
    }

    function stakesOf(address account) public view returns (uint256) {
        return _stakes[account];
    }
    
    function stakingRewardAmount() public view returns (uint256) {
        return _totalStakingRewardAmount.sub(_totalStakingRewardPaid);
    }
    
    function paidRewardsOf(address account) public view returns (uint256) {
        return _stakeRewardsPaid[account];
    }
    
    function stake(uint256 amount) external {
        _balances[msg.sender] = _balances[msg.sender].sub(amount);
        _balances[address(this)] = _balances[address(this)].add(amount);
        emit Transfer(msg.sender, address(this), amount);
        
        _stakes[msg.sender] = _stakes[msg.sender].add(amount);
        _totalStaked = _totalStaked.add(amount);
        emit Staked(msg.sender, amount);
    }
    
    function unstake(uint256 amount) external {
        _stakes[msg.sender] = _stakes[msg.sender].sub(amount);
        _totalStaked = _totalStaked.sub(amount);
        _burn(address(this), amount);
        emit Unstaked(msg.sender, amount);
    }
    
    function getStakingRewards() external {
        require(_stakes[msg.sender] > 0, "You need to stake before getting rewards!");
        require(_totalStakingRewardAmount > _totalStakingRewardPaid, "All the staking rewards paid for now, come back later!");

        uint256 rewards = _totalStakingRewardAmount.mul(_stakes[msg.sender]).div(_totalStaked);
        require(rewards > _stakeRewardsPaid[msg.sender], "You earned all the rewards!");
        
        uint256 rewardsForWithdraw = rewards.sub(_stakeRewardsPaid[msg.sender]);
        _stakeRewardsPaid[msg.sender] = _stakeRewardsPaid[msg.sender].add(rewardsForWithdraw);
        _totalStakingRewardPaid = _totalStakingRewardPaid.add(rewardsForWithdraw);
        
        uint256 tax = rewardsForWithdraw.div(100);
        _balances[msg.sender] = _balances[msg.sender].add(rewardsForWithdraw.sub(tax));
        _burn(address(this), tax);
        emit RewardWithdrawn(msg.sender, rewardsForWithdraw);
    }
    
    function addRewardTokens(uint256 amount) external onlyOwner {
        _balances[msg.sender] = _balances[msg.sender].sub(amount);
        _balances[address(this)] = _balances[address(this)].add(amount);
        emit Transfer(msg.sender, address(this), amount);
        
        _totalStakingRewardAmount = _totalStakingRewardAmount.add(amount);
    }
    
    function burn(uint256 amount) external {
        _burn(msg.sender, amount);
    }
    
    function _burn(address account, uint256 amount) internal {
        require(amount != 0);
        _balances[account] = _balances[account].sub(amount);
        _totalSupply = _totalSupply.sub(amount);
        emit Transfer(account, address(0), amount);
    }
    
    function _mint(address account, uint256 amount) internal onlyOwner {
        require(account != address(0), "ERC20: mint to the zero address");
        
        _totalSupply = _totalSupply.add(amount);
        _balances[account] = _balances[account].add(amount);
        emit Transfer(address(0), account, amount);
    }
    
    function getWeeklyReward() external {
        uint256 currentTime = block.timestamp;
        require(currentTime >= _lastWeeklyRewardDate[msg.sender].add(ONE_WEEK), "You can earn reward only once per week!");
        
        uint256 rewardAmount = _balances[msg.sender].div(100); // 1% from his balance
        require(rewardAmount > 0, "You do not have any tokens in your balance!");
        _mint(msg.sender, rewardAmount);
        _lastWeeklyRewardDate[msg.sender] = currentTime;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"RewardWithdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Staked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Unstaked","type":"event"},{"constant":true,"inputs":[],"name":"ONE_WEEK","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"addRewardTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"getStakingRewards","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"getWeeklyReward","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"paidRewardsOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"stake","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"stakesOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stakingRewardAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalStaked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"unstake","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

6080604052600060085560006009556000600a5569010f0cf064dd59200000600b553480156200002e57600080fd5b50604080518082018252600a8152692934bd32b71021b7b4b760b11b602080830191825283518085019094526003845262292d2760e91b9084015281519192916012916200008091600091906200014f565b508151620000969060019060208501906200014f565b506002805460ff191660ff9290921691909117610100600160a81b03191661010033810291909117918290556040516001600160a01b0391909204169250600091507f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3600b54336000818152600360209081526040808320859055805194855251929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3620001f4565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200019257805160ff1916838001178555620001c2565b82800160010185558215620001c2579182015b82811115620001c2578251825591602001919060010190620001a5565b50620001d0929150620001d4565b5090565b620001f191905b80821115620001d05760008155600101620001db565b90565b611f1680620002046000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c8063817b1cd2116100b8578063986768b21161007c578063986768b214610363578063a694fc3a1461036b578063a9059cbb14610388578063c24f4d0c146103b4578063dd62ed3e146103da578063fca73f281461040857610142565b8063817b1cd21461031f5780638da5cb5b146103275780638e6f6b771461034b5780638f32d59b1461035357806395d89b411461035b57610142565b806330d4f3c91161010a57806330d4f3c914610273578063313ce5671461027b57806333b69c4c1461029957806342966c68146102bf57806358eb9700146102dc57806370a08231146102f957610142565b806306fdde0314610147578063095ea7b3146101c457806318160ddd1461020457806323b872dd1461021e5780632e17de7814610254575b600080fd5b61014f610410565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610189578181015183820152602001610171565b50505050905090810190601f1680156101b65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101f0600480360360408110156101da57600080fd5b506001600160a01b0381351690602001356104a6565b604080519115158252519081900360200190f35b61020c610522565b60408051918252519081900360200190f35b6101f06004803603606081101561023457600080fd5b506001600160a01b03813581169160208101359091169060400135610528565b6102716004803603602081101561026a57600080fd5b5035610604565b005b61020c61077e565b61028361080e565b6040805160ff9092168252519081900360200190f35b61020c600480360360208110156102af57600080fd5b50356001600160a01b0316610817565b610271600480360360208110156102d557600080fd5b5035610832565b610271600480360360208110156102f257600080fd5b503561083f565b61020c6004803603602081101561030f57600080fd5b50356001600160a01b0316610a93565b61020c610aae565b61032f610ab4565b604080516001600160a01b039092168252519081900360200190f35b61020c610ac8565b6101f0610acf565b61014f610ae5565b610271610b45565b6102716004803603602081101561038157600080fd5b5035611114565b6101f06004803603604081101561039e57600080fd5b506001600160a01b0381351690602001356113f2565b61020c600480360360208110156103ca57600080fd5b50356001600160a01b0316611436565b61020c600480360360408110156103f057600080fd5b506001600160a01b0381358116916020013516611451565b61027161147c565b60008054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561049c5780601f106104715761010080835404028352916020019161049c565b820191906000526020600020905b81548152906001019060200180831161047f57829003601f168201915b5050505050905090565b60006001600160a01b0383166104bb57600080fd5b3360008181526004602090815260408083206001600160a01b03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b600b5490565b600061053584848461163f565b6001600160a01b038416600090815260046020818152604080842033855282529283902054835163b67d77c560e01b815292830152602482018590529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c59260448082019391829003018186803b1580156105aa57600080fd5b505af41580156105be573d6000803e3d6000fd5b505050506040513d60208110156105d457600080fd5b50516001600160a01b03851660009081526004602090815260408083203384529091529020555060019392505050565b3360009081526006602090815260409182902054825163b67d77c560e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c5926044808301939192829003018186803b15801561066d57600080fd5b505af4158015610681573d6000803e3d6000fd5b505050506040513d602081101561069757600080fd5b50513360009081526006602090815260409182902092909255600854815163b67d77c560e01b81526004810191909152602481018490529051739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c59260448082019391829003018186803b15801561070757600080fd5b505af415801561071b573d6000803e3d6000fd5b505050506040513d602081101561073157600080fd5b50516008556107403082611a6d565b604080513381526020810183905281517f0f5bb82176feb1b5e747e28471aa92156a04d9f3ab9f45f28e2d704232b93f75929181900390910190a150565b6000600954739bc8aa42dd8f233fcfff49041854abee1ec3379f63b67d77c59091600a546040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156107dd57600080fd5b505af41580156107f1573d6000803e3d6000fd5b505050506040513d602081101561080757600080fd5b5051905090565b60025460ff1690565b6001600160a01b031660009081526006602052604090205490565b61083c3382611a6d565b50565b610847610acf565b610898576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b3360009081526003602090815260409182902054825163b67d77c560e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c5926044808301939192829003018186803b15801561090157600080fd5b505af4158015610915573d6000803e3d6000fd5b505050506040513d602081101561092b57600080fd5b5051336000908152600360209081526040808320939093553082529082902054825163771602f760e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808301939192829003018186803b1580156109a057600080fd5b505af41580156109b4573d6000803e3d6000fd5b505050506040513d60208110156109ca57600080fd5b505130600081815260036020908152604091829020939093558051848152905191923392600080516020611e618339815191529281900390910190a3600954739bc8aa42dd8f233fcfff49041854abee1ec3379f63771602f79091836040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b158015610a6157600080fd5b505af4158015610a75573d6000803e3d6000fd5b505050506040513d6020811015610a8b57600080fd5b505160095550565b6001600160a01b031660009081526003602052604090205490565b60085490565b60025461010090046001600160a01b031690565b62093a8081565b60025461010090046001600160a01b0316331490565b60018054604080516020601f6002600019610100878916150201909516949094049384018190048102820181019092528281526060939092909183018282801561049c5780601f106104715761010080835404028352916020019161049c565b33600090815260066020526040902054610b905760405162461bcd60e51b8152600401808060200182810382526029815260200180611e116029913960400191505060405180910390fd5b600a5460095411610bd25760405162461bcd60e51b8152600401808060200182810382526036815260200180611eac6036913960400191505060405180910390fd5b6009543360009081526006602090815260408083205481516332292b2760e21b815260048101959095526024850152519192739bc8aa42dd8f233fcfff49041854abee1ec3379f9263c8a4ac9c92604480840193919291829003018186803b158015610c3d57600080fd5b505af4158015610c51573d6000803e3d6000fd5b505050506040513d6020811015610c6757600080fd5b50516008546040805163a391c15b60e01b81526004810193909352602483019190915251739bc8aa42dd8f233fcfff49041854abee1ec3379f9163a391c15b916044808301926020929190829003018186803b158015610cc657600080fd5b505af4158015610cda573d6000803e3d6000fd5b505050506040513d6020811015610cf057600080fd5b5051336000908152600760205260409020549091508111610d58576040805162461bcd60e51b815260206004820152601b60248201527f596f75206561726e656420616c6c207468652072657761726473210000000000604482015290519081900360640190fd5b33600090815260076020908152604080832054815163b67d77c560e01b81526004810186905260248101919091529051739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c59260448082019391829003018186803b158015610dbf57600080fd5b505af4158015610dd3573d6000803e3d6000fd5b505050506040513d6020811015610de957600080fd5b50513360009081526007602090815260409182902054825163771602f760e01b81526004810191909152602481018490529151929350739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808201939291829003018186803b158015610e5757600080fd5b505af4158015610e6b573d6000803e3d6000fd5b505050506040513d6020811015610e8157600080fd5b50513360009081526007602090815260409182902092909255600a54815163771602f760e01b81526004810191909152602481018490529051739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f79260448082019391829003018186803b158015610ef157600080fd5b505af4158015610f05573d6000803e3d6000fd5b505050506040513d6020811015610f1b57600080fd5b5051600a556040805163a391c15b60e01b815260048101839052606460248201529051600091739bc8aa42dd8f233fcfff49041854abee1ec3379f9163a391c15b91604480820192602092909190829003018186803b158015610f7d57600080fd5b505af4158015610f91573d6000803e3d6000fd5b505050506040513d6020811015610fa757600080fd5b50513360009081526003602090815260409182902054825163b67d77c560e01b815260048101879052602481018590529251939450739bc8aa42dd8f233fcfff49041854abee1ec3379f9363771602f7939192859263b67d77c59260448083019392829003018186803b15801561101d57600080fd5b505af4158015611031573d6000803e3d6000fd5b505050506040513d602081101561104757600080fd5b5051604080516001600160e01b031960e086901b16815260048101939093526024830191909152516044808301926020929190829003018186803b15801561108e57600080fd5b505af41580156110a2573d6000803e3d6000fd5b505050506040513d60208110156110b857600080fd5b5051336000908152600360205260409020556110d43082611a6d565b604080513381526020810184905281517f1d3eee4ca001cff39eec6ec7615aacf2f2bd61791273830728ba00ccbd6e1337929181900390910190a1505050565b3360009081526003602090815260409182902054825163b67d77c560e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c5926044808301939192829003018186803b15801561117d57600080fd5b505af4158015611191573d6000803e3d6000fd5b505050506040513d60208110156111a757600080fd5b5051336000908152600360209081526040808320939093553082529082902054825163771602f760e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808301939192829003018186803b15801561121c57600080fd5b505af4158015611230573d6000803e3d6000fd5b505050506040513d602081101561124657600080fd5b505130600081815260036020908152604091829020939093558051848152905191923392600080516020611e618339815191529281900390910190a33360009081526006602090815260409182902054825163771602f760e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808301939192829003018186803b1580156112eb57600080fd5b505af41580156112ff573d6000803e3d6000fd5b505050506040513d602081101561131557600080fd5b50513360009081526006602090815260409182902092909255600854815163771602f760e01b81526004810191909152602481018490529051739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f79260448082019391829003018186803b15801561138557600080fd5b505af4158015611399573d6000803e3d6000fd5b505050506040513d60208110156113af57600080fd5b5051600855604080513381526020810183905281517f9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d929181900390910190a150565b60006113ff33848461163f565b6040805183815290516001600160a01b038516913391600080516020611e618339815191529181900360200190a350600192915050565b6001600160a01b031660009081526007602052604090205490565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3360009081526005602090815260409182902054825163771602f760e01b8152600481019190915262093a80602482015291514292739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f792604480840193829003018186803b1580156114e757600080fd5b505af41580156114fb573d6000803e3d6000fd5b505050506040513d602081101561151157600080fd5b50518110156115515760405162461bcd60e51b8152600401808060200182810382526027815260200180611e3a6027913960400191505060405180910390fd5b33600090815260036020908152604080832054815163a391c15b60e01b81526004810191909152606460248201529051739bc8aa42dd8f233fcfff49041854abee1ec3379f9263a391c15b9260448082019391829003018186803b1580156115b857600080fd5b505af41580156115cc573d6000803e3d6000fd5b505050506040513d60208110156115e257600080fd5b50519050806116225760405162461bcd60e51b815260040180806020018281038252602b815260200180611e81602b913960400191505060405180910390fd5b61162c3382611bee565b5033600090815260056020526040902055565b6001600160a01b03821661165257600080fd5b6001600160a01b03831660009081526003602090815260409182902054825163b67d77c560e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c5926044808301939192829003018186803b1580156116c457600080fd5b505af41580156116d8573d6000803e3d6000fd5b505050506040513d60208110156116ee57600080fd5b50516001600160a01b038416600090815260036020908152604080832093909355825163a391c15b60e01b8152600481018590526064602482015292519192739bc8aa42dd8f233fcfff49041854abee1ec3379f9263a391c15b92604480840193919291829003018186803b15801561176657600080fd5b505af415801561177a573d6000803e3d6000fd5b505050506040513d602081101561179057600080fd5b50516040805163b67d77c560e01b815260048101859052602481018390529051919250600091739bc8aa42dd8f233fcfff49041854abee1ec3379f9163b67d77c5916044808301926020929190829003018186803b1580156117f157600080fd5b505af4158015611805573d6000803e3d6000fd5b505050506040513d602081101561181b57600080fd5b50516009546040805163771602f760e01b815260048101929092526024820185905251919250739bc8aa42dd8f233fcfff49041854abee1ec3379f9163771602f791604480820192602092909190829003018186803b15801561187d57600080fd5b505af4158015611891573d6000803e3d6000fd5b505050506040513d60208110156118a757600080fd5b50516009553060009081526003602090815260409182902054825163771602f760e01b81526004810191909152602481018590529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808301939192829003018186803b15801561191557600080fd5b505af4158015611929573d6000803e3d6000fd5b505050506040513d602081101561193f57600080fd5b5051306000908152600360209081526040808320939093556001600160a01b03871682529082902054825163771602f760e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808301939192829003018186803b1580156119bd57600080fd5b505af41580156119d1573d6000803e3d6000fd5b505050506040513d60208110156119e757600080fd5b50516001600160a01b038086166000908152600360209081526040918290209390935580518581529051309392891692600080516020611e61833981519152928290030190a3836001600160a01b0316856001600160a01b0316600080516020611e61833981519152836040518082815260200191505060405180910390a35050505050565b80611a7757600080fd5b6001600160a01b03821660009081526003602090815260409182902054825163b67d77c560e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c5926044808301939192829003018186803b158015611ae957600080fd5b505af4158015611afd573d6000803e3d6000fd5b505050506040513d6020811015611b1357600080fd5b50516001600160a01b03831660009081526003602090815260409182902092909255600b54815163b67d77c560e01b81526004810191909152602481018490529051739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c59260448082019391829003018186803b158015611b8c57600080fd5b505af4158015611ba0573d6000803e3d6000fd5b505050506040513d6020811015611bb657600080fd5b5051600b556040805182815290516000916001600160a01b03851691600080516020611e618339815191529181900360200190a35050565b611bf6610acf565b611c47576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b038216611ca2576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600b54739bc8aa42dd8f233fcfff49041854abee1ec3379f63771602f79091836040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b158015611cfd57600080fd5b505af4158015611d11573d6000803e3d6000fd5b505050506040513d6020811015611d2757600080fd5b5051600b556001600160a01b03821660009081526003602090815260409182902054825163771602f760e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808301939192829003018186803b158015611d9e57600080fd5b505af4158015611db2573d6000803e3d6000fd5b505050506040513d6020811015611dc857600080fd5b50516001600160a01b0383166000818152600360209081526040808320949094558351858152935192939192600080516020611e618339815191529281900390910190a3505056fe596f75206e65656420746f207374616b65206265666f72652067657474696e67207265776172647321596f752063616e206561726e20726577617264206f6e6c79206f6e636520706572207765656b21ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef596f7520646f206e6f74206861766520616e7920746f6b656e7320696e20796f75722062616c616e636521416c6c20746865207374616b696e672072657761726473207061696420666f72206e6f772c20636f6d65206261636b206c6174657221a265627a7a7231582057c58cb9541be158f5930cda68309fbf1b25e3e1fe03866e9d8acfc1a329f52264736f6c63430005110032

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101425760003560e01c8063817b1cd2116100b8578063986768b21161007c578063986768b214610363578063a694fc3a1461036b578063a9059cbb14610388578063c24f4d0c146103b4578063dd62ed3e146103da578063fca73f281461040857610142565b8063817b1cd21461031f5780638da5cb5b146103275780638e6f6b771461034b5780638f32d59b1461035357806395d89b411461035b57610142565b806330d4f3c91161010a57806330d4f3c914610273578063313ce5671461027b57806333b69c4c1461029957806342966c68146102bf57806358eb9700146102dc57806370a08231146102f957610142565b806306fdde0314610147578063095ea7b3146101c457806318160ddd1461020457806323b872dd1461021e5780632e17de7814610254575b600080fd5b61014f610410565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610189578181015183820152602001610171565b50505050905090810190601f1680156101b65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101f0600480360360408110156101da57600080fd5b506001600160a01b0381351690602001356104a6565b604080519115158252519081900360200190f35b61020c610522565b60408051918252519081900360200190f35b6101f06004803603606081101561023457600080fd5b506001600160a01b03813581169160208101359091169060400135610528565b6102716004803603602081101561026a57600080fd5b5035610604565b005b61020c61077e565b61028361080e565b6040805160ff9092168252519081900360200190f35b61020c600480360360208110156102af57600080fd5b50356001600160a01b0316610817565b610271600480360360208110156102d557600080fd5b5035610832565b610271600480360360208110156102f257600080fd5b503561083f565b61020c6004803603602081101561030f57600080fd5b50356001600160a01b0316610a93565b61020c610aae565b61032f610ab4565b604080516001600160a01b039092168252519081900360200190f35b61020c610ac8565b6101f0610acf565b61014f610ae5565b610271610b45565b6102716004803603602081101561038157600080fd5b5035611114565b6101f06004803603604081101561039e57600080fd5b506001600160a01b0381351690602001356113f2565b61020c600480360360208110156103ca57600080fd5b50356001600160a01b0316611436565b61020c600480360360408110156103f057600080fd5b506001600160a01b0381358116916020013516611451565b61027161147c565b60008054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561049c5780601f106104715761010080835404028352916020019161049c565b820191906000526020600020905b81548152906001019060200180831161047f57829003601f168201915b5050505050905090565b60006001600160a01b0383166104bb57600080fd5b3360008181526004602090815260408083206001600160a01b03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b600b5490565b600061053584848461163f565b6001600160a01b038416600090815260046020818152604080842033855282529283902054835163b67d77c560e01b815292830152602482018590529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c59260448082019391829003018186803b1580156105aa57600080fd5b505af41580156105be573d6000803e3d6000fd5b505050506040513d60208110156105d457600080fd5b50516001600160a01b03851660009081526004602090815260408083203384529091529020555060019392505050565b3360009081526006602090815260409182902054825163b67d77c560e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c5926044808301939192829003018186803b15801561066d57600080fd5b505af4158015610681573d6000803e3d6000fd5b505050506040513d602081101561069757600080fd5b50513360009081526006602090815260409182902092909255600854815163b67d77c560e01b81526004810191909152602481018490529051739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c59260448082019391829003018186803b15801561070757600080fd5b505af415801561071b573d6000803e3d6000fd5b505050506040513d602081101561073157600080fd5b50516008556107403082611a6d565b604080513381526020810183905281517f0f5bb82176feb1b5e747e28471aa92156a04d9f3ab9f45f28e2d704232b93f75929181900390910190a150565b6000600954739bc8aa42dd8f233fcfff49041854abee1ec3379f63b67d77c59091600a546040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156107dd57600080fd5b505af41580156107f1573d6000803e3d6000fd5b505050506040513d602081101561080757600080fd5b5051905090565b60025460ff1690565b6001600160a01b031660009081526006602052604090205490565b61083c3382611a6d565b50565b610847610acf565b610898576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b3360009081526003602090815260409182902054825163b67d77c560e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c5926044808301939192829003018186803b15801561090157600080fd5b505af4158015610915573d6000803e3d6000fd5b505050506040513d602081101561092b57600080fd5b5051336000908152600360209081526040808320939093553082529082902054825163771602f760e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808301939192829003018186803b1580156109a057600080fd5b505af41580156109b4573d6000803e3d6000fd5b505050506040513d60208110156109ca57600080fd5b505130600081815260036020908152604091829020939093558051848152905191923392600080516020611e618339815191529281900390910190a3600954739bc8aa42dd8f233fcfff49041854abee1ec3379f63771602f79091836040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b158015610a6157600080fd5b505af4158015610a75573d6000803e3d6000fd5b505050506040513d6020811015610a8b57600080fd5b505160095550565b6001600160a01b031660009081526003602052604090205490565b60085490565b60025461010090046001600160a01b031690565b62093a8081565b60025461010090046001600160a01b0316331490565b60018054604080516020601f6002600019610100878916150201909516949094049384018190048102820181019092528281526060939092909183018282801561049c5780601f106104715761010080835404028352916020019161049c565b33600090815260066020526040902054610b905760405162461bcd60e51b8152600401808060200182810382526029815260200180611e116029913960400191505060405180910390fd5b600a5460095411610bd25760405162461bcd60e51b8152600401808060200182810382526036815260200180611eac6036913960400191505060405180910390fd5b6009543360009081526006602090815260408083205481516332292b2760e21b815260048101959095526024850152519192739bc8aa42dd8f233fcfff49041854abee1ec3379f9263c8a4ac9c92604480840193919291829003018186803b158015610c3d57600080fd5b505af4158015610c51573d6000803e3d6000fd5b505050506040513d6020811015610c6757600080fd5b50516008546040805163a391c15b60e01b81526004810193909352602483019190915251739bc8aa42dd8f233fcfff49041854abee1ec3379f9163a391c15b916044808301926020929190829003018186803b158015610cc657600080fd5b505af4158015610cda573d6000803e3d6000fd5b505050506040513d6020811015610cf057600080fd5b5051336000908152600760205260409020549091508111610d58576040805162461bcd60e51b815260206004820152601b60248201527f596f75206561726e656420616c6c207468652072657761726473210000000000604482015290519081900360640190fd5b33600090815260076020908152604080832054815163b67d77c560e01b81526004810186905260248101919091529051739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c59260448082019391829003018186803b158015610dbf57600080fd5b505af4158015610dd3573d6000803e3d6000fd5b505050506040513d6020811015610de957600080fd5b50513360009081526007602090815260409182902054825163771602f760e01b81526004810191909152602481018490529151929350739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808201939291829003018186803b158015610e5757600080fd5b505af4158015610e6b573d6000803e3d6000fd5b505050506040513d6020811015610e8157600080fd5b50513360009081526007602090815260409182902092909255600a54815163771602f760e01b81526004810191909152602481018490529051739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f79260448082019391829003018186803b158015610ef157600080fd5b505af4158015610f05573d6000803e3d6000fd5b505050506040513d6020811015610f1b57600080fd5b5051600a556040805163a391c15b60e01b815260048101839052606460248201529051600091739bc8aa42dd8f233fcfff49041854abee1ec3379f9163a391c15b91604480820192602092909190829003018186803b158015610f7d57600080fd5b505af4158015610f91573d6000803e3d6000fd5b505050506040513d6020811015610fa757600080fd5b50513360009081526003602090815260409182902054825163b67d77c560e01b815260048101879052602481018590529251939450739bc8aa42dd8f233fcfff49041854abee1ec3379f9363771602f7939192859263b67d77c59260448083019392829003018186803b15801561101d57600080fd5b505af4158015611031573d6000803e3d6000fd5b505050506040513d602081101561104757600080fd5b5051604080516001600160e01b031960e086901b16815260048101939093526024830191909152516044808301926020929190829003018186803b15801561108e57600080fd5b505af41580156110a2573d6000803e3d6000fd5b505050506040513d60208110156110b857600080fd5b5051336000908152600360205260409020556110d43082611a6d565b604080513381526020810184905281517f1d3eee4ca001cff39eec6ec7615aacf2f2bd61791273830728ba00ccbd6e1337929181900390910190a1505050565b3360009081526003602090815260409182902054825163b67d77c560e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c5926044808301939192829003018186803b15801561117d57600080fd5b505af4158015611191573d6000803e3d6000fd5b505050506040513d60208110156111a757600080fd5b5051336000908152600360209081526040808320939093553082529082902054825163771602f760e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808301939192829003018186803b15801561121c57600080fd5b505af4158015611230573d6000803e3d6000fd5b505050506040513d602081101561124657600080fd5b505130600081815260036020908152604091829020939093558051848152905191923392600080516020611e618339815191529281900390910190a33360009081526006602090815260409182902054825163771602f760e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808301939192829003018186803b1580156112eb57600080fd5b505af41580156112ff573d6000803e3d6000fd5b505050506040513d602081101561131557600080fd5b50513360009081526006602090815260409182902092909255600854815163771602f760e01b81526004810191909152602481018490529051739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f79260448082019391829003018186803b15801561138557600080fd5b505af4158015611399573d6000803e3d6000fd5b505050506040513d60208110156113af57600080fd5b5051600855604080513381526020810183905281517f9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d929181900390910190a150565b60006113ff33848461163f565b6040805183815290516001600160a01b038516913391600080516020611e618339815191529181900360200190a350600192915050565b6001600160a01b031660009081526007602052604090205490565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3360009081526005602090815260409182902054825163771602f760e01b8152600481019190915262093a80602482015291514292739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f792604480840193829003018186803b1580156114e757600080fd5b505af41580156114fb573d6000803e3d6000fd5b505050506040513d602081101561151157600080fd5b50518110156115515760405162461bcd60e51b8152600401808060200182810382526027815260200180611e3a6027913960400191505060405180910390fd5b33600090815260036020908152604080832054815163a391c15b60e01b81526004810191909152606460248201529051739bc8aa42dd8f233fcfff49041854abee1ec3379f9263a391c15b9260448082019391829003018186803b1580156115b857600080fd5b505af41580156115cc573d6000803e3d6000fd5b505050506040513d60208110156115e257600080fd5b50519050806116225760405162461bcd60e51b815260040180806020018281038252602b815260200180611e81602b913960400191505060405180910390fd5b61162c3382611bee565b5033600090815260056020526040902055565b6001600160a01b03821661165257600080fd5b6001600160a01b03831660009081526003602090815260409182902054825163b67d77c560e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c5926044808301939192829003018186803b1580156116c457600080fd5b505af41580156116d8573d6000803e3d6000fd5b505050506040513d60208110156116ee57600080fd5b50516001600160a01b038416600090815260036020908152604080832093909355825163a391c15b60e01b8152600481018590526064602482015292519192739bc8aa42dd8f233fcfff49041854abee1ec3379f9263a391c15b92604480840193919291829003018186803b15801561176657600080fd5b505af415801561177a573d6000803e3d6000fd5b505050506040513d602081101561179057600080fd5b50516040805163b67d77c560e01b815260048101859052602481018390529051919250600091739bc8aa42dd8f233fcfff49041854abee1ec3379f9163b67d77c5916044808301926020929190829003018186803b1580156117f157600080fd5b505af4158015611805573d6000803e3d6000fd5b505050506040513d602081101561181b57600080fd5b50516009546040805163771602f760e01b815260048101929092526024820185905251919250739bc8aa42dd8f233fcfff49041854abee1ec3379f9163771602f791604480820192602092909190829003018186803b15801561187d57600080fd5b505af4158015611891573d6000803e3d6000fd5b505050506040513d60208110156118a757600080fd5b50516009553060009081526003602090815260409182902054825163771602f760e01b81526004810191909152602481018590529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808301939192829003018186803b15801561191557600080fd5b505af4158015611929573d6000803e3d6000fd5b505050506040513d602081101561193f57600080fd5b5051306000908152600360209081526040808320939093556001600160a01b03871682529082902054825163771602f760e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808301939192829003018186803b1580156119bd57600080fd5b505af41580156119d1573d6000803e3d6000fd5b505050506040513d60208110156119e757600080fd5b50516001600160a01b038086166000908152600360209081526040918290209390935580518581529051309392891692600080516020611e61833981519152928290030190a3836001600160a01b0316856001600160a01b0316600080516020611e61833981519152836040518082815260200191505060405180910390a35050505050565b80611a7757600080fd5b6001600160a01b03821660009081526003602090815260409182902054825163b67d77c560e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c5926044808301939192829003018186803b158015611ae957600080fd5b505af4158015611afd573d6000803e3d6000fd5b505050506040513d6020811015611b1357600080fd5b50516001600160a01b03831660009081526003602090815260409182902092909255600b54815163b67d77c560e01b81526004810191909152602481018490529051739bc8aa42dd8f233fcfff49041854abee1ec3379f9263b67d77c59260448082019391829003018186803b158015611b8c57600080fd5b505af4158015611ba0573d6000803e3d6000fd5b505050506040513d6020811015611bb657600080fd5b5051600b556040805182815290516000916001600160a01b03851691600080516020611e618339815191529181900360200190a35050565b611bf6610acf565b611c47576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b038216611ca2576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600b54739bc8aa42dd8f233fcfff49041854abee1ec3379f63771602f79091836040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b158015611cfd57600080fd5b505af4158015611d11573d6000803e3d6000fd5b505050506040513d6020811015611d2757600080fd5b5051600b556001600160a01b03821660009081526003602090815260409182902054825163771602f760e01b81526004810191909152602481018490529151739bc8aa42dd8f233fcfff49041854abee1ec3379f9263771602f7926044808301939192829003018186803b158015611d9e57600080fd5b505af4158015611db2573d6000803e3d6000fd5b505050506040513d6020811015611dc857600080fd5b50516001600160a01b0383166000818152600360209081526040808320949094558351858152935192939192600080516020611e618339815191529281900390910190a3505056fe596f75206e65656420746f207374616b65206265666f72652067657474696e67207265776172647321596f752063616e206561726e20726577617264206f6e6c79206f6e636520706572207765656b21ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef596f7520646f206e6f74206861766520616e7920746f6b656e7320696e20796f75722062616c616e636521416c6c20746865207374616b696e672072657761726473207061696420666f72206e6f772c20636f6d65206261636b206c6174657221a265627a7a7231582057c58cb9541be158f5930cda68309fbf1b25e3e1fe03866e9d8acfc1a329f52264736f6c63430005110032

Libraries Used


Deployed Bytecode Sourcemap

2599:6737:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2599:6737:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2318:82;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;2318:82:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4386:242;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;4386:242:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;3819:91;;;:::i;:::-;;;;;;;;;;;;;;;;4640:229;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;4640:229:0;;;;;;;;;;;;;;;;;:::i;6518:247::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6518:247:0;;:::i;:::-;;5804:141;;;:::i;2510:82::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5685:107;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5685:107:0;-1:-1:-1;;;;;5685:107:0;;:::i;8130:83::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8130:83:0;;:::i;7763:355::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7763:355:0;;:::i;3922:110::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3922:110:0;-1:-1:-1;;;;;3922:110:0;;:::i;5586:91::-;;;:::i;1706:79::-;;;:::i;:::-;;;;-1:-1:-1;;;;;1706:79:0;;;;;;;;;;;;;;2822:41;;;:::i;1907:92::-;;;:::i;2412:86::-;;;:::i;6777:974::-;;;:::i;6091:415::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6091:415:0;;:::i;4187:187::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;4187:187:0;;;;;;;;:::i;5957:122::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5957:122:0;-1:-1:-1;;;;;5957:122:0;;:::i;4044:131::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;4044:131:0;;;;;;;;;;:::i;8836:497::-;;;:::i;2318:82::-;2387:5;2380:12;;;;;;;;-1:-1:-1;;2380:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2354:13;;2380:12;;2387:5;;2380:12;;2387:5;2380:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2318:82;:::o;4386:242::-;4451:4;-1:-1:-1;;;;;4476:21:0;;4468:30;;;;;;4518:10;4509:20;;;;:8;:20;;;;;;;;-1:-1:-1;;;;;4509:29:0;;;;;;;;;;;;:37;;;4562:36;;;;;;;4509:29;;4518:10;4562:36;;;;;;;;;;;-1:-1:-1;4616:4:0;4386:242;;;;:::o;3819:91::-;3890:12;;3819:91;:::o;4640:229::-;4719:4;4736:26;4746:4;4752:2;4756:5;4736:9;:26::i;:::-;-1:-1:-1;;;;;4802:14:0;;;;;;:8;:14;;;;;;;;4817:10;4802:26;;;;;;;;;:37;;-1:-1:-1;;;4802:37:0;;;;;;;;;;;;;;:30;;;;:37;;;;;;;;;;;:30;:37;;;5:2:-1;;;;30:1;27;20:12;5:2;4802:37:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4802:37:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4802:37:0;-1:-1:-1;;;;;4773:14:0;;;;;;:8;4802:37;4773:14;;;;;;;4788:10;4773:26;;;;;;;:66;-1:-1:-1;4857:4:0;4640:229;;;;;:::o;6518:247::-;6601:10;6593:19;;;;:7;:19;;;;;;;;;;:31;;-1:-1:-1;;;6593:31:0;;;;;;;;;;;;;;;;;:23;;;;:31;;;;;:19;;:31;;;;;:23;:31;;;5:2:-1;;;;30:1;27;20:12;5:2;6593:31:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6593:31:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6593:31:0;6579:10;6571:19;;;;:7;6593:31;6571:19;;;;;;;;:53;;;;6650:12;;:24;;-1:-1:-1;;;6650:24:0;;;;;;;;;;;;;;;;;:16;;;;:24;;;;;;;;;;;:16;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;6650:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6650:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6650:24:0;6635:12;:39;6685:28;6699:4;6706:6;6685:5;:28::i;:::-;6729;;;6738:10;6729:28;;;;;;;;;;;;;;;;;;;;;6518:247;:::o;5804:141::-;5856:7;5883:25;;:29;;;;5913:23;;5883:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5883:54:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5883:54:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5883:54:0;;-1:-1:-1;5804:141:0;:::o;2510:82::-;2575:9;;;;2510:82;:::o;5685:107::-;-1:-1:-1;;;;;5768:16:0;5741:7;5768:16;;;:7;:16;;;;;;;5685:107::o;8130:83::-;8180:25;8186:10;8198:6;8180:5;:25::i;:::-;8130:83;:::o;7763:355::-;1833:9;:7;:9::i;:::-;1825:54;;;;;-1:-1:-1;;;1825:54:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7868:10;7858:21;;;;:9;:21;;;;;;;;;;:33;;-1:-1:-1;;;7858:33:0;;;;;;;;;;;;;;;;;:25;;;;:33;;;;;:21;;:33;;;;;:25;:33;;;5:2:-1;;;;30:1;27;20:12;5:2;7858:33:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7858:33:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7858:33:0;7844:10;7834:21;;;;:9;7858:33;7834:21;;;;;;;:57;;;;7947:4;7929:24;;;;;;;:36;;-1:-1:-1;;;7929:36:0;;;;;;;;;;;;;;;;;:28;;;;:36;;;;;7858:33;;7929:36;;;;;:28;:36;;;5:2:-1;;;;30:1;27;20:12;5:2;7929:36:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7929:36:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7929:36:0;7920:4;7902:24;;;;:9;7929:36;7902:24;;;;;;;;:63;;;;7981:43;;;;;;;7920:4;;7990:10;;-1:-1:-1;;;;;;;;;;;7981:43:0;;;;;;;;;8073:25;;:29;;;;8103:6;8073:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8073:37:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8073:37:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8073:37:0;8045:25;:65;-1:-1:-1;7763:355:0:o;3922:110::-;-1:-1:-1;;;;;4006:18:0;3979:7;4006:18;;;:9;:18;;;;;;;3922:110::o;5586:91::-;5657:12;;5586:91;:::o;1706:79::-;1771:6;;;;;-1:-1:-1;;;;;1771:6:0;;1706:79::o;2822:41::-;2857:6;2822:41;:::o;1907:92::-;1985:6;;;;;-1:-1:-1;;;;;1985:6:0;1971:10;:20;;1907:92::o;2412:86::-;2483:7;2476:14;;;;;;;;-1:-1:-1;;2476:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2450:13;;2476:14;;2483:7;;2476:14;;2483:7;2476:14;;;;;;;;;;;;;;;;;;;;;;;;6777:974;6842:10;6856:1;6834:19;;;:7;:19;;;;;;6826:77;;;;-1:-1:-1;;;6826:77:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6950:23;;6922:25;;:51;6914:118;;;;-1:-1:-1;;;6914:118:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7063:25;;7101:10;7045:15;7093:19;;;:7;:19;;;;;;;;;7063:50;;-1:-1:-1;;;7063:50:0;;;;;;;;;;;;;;7045:15;;7063:29;;;;:50;;;;;7093:19;;7063:50;;;;;;:29;:50;;;5:2:-1;;;;30:1;27;20:12;5:2;7063:50:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7063:50:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7063:50:0;7118:12;;7063:68;;;-1:-1:-1;;;7063:68:0;;;;;;;;;;;;;;;;;:54;;;;:68;;;;;:50;;:68;;;;;;;:54;:68;;;5:2:-1;;;;30:1;27;20:12;5:2;7063:68:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7063:68:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7063:68:0;7178:10;7160:29;;;;:17;7063:68;7160:29;;;;;7063:68;;-1:-1:-1;7150:39:0;;7142:79;;;;;-1:-1:-1;;;7142:79:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7301:10;7242:26;7283:29;;;:17;:29;;;;;;;;;7271:42;;-1:-1:-1;;;7271:42:0;;;;;;;;;;;;;;;;;:11;;;;:42;;;;;;;;;;;:11;:42;;;5:2:-1;;;;30:1;27;20:12;5:2;7271:42:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7271:42:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7271:42:0;7374:10;7356:29;;;;:17;7271:42;7356:29;;;;;;;;;:53;;-1:-1:-1;;;7356:53:0;;;;;;;;;;;;;;;;;7271:42;;-1:-1:-1;7356:33:0;;;;:53;;;;;7271:42;7356:53;;;;;;:33;:53;;;5:2:-1;;;;30:1;27;20:12;5:2;7356:53:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7356:53:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7356:53:0;7342:10;7324:29;;;;:17;7356:53;7324:29;;;;;;;;:85;;;;7446:23;;:47;;-1:-1:-1;;;7446:47:0;;;;;;;;;;;;;;;;;:27;;;;:47;;;;;;;;;;;:27;:47;;;5:2:-1;;;;30:1;27;20:12;5:2;7446:47:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7446:47:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7446:47:0;7420:23;:73;7528:27;;;-1:-1:-1;;;7528:27:0;;;;;;;;7551:3;7528:27;;;;;;7514:11;;7528:22;;;;:27;;;;;7446:47;;7528:27;;;;;;;;:22;:27;;;5:2:-1;;;;30:1;27;20:12;5:2;7528:27:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7528:27:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7528:27:0;7600:10;7590:21;;;;:9;7528:27;7590:21;;;;;;;;;7616:27;;-1:-1:-1;;;7616:27:0;;;;;;;;;;;;;;;;7528;;-1:-1:-1;7590:25:0;;;;:21;;:25;;7616:22;;:27;;;;;7528;7616;;;;;7590:25;7616:27;;;5:2:-1;;;;30:1;27;20:12;5:2;7616:27:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7616:27:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7616:27:0;7590:54;;;-1:-1:-1;;;;;;7590:54:0;;;;;;;;;;;;;;;;;;;;;;;;;;;7616:27;;7590:54;;;;;;;;;;;5:2:-1;;;;30:1;27;20:12;5:2;7590:54:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7590:54:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7590:54:0;7576:10;7566:21;;;;:9;7590:54;7566:21;;;;:78;7655:25;7669:4;7676:3;7655:5;:25::i;:::-;7696:47;;;7712:10;7696:47;;;;;;;;;;;;;;;;;;;;;6777:974;;;:::o;6091:415::-;6176:10;6166:21;;;;:9;:21;;;;;;;;;;:33;;-1:-1:-1;;;6166:33:0;;;;;;;;;;;;;;;;;:25;;;;:33;;;;;:21;;:33;;;;;:25;:33;;;5:2:-1;;;;30:1;27;20:12;5:2;6166:33:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6166:33:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6166:33:0;6152:10;6142:21;;;;:9;6166:33;6142:21;;;;;;;:57;;;;6255:4;6237:24;;;;;;;:36;;-1:-1:-1;;;6237:36:0;;;;;;;;;;;;;;;;;:28;;;;:36;;;;;6166:33;;6237:36;;;;;:28;:36;;;5:2:-1;;;;30:1;27;20:12;5:2;6237:36:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6237:36:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6237:36:0;6228:4;6210:24;;;;:9;6237:36;6210:24;;;;;;;;:63;;;;6289:43;;;;;;;6228:4;;6298:10;;-1:-1:-1;;;;;;;;;;;6289:43:0;;;;;;;;;6383:10;6375:19;;;;:7;:19;;;;;;;;;;:31;;-1:-1:-1;;;6375:31:0;;;;;;;;;;;;;;;;;:23;;;;:31;;;;;:19;;:31;;;;;:23;:31;;;5:2:-1;;;;30:1;27;20:12;5:2;6375:31:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6375:31:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6375:31:0;6361:10;6353:19;;;;:7;6375:31;6353:19;;;;;;;;:53;;;;6432:12;;:24;;-1:-1:-1;;;6432:24:0;;;;;;;;;;;;;;;;;:16;;;;:24;;;;;;;;;;;:16;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;6432:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6432:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6432:24:0;6417:12;:39;6472:26;;;6479:10;6472:26;;6432:24;6472:26;;;;;;;;;;;;;;;;;;6091:415;:::o;4187:187::-;4248:4;4265:32;4275:10;4287:2;4291:5;4265:9;:32::i;:::-;4313:31;;;;;;;;-1:-1:-1;;;;;4313:31:0;;;4322:10;;-1:-1:-1;;;;;;;;;;;4313:31:0;;;;;;;;-1:-1:-1;4362:4:0;4187:187;;;;:::o;5957:122::-;-1:-1:-1;;;;;6045:26:0;6018:7;6045:26;;;:17;:26;;;;;;;5957:122::o;4044:131::-;-1:-1:-1;;;;;4143:15:0;;;4116:7;4143:15;;;:8;:15;;;;;;;;:24;;;;;;;;;;;;;4044:131::o;8836:497::-;8976:10;8883:19;8954:33;;;:21;:33;;;;;;;;;;:47;;-1:-1:-1;;;8954:47:0;;;;;;;;;2857:6;8954:47;;;;;;8905:15;;8954:37;;;;:47;;;;;;;;;;:37;:47;;;5:2:-1;;;;30:1;27;20:12;5:2;8954:47:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8954:47:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8954:47:0;8939:62;;;8931:114;;;;-1:-1:-1;;;8931:114:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9099:10;9066:20;9089:21;;;:9;:21;;;;;;;;;:30;;-1:-1:-1;;;9089:30:0;;;;;;;;;9115:3;9089:30;;;;;;:25;;;;:30;;;;;;;;;;;:25;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;9089:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9089:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9089:30:0;;-1:-1:-1;9161:16:0;9153:72;;;;-1:-1:-1;;;9153:72:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9236:31;9242:10;9254:12;9236:5;:31::i;:::-;-1:-1:-1;9300:10:0;9278:33;;;;:21;:33;;;;;:47;8836:497::o;4881:634::-;-1:-1:-1;;;;;4969:16:0;;4961:25;;;;;;-1:-1:-1;;;;;5015:15:0;;;;;;:9;:15;;;;;;;;;;:26;;-1:-1:-1;;;5015:26:0;;;;;;;;;;;;;;;;;:19;;;;:26;;;;;:15;;:26;;;;;:19;:26;;;5:2:-1;;;;30:1;27;20:12;5:2;5015:26:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5015:26:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5015:26:0;-1:-1:-1;;;;;4997:15:0;;;;;;:9;5015:26;4997:15;;;;;;;:44;;;;5076:14;;-1:-1:-1;;;5076:14:0;;;;;;;;5086:3;5076:14;;;;;;4997:15;;5076:9;;;;:14;;;;;5015:26;;5076:14;;;;;;:9;:14;;;5:2:-1;;;;30:1;27;20:12;5:2;5076:14:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5076:14:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5076:14:0;5128;;;-1:-1:-1;;;5128:14:0;;;;;;;;;;;;;;;;5076;;-1:-1:-1;5107:18:0;;5128:9;;;;:14;;;;;5076;;5128;;;;;;;:9;:14;;;5:2:-1;;;;30:1;27;20:12;5:2;5128:14:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5128:14:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5128:14:0;5191:25;;:34;;;-1:-1:-1;;;5191:34:0;;;;;;;;;;;;;;;;5128:14;;-1:-1:-1;5191:29:0;;;;:34;;;;;5128:14;;5191:34;;;;;;;;:29;:34;;;5:2:-1;;;;30:1;27;20:12;5:2;5191:34:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5191:34:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5191:34:0;5163:25;:62;5281:4;5263:24;;;;:9;5191:34;5263:24;;;;;;;;;:33;;-1:-1:-1;;;5263:33:0;;;;;;;;;;;;;;;;;:28;;;;:33;;;;;5191:34;;5263:33;;;;;:28;:33;;;5:2:-1;;;;30:1;27;20:12;5:2;5263:33:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5263:33:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5263:33:0;5254:4;5236:24;;;;:9;5263:33;5236:24;;;;;;;:60;;;;-1:-1:-1;;;;;5372:13:0;;;;;;;;;:29;;-1:-1:-1;;;5372:29:0;;;;;;;;;;;;;;;;;:17;;;;:29;;;;;5263:33;;5372:29;;;;;:17;:29;;;5:2:-1;;;;30:1;27;20:12;5:2;5372:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5372:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5372:29:0;-1:-1:-1;;;;;5356:13:0;;;;;;;:9;5372:29;5356:13;;;;;;;;:45;;;;5427:34;;;;;;;5450:4;;5427:34;;;;-1:-1:-1;;;;;;;;;;;5427:34:0;;;;;;;5492:2;-1:-1:-1;;;;;5477:30:0;5486:4;-1:-1:-1;;;;;5477:30:0;-1:-1:-1;;;;;;;;;;;5496:10:0;5477:30;;;;;;;;;;;;;;;;;;4881:634;;;;;:::o;8225:261::-;8301:11;8293:20;;;;;;-1:-1:-1;;;;;8345:18:0;;;;;;:9;:18;;;;;;;;;;:30;;-1:-1:-1;;;8345:30:0;;;;;;;;;;;;;;;;;:22;;;;:30;;;;;:18;;:30;;;;;:22;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8345:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8345:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8345:30:0;-1:-1:-1;;;;;8324:18:0;;;;;;:9;8345:30;8324:18;;;;;;;;:51;;;;8401:12;;:24;;-1:-1:-1;;;8401:24:0;;;;;;;;;;;;;;;;;:16;;;;:24;;;;;;;;;;;:16;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;8401:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8401:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8401:24:0;8386:12;:39;8441:37;;;;;;;;8467:1;;-1:-1:-1;;;;;8441:37:0;;;-1:-1:-1;;;;;;;;;;;8441:37:0;;;;8401:24;8441:37;;;8225:261;;:::o;8498:326::-;1833:9;:7;:9::i;:::-;1825:54;;;;;-1:-1:-1;;;1825:54:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8584:21:0;;8576:65;;;;;-1:-1:-1;;;8576:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8677:12;;:16;;;;8694:6;8677:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8677:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8677:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8677:24:0;8662:12;:39;-1:-1:-1;;;;;8733:18:0;;;;;;:9;8677:24;8733:18;;;;;;;;;:30;;-1:-1:-1;;;8733:30:0;;;;;;;;;;;;;;;;;:22;;;;:30;;;;;8677:24;;8733:30;;;;;:22;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;8733:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8733:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8733:30:0;-1:-1:-1;;;;;8712:18:0;;;;;;:9;8733:30;8712:18;;;;;;;:51;;;;8779:37;;;;;;;8712:18;;;;-1:-1:-1;;;;;;;;;;;8779:37:0;;;;;;;;;8498:326;;:::o

Swarm Source

bzzr://57c58cb9541be158f5930cda68309fbf1b25e3e1fe03866e9d8acfc1a329f522

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  ]

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.