ETH Price: $2,106.28 (-11.21%)

Token

Clank (CLNK)
 

Overview

Max Total Supply

1,000,000,000 CLNK

Holders

79 (0.00%)

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

SPATIUM is a gathering place for pioneers and a concept of the platform space to explore the future of DeFi, NFT, and Web 3.0. CLANK is a utility token of the SPATIUM platform. Pioneers will be able to receive rewards by participating in the financial ecosystem and community’s economic operation.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Clank

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

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

import "SafeMath.sol";

abstract contract ERC20Basic {
	function totalSupply() public view virtual returns (uint256);
	function balanceOf(address who) public view virtual returns (uint256);
	function transfer(address to, uint256 value) public virtual returns (bool);
	event Transfer(address indexed from, address indexed to, uint256 value);
}

contract BasicToken is ERC20Basic {
	using SafeMath for uint256;
	mapping(address => uint256) balances;
	uint256 totalSupply_;

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

	function transfer(address _to, uint256 _value) public override virtual returns (bool) {
		require(_to != address(0), "Clank:transfer: _to == address(0)");
		require(_value <= balances[msg.sender], "Clank:transfer: _value > balances[msg.sender]");
		balances[msg.sender] = balances[msg.sender].sub(_value);
		balances[_to] = balances[_to].add(_value);
		emit Transfer(msg.sender, _to, _value);
		return true;
	}

	function balanceOf(address _owner) public view override returns (uint256) {
		return balances[_owner];
	}
}

abstract contract ERC20 is ERC20Basic {
	function allowance(address owner, address spender) public view virtual returns (uint256);
	function transferFrom(address from, address to, uint256 value) public virtual returns (bool);
	function approve(address spender, uint256 value) public virtual returns (bool);

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

contract StandardToken is ERC20, BasicToken {
	using SafeMath for uint256;		
	mapping (address => mapping (address => uint256)) internal allowed;

	function transferFrom(address _from, address _to, uint256 _value) public override virtual returns (bool)
	{
		require(_to != address(0), "Clank:transferFrom: _to == address(0)");
		require(_value <= balances[_from], "Clank:transferFrom: _value > balances[_from]");
		require(_value <= allowed[_from][msg.sender], "Clank:transferFrom: _value > allowed[_from][msg.sender]");

		balances[_from] = balances[_from].sub(_value);
		balances[_to] = balances[_to].add(_value);
		allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
		emit Transfer(_from, _to, _value);
		return true;
	}

	function approve(address _spender, uint256 _value) public override virtual returns (bool) {
		allowed[msg.sender][_spender] = _value;
		emit Approval(msg.sender, _spender, _value);
		return true;
	}

	function allowance(address _owner, address _spender) public view override virtual returns (uint256) {
		return allowed[_owner][_spender];
	}

	function increaseApproval(address _spender, uint _addedValue) public	returns (bool) {
		allowed[msg.sender][_spender] = (
			allowed[msg.sender][_spender].add(_addedValue));
		emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
		return true;
	}

	function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
		uint oldValue = allowed[msg.sender][_spender];
		if (_subtractedValue > oldValue) {
			allowed[msg.sender][_spender] = 0;
		} else {
			allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
		}
		emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
		return true;
	}
}

contract MultiOwnable {
	mapping (address => bool) owners;
	address unremovableOwner;
	event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
	event OwnershipExtended(address indexed host, address indexed guest);
	event OwnershipRemoved(address indexed removedOwner);
	
	modifier onlyOwner() {
		require(owners[msg.sender], "Clank:onlyOwner: not in owners[msg.sender]");
		_;
	}
	
	constructor() {
		owners[msg.sender] = true;
		unremovableOwner = msg.sender;
	}
	
	function addOwner(address guest) onlyOwner public {
		require(guest != address(0), "Clank:addOwner: guest == address(0)");
		owners[guest] = true;
		emit OwnershipExtended(msg.sender, guest);
	}
	
	function removeOwner(address removedOwner) onlyOwner public {
		require(removedOwner != address(0), "Clank:removeOwner: removedOwner == address(0)");
		require(unremovableOwner != removedOwner, "Clank:removeOwner: unremovableOwner != removedOwner");
		delete owners[removedOwner];
		emit OwnershipRemoved(removedOwner);
	}

	function transferOwnership(address newOwner) onlyOwner public {
		require(newOwner != address(0), "Clank:transferOwnership: newOwner == address(0)");
		require(unremovableOwner != msg.sender, "Clank:transferOwnership: unremovableOwner != msg.sender");
		owners[newOwner] = true;
		delete owners[msg.sender];
		emit OwnershipTransferred(msg.sender, newOwner);
	}

	function isOwner(address addr) public view returns(bool){
		return owners[addr];
	}
}

contract Clank is StandardToken, MultiOwnable {
	using SafeMath for uint256;
	
	uint256 public constant TOTAL_CAP = 1000000000;
	string public constant name = "Clank";
	string public constant symbol = "CLNK";
	uint256 public constant decimals = 18;

	event Mint(address indexed _to, uint256 _amount);
	event Burn(address indexed _from, uint256 _amount);

	constructor() {
		totalSupply_ = TOTAL_CAP.mul(10 ** decimals);
		balances[msg.sender] = totalSupply_;
		emit Transfer(address(0), msg.sender, balances[msg.sender]);
	}

	function transferFrom(address _from, address _to, uint256 _value) public override returns (bool) {
		return super.transferFrom(_from, _to, _value);
	}

	function transfer(address _to, uint256 _value) public override returns (bool) {
		return super.transfer(_to, _value);
	}
 
	function mint(address _to, uint256 _amount) onlyOwner public returns (bool) {
		require(_to != address(0), "Clank:mint: _to == address(0)");
		totalSupply_ = totalSupply_.add(_amount);
		balances[_to] = balances[_to].add(_amount);
		emit Mint(_to, _amount);
		emit Transfer(address(0), _to, _amount);
		return true;
	}
 
	function burn(uint256 _amount) onlyOwner public {
		require(_amount <= balances[msg.sender], "Clank:burn: _amount > balances[msg.sender]");
		totalSupply_ = totalSupply_.sub(_amount);
		balances[msg.sender] = balances[msg.sender].sub(_amount);
		emit Burn(msg.sender, _amount);
		emit Transfer(msg.sender, address(0), _amount);
	}
}

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

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

        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a, "SafeMath: subtraction underflow");
        uint256 c = a - b;

        return c;
    }

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

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

        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b > 0, "SafeMath: division by zero");
        uint256 c = a / b;

        return c;
    }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"host","type":"address"},{"indexed":true,"internalType":"address","name":"guest","type":"address"}],"name":"OwnershipExtended","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"removedOwner","type":"address"}],"name":"OwnershipRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"TOTAL_CAP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"guest","type":"address"}],"name":"addOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"removedOwner","type":"address"}],"name":"removeOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"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"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b506001600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555033600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620000d86012600a620000bf9190620003af565b633b9aca00620001cf60201b620016681790919060201c565b6001819055506001546000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051620001c19190620002ee565b60405180910390a3620005c2565b600080831415620001e457600090506200024d565b60008284620001f49190620004ec565b90508284826200020591906200031c565b1462000248576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200023f90620002cc565b60405180910390fd5b809150505b92915050565b6000620002626021836200030b565b91507f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008301527f77000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b620002c6816200054d565b82525050565b60006020820190508181036000830152620002e78162000253565b9050919050565b6000602082019050620003056000830184620002bb565b92915050565b600082825260208201905092915050565b600062000329826200054d565b915062000336836200054d565b92508262000349576200034862000586565b5b828204905092915050565b6000808291508390505b6001851115620003a6578086048111156200037e576200037d62000557565b5b60018516156200038e5780820291505b80810290506200039e85620005b5565b94506200035e565b94509492505050565b6000620003bc826200054d565b9150620003c9836200054d565b9250620003f87fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000400565b905092915050565b600082620004125760019050620004e5565b81620004225760009050620004e5565b81600181146200043b576002811462000446576200047c565b6001915050620004e5565b60ff8411156200045b576200045a62000557565b5b8360020a91508482111562000475576200047462000557565b5b50620004e5565b5060208310610133831016604e8410600b8410161715620004b65782820a905083811115620004b057620004af62000557565b5b620004e5565b620004c5848484600162000354565b92509050818404811115620004df57620004de62000557565b5b81810290505b9392505050565b6000620004f9826200054d565b915062000506836200054d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000542576200054162000557565b5b828202905092915050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60008160011c9050919050565b612adc80620005d26000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806342966c68116100a257806395d89b411161007157806395d89b4114610307578063a9059cbb14610325578063d73dd62314610355578063dd62ed3e14610385578063f2fde38b146103b557610116565b806342966c681461026f578063661884631461028b5780637065cb48146102bb57806370a08231146102d757610116565b806318160ddd116100e957806318160ddd146101a357806323b872dd146101c15780632f54bf6e146101f1578063313ce5671461022157806340c10f191461023f57610116565b8063025488661461011b57806306fdde0314610139578063095ea7b314610157578063173825d914610187575b600080fd5b6101236103d1565b6040516101309190612842565b60405180910390f35b6101416103d9565b60405161014e9190612620565b60405180910390f35b610171600480360381019061016c9190611f5b565b610412565b60405161017e9190612605565b60405180910390f35b6101a1600480360381019061019c9190611ea7565b610504565b005b6101ab610726565b6040516101b89190612842565b60405180910390f35b6101db60048036038101906101d69190611f0c565b610730565b6040516101e89190612605565b60405180910390f35b61020b60048036038101906102069190611ea7565b610746565b6040516102189190612605565b60405180910390f35b61022961079c565b6040516102369190612842565b60405180910390f35b61025960048036038101906102549190611f5b565b6107a1565b6040516102669190612605565b60405180910390f35b61028960048036038101906102849190611f97565b610a0b565b005b6102a560048036038101906102a09190611f5b565b610c7d565b6040516102b29190612605565b60405180910390f35b6102d560048036038101906102d09190611ea7565b610f0e565b005b6102f160048036038101906102ec9190611ea7565b6110bf565b6040516102fe9190612842565b60405180910390f35b61030f611107565b60405161031c9190612620565b60405180910390f35b61033f600480360381019061033a9190611f5b565b611140565b60405161034c9190612605565b60405180910390f35b61036f600480360381019061036a9190611f5b565b611154565b60405161037c9190612605565b60405180910390f35b61039f600480360381019061039a9190611ed0565b611350565b6040516103ac9190612842565b60405180910390f35b6103cf60048036038101906103ca9190611ea7565b6113d7565b005b633b9aca0081565b6040518060400160405280600581526020017f436c616e6b00000000000000000000000000000000000000000000000000000081525081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516104f29190612842565b60405180910390a36001905092915050565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610590576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161058790612702565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610600576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105f7906127e2565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610691576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068890612802565b60405180910390fd5b600360008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690558073ffffffffffffffffffffffffffffffffffffffff167f86d076ecf250a6d90a67a7c75317f44709d5001395ecf1df6d9dad5278f1e68160405160405180910390a250565b6000600154905090565b600061073d8484846116e3565b90509392505050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b601281565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661082f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082690612702565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561089f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161089690612642565b60405180910390fd5b6108b482600154611b3990919063ffffffff16565b60018190555061090b826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3990919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885836040516109939190612842565b60405180910390a28273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516109f99190612842565b60405180910390a36001905092915050565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610a97576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8e90612702565b60405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115610b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0f90612662565b60405180910390fd5b610b2d81600154611b9790919063ffffffff16565b600181905550610b84816000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b9790919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca582604051610c0c9190612842565b60405180910390a2600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c729190612842565b60405180910390a350565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610d8e576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e22565b610da18382611b9790919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051610efb9190612842565b60405180910390a3600191505092915050565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610f9a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9190612702565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100190612762565b60405180910390fd5b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f1d95aed2b82ae4cbdcccc214bb64bc277a20e8490d69a59d7f426c67fe46c61d60405160405180910390a350565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6040518060400160405280600481526020017f434c4e4b0000000000000000000000000000000000000000000000000000000081525081565b600061114c8383611bf6565b905092915050565b60006111e582600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3990919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460405161133e9190612842565b60405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611463576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145a90612702565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156114d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ca906126c2565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611564576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155b90612822565b60405180910390fd5b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690558073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b60008083141561167b57600090506116dd565b600082846116899190612900565b905082848261169891906128cf565b146116d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116cf906127a2565b60405180910390fd5b809150505b92915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174b906127c2565b60405180910390fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156117d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117cc906126e2565b60405180910390fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115611894576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188b90612722565b60405180910390fd5b6118e5826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b9790919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611978826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3990919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611a4982600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b9790919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611b269190612842565b60405180910390a3600190509392505050565b6000808284611b489190612879565b905083811015611b8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b84906126a2565b60405180910390fd5b8091505092915050565b600082821115611bdc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bd390612682565b60405180910390fd5b60008284611bea919061295a565b90508091505092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611c67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c5e90612742565b60405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115611ce8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cdf90612782565b60405180910390fd5b611d39826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b9790919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611dcc826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3990919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611e6b9190612842565b60405180910390a36001905092915050565b600081359050611e8c81612a78565b92915050565b600081359050611ea181612a8f565b92915050565b600060208284031215611eb957600080fd5b6000611ec784828501611e7d565b91505092915050565b60008060408385031215611ee357600080fd5b6000611ef185828601611e7d565b9250506020611f0285828601611e7d565b9150509250929050565b600080600060608486031215611f2157600080fd5b6000611f2f86828701611e7d565b9350506020611f4086828701611e7d565b9250506040611f5186828701611e92565b9150509250925092565b60008060408385031215611f6e57600080fd5b6000611f7c85828601611e7d565b9250506020611f8d85828601611e92565b9150509250929050565b600060208284031215611fa957600080fd5b6000611fb784828501611e92565b91505092915050565b611fc9816129a0565b82525050565b6000611fda8261285d565b611fe48185612868565b9350611ff48185602086016129d6565b611ffd81612a67565b840191505092915050565b6000612015601d83612868565b91507f436c616e6b3a6d696e743a205f746f203d3d20616464726573732830290000006000830152602082019050919050565b6000612055602a83612868565b91507f436c616e6b3a6275726e3a205f616d6f756e74203e2062616c616e6365735b6d60008301527f73672e73656e6465725d000000000000000000000000000000000000000000006020830152604082019050919050565b60006120bb601f83612868565b91507f536166654d6174683a207375627472616374696f6e20756e646572666c6f77006000830152602082019050919050565b60006120fb601b83612868565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b600061213b602f83612868565b91507f436c616e6b3a7472616e736665724f776e6572736869703a206e65774f776e6560008301527f72203d3d206164647265737328302900000000000000000000000000000000006020830152604082019050919050565b60006121a1602c83612868565b91507f436c616e6b3a7472616e7366657246726f6d3a205f76616c7565203e2062616c60008301527f616e6365735b5f66726f6d5d00000000000000000000000000000000000000006020830152604082019050919050565b6000612207602a83612868565b91507f436c616e6b3a6f6e6c794f776e65723a206e6f7420696e206f776e6572735b6d60008301527f73672e73656e6465725d000000000000000000000000000000000000000000006020830152604082019050919050565b600061226d603783612868565b91507f436c616e6b3a7472616e7366657246726f6d3a205f76616c7565203e20616c6c60008301527f6f7765645b5f66726f6d5d5b6d73672e73656e6465725d0000000000000000006020830152604082019050919050565b60006122d3602183612868565b91507f436c616e6b3a7472616e736665723a205f746f203d3d2061646472657373283060008301527f29000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612339602383612868565b91507f436c616e6b3a6164644f776e65723a206775657374203d3d206164647265737360008301527f28302900000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061239f602d83612868565b91507f436c616e6b3a7472616e736665723a205f76616c7565203e2062616c616e636560008301527f735b6d73672e73656e6465725d000000000000000000000000000000000000006020830152604082019050919050565b6000612405602183612868565b91507f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008301527f77000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061246b602583612868565b91507f436c616e6b3a7472616e7366657246726f6d3a205f746f203d3d20616464726560008301527f73732830290000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124d1602d83612868565b91507f436c616e6b3a72656d6f76654f776e65723a2072656d6f7665644f776e65722060008301527f3d3d2061646472657373283029000000000000000000000000000000000000006020830152604082019050919050565b6000612537603383612868565b91507f436c616e6b3a72656d6f76654f776e65723a20756e72656d6f7661626c654f7760008301527f6e657220213d2072656d6f7665644f776e6572000000000000000000000000006020830152604082019050919050565b600061259d603783612868565b91507f436c616e6b3a7472616e736665724f776e6572736869703a20756e72656d6f7660008301527f61626c654f776e657220213d206d73672e73656e6465720000000000000000006020830152604082019050919050565b6125ff816129cc565b82525050565b600060208201905061261a6000830184611fc0565b92915050565b6000602082019050818103600083015261263a8184611fcf565b905092915050565b6000602082019050818103600083015261265b81612008565b9050919050565b6000602082019050818103600083015261267b81612048565b9050919050565b6000602082019050818103600083015261269b816120ae565b9050919050565b600060208201905081810360008301526126bb816120ee565b9050919050565b600060208201905081810360008301526126db8161212e565b9050919050565b600060208201905081810360008301526126fb81612194565b9050919050565b6000602082019050818103600083015261271b816121fa565b9050919050565b6000602082019050818103600083015261273b81612260565b9050919050565b6000602082019050818103600083015261275b816122c6565b9050919050565b6000602082019050818103600083015261277b8161232c565b9050919050565b6000602082019050818103600083015261279b81612392565b9050919050565b600060208201905081810360008301526127bb816123f8565b9050919050565b600060208201905081810360008301526127db8161245e565b9050919050565b600060208201905081810360008301526127fb816124c4565b9050919050565b6000602082019050818103600083015261281b8161252a565b9050919050565b6000602082019050818103600083015261283b81612590565b9050919050565b600060208201905061285760008301846125f6565b92915050565b600081519050919050565b600082825260208201905092915050565b6000612884826129cc565b915061288f836129cc565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156128c4576128c3612a09565b5b828201905092915050565b60006128da826129cc565b91506128e5836129cc565b9250826128f5576128f4612a38565b5b828204905092915050565b600061290b826129cc565b9150612916836129cc565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561294f5761294e612a09565b5b828202905092915050565b6000612965826129cc565b9150612970836129cc565b92508282101561298357612982612a09565b5b828203905092915050565b6000612999826129ac565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b838110156129f45780820151818401526020810190506129d9565b83811115612a03576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000601f19601f8301169050919050565b612a818161298e565b8114612a8c57600080fd5b50565b612a98816129cc565b8114612aa357600080fd5b5056fea264697066735822122088137ecf9591bf05f54290dd065ad59369546845178537f8ae22b13440e6700a64736f6c63430008000033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101165760003560e01c806342966c68116100a257806395d89b411161007157806395d89b4114610307578063a9059cbb14610325578063d73dd62314610355578063dd62ed3e14610385578063f2fde38b146103b557610116565b806342966c681461026f578063661884631461028b5780637065cb48146102bb57806370a08231146102d757610116565b806318160ddd116100e957806318160ddd146101a357806323b872dd146101c15780632f54bf6e146101f1578063313ce5671461022157806340c10f191461023f57610116565b8063025488661461011b57806306fdde0314610139578063095ea7b314610157578063173825d914610187575b600080fd5b6101236103d1565b6040516101309190612842565b60405180910390f35b6101416103d9565b60405161014e9190612620565b60405180910390f35b610171600480360381019061016c9190611f5b565b610412565b60405161017e9190612605565b60405180910390f35b6101a1600480360381019061019c9190611ea7565b610504565b005b6101ab610726565b6040516101b89190612842565b60405180910390f35b6101db60048036038101906101d69190611f0c565b610730565b6040516101e89190612605565b60405180910390f35b61020b60048036038101906102069190611ea7565b610746565b6040516102189190612605565b60405180910390f35b61022961079c565b6040516102369190612842565b60405180910390f35b61025960048036038101906102549190611f5b565b6107a1565b6040516102669190612605565b60405180910390f35b61028960048036038101906102849190611f97565b610a0b565b005b6102a560048036038101906102a09190611f5b565b610c7d565b6040516102b29190612605565b60405180910390f35b6102d560048036038101906102d09190611ea7565b610f0e565b005b6102f160048036038101906102ec9190611ea7565b6110bf565b6040516102fe9190612842565b60405180910390f35b61030f611107565b60405161031c9190612620565b60405180910390f35b61033f600480360381019061033a9190611f5b565b611140565b60405161034c9190612605565b60405180910390f35b61036f600480360381019061036a9190611f5b565b611154565b60405161037c9190612605565b60405180910390f35b61039f600480360381019061039a9190611ed0565b611350565b6040516103ac9190612842565b60405180910390f35b6103cf60048036038101906103ca9190611ea7565b6113d7565b005b633b9aca0081565b6040518060400160405280600581526020017f436c616e6b00000000000000000000000000000000000000000000000000000081525081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516104f29190612842565b60405180910390a36001905092915050565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610590576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161058790612702565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610600576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105f7906127e2565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610691576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068890612802565b60405180910390fd5b600360008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690558073ffffffffffffffffffffffffffffffffffffffff167f86d076ecf250a6d90a67a7c75317f44709d5001395ecf1df6d9dad5278f1e68160405160405180910390a250565b6000600154905090565b600061073d8484846116e3565b90509392505050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b601281565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661082f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082690612702565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561089f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161089690612642565b60405180910390fd5b6108b482600154611b3990919063ffffffff16565b60018190555061090b826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3990919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885836040516109939190612842565b60405180910390a28273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516109f99190612842565b60405180910390a36001905092915050565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610a97576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8e90612702565b60405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115610b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0f90612662565b60405180910390fd5b610b2d81600154611b9790919063ffffffff16565b600181905550610b84816000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b9790919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca582604051610c0c9190612842565b60405180910390a2600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c729190612842565b60405180910390a350565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610d8e576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e22565b610da18382611b9790919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051610efb9190612842565b60405180910390a3600191505092915050565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610f9a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9190612702565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100190612762565b60405180910390fd5b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f1d95aed2b82ae4cbdcccc214bb64bc277a20e8490d69a59d7f426c67fe46c61d60405160405180910390a350565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6040518060400160405280600481526020017f434c4e4b0000000000000000000000000000000000000000000000000000000081525081565b600061114c8383611bf6565b905092915050565b60006111e582600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3990919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460405161133e9190612842565b60405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611463576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145a90612702565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156114d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ca906126c2565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611564576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155b90612822565b60405180910390fd5b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690558073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b60008083141561167b57600090506116dd565b600082846116899190612900565b905082848261169891906128cf565b146116d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116cf906127a2565b60405180910390fd5b809150505b92915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174b906127c2565b60405180910390fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156117d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117cc906126e2565b60405180910390fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115611894576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188b90612722565b60405180910390fd5b6118e5826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b9790919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611978826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3990919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611a4982600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b9790919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611b269190612842565b60405180910390a3600190509392505050565b6000808284611b489190612879565b905083811015611b8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b84906126a2565b60405180910390fd5b8091505092915050565b600082821115611bdc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bd390612682565b60405180910390fd5b60008284611bea919061295a565b90508091505092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611c67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c5e90612742565b60405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115611ce8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cdf90612782565b60405180910390fd5b611d39826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b9790919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611dcc826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3990919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611e6b9190612842565b60405180910390a36001905092915050565b600081359050611e8c81612a78565b92915050565b600081359050611ea181612a8f565b92915050565b600060208284031215611eb957600080fd5b6000611ec784828501611e7d565b91505092915050565b60008060408385031215611ee357600080fd5b6000611ef185828601611e7d565b9250506020611f0285828601611e7d565b9150509250929050565b600080600060608486031215611f2157600080fd5b6000611f2f86828701611e7d565b9350506020611f4086828701611e7d565b9250506040611f5186828701611e92565b9150509250925092565b60008060408385031215611f6e57600080fd5b6000611f7c85828601611e7d565b9250506020611f8d85828601611e92565b9150509250929050565b600060208284031215611fa957600080fd5b6000611fb784828501611e92565b91505092915050565b611fc9816129a0565b82525050565b6000611fda8261285d565b611fe48185612868565b9350611ff48185602086016129d6565b611ffd81612a67565b840191505092915050565b6000612015601d83612868565b91507f436c616e6b3a6d696e743a205f746f203d3d20616464726573732830290000006000830152602082019050919050565b6000612055602a83612868565b91507f436c616e6b3a6275726e3a205f616d6f756e74203e2062616c616e6365735b6d60008301527f73672e73656e6465725d000000000000000000000000000000000000000000006020830152604082019050919050565b60006120bb601f83612868565b91507f536166654d6174683a207375627472616374696f6e20756e646572666c6f77006000830152602082019050919050565b60006120fb601b83612868565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b600061213b602f83612868565b91507f436c616e6b3a7472616e736665724f776e6572736869703a206e65774f776e6560008301527f72203d3d206164647265737328302900000000000000000000000000000000006020830152604082019050919050565b60006121a1602c83612868565b91507f436c616e6b3a7472616e7366657246726f6d3a205f76616c7565203e2062616c60008301527f616e6365735b5f66726f6d5d00000000000000000000000000000000000000006020830152604082019050919050565b6000612207602a83612868565b91507f436c616e6b3a6f6e6c794f776e65723a206e6f7420696e206f776e6572735b6d60008301527f73672e73656e6465725d000000000000000000000000000000000000000000006020830152604082019050919050565b600061226d603783612868565b91507f436c616e6b3a7472616e7366657246726f6d3a205f76616c7565203e20616c6c60008301527f6f7765645b5f66726f6d5d5b6d73672e73656e6465725d0000000000000000006020830152604082019050919050565b60006122d3602183612868565b91507f436c616e6b3a7472616e736665723a205f746f203d3d2061646472657373283060008301527f29000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612339602383612868565b91507f436c616e6b3a6164644f776e65723a206775657374203d3d206164647265737360008301527f28302900000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061239f602d83612868565b91507f436c616e6b3a7472616e736665723a205f76616c7565203e2062616c616e636560008301527f735b6d73672e73656e6465725d000000000000000000000000000000000000006020830152604082019050919050565b6000612405602183612868565b91507f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008301527f77000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061246b602583612868565b91507f436c616e6b3a7472616e7366657246726f6d3a205f746f203d3d20616464726560008301527f73732830290000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124d1602d83612868565b91507f436c616e6b3a72656d6f76654f776e65723a2072656d6f7665644f776e65722060008301527f3d3d2061646472657373283029000000000000000000000000000000000000006020830152604082019050919050565b6000612537603383612868565b91507f436c616e6b3a72656d6f76654f776e65723a20756e72656d6f7661626c654f7760008301527f6e657220213d2072656d6f7665644f776e6572000000000000000000000000006020830152604082019050919050565b600061259d603783612868565b91507f436c616e6b3a7472616e736665724f776e6572736869703a20756e72656d6f7660008301527f61626c654f776e657220213d206d73672e73656e6465720000000000000000006020830152604082019050919050565b6125ff816129cc565b82525050565b600060208201905061261a6000830184611fc0565b92915050565b6000602082019050818103600083015261263a8184611fcf565b905092915050565b6000602082019050818103600083015261265b81612008565b9050919050565b6000602082019050818103600083015261267b81612048565b9050919050565b6000602082019050818103600083015261269b816120ae565b9050919050565b600060208201905081810360008301526126bb816120ee565b9050919050565b600060208201905081810360008301526126db8161212e565b9050919050565b600060208201905081810360008301526126fb81612194565b9050919050565b6000602082019050818103600083015261271b816121fa565b9050919050565b6000602082019050818103600083015261273b81612260565b9050919050565b6000602082019050818103600083015261275b816122c6565b9050919050565b6000602082019050818103600083015261277b8161232c565b9050919050565b6000602082019050818103600083015261279b81612392565b9050919050565b600060208201905081810360008301526127bb816123f8565b9050919050565b600060208201905081810360008301526127db8161245e565b9050919050565b600060208201905081810360008301526127fb816124c4565b9050919050565b6000602082019050818103600083015261281b8161252a565b9050919050565b6000602082019050818103600083015261283b81612590565b9050919050565b600060208201905061285760008301846125f6565b92915050565b600081519050919050565b600082825260208201905092915050565b6000612884826129cc565b915061288f836129cc565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156128c4576128c3612a09565b5b828201905092915050565b60006128da826129cc565b91506128e5836129cc565b9250826128f5576128f4612a38565b5b828204905092915050565b600061290b826129cc565b9150612916836129cc565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561294f5761294e612a09565b5b828202905092915050565b6000612965826129cc565b9150612970836129cc565b92508282101561298357612982612a09565b5b828203905092915050565b6000612999826129ac565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b838110156129f45780820151818401526020810190506129d9565b83811115612a03576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000601f19601f8301169050919050565b612a818161298e565b8114612a8c57600080fd5b50565b612a98816129cc565b8114612aa357600080fd5b5056fea264697066735822122088137ecf9591bf05f54290dd065ad59369546845178537f8ae22b13440e6700a64736f6c63430008000033

Deployed Bytecode Sourcemap

4878:1499:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4961:46;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5011:37;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2340:202;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4082:327;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;548:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5422:152;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4786:85;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5094:37;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5707:325;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6038:336;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2965:393;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3878:198;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1066:107;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5052:38;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5579:122;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2694:266;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2547:142;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4414:367;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4961:46;4997:10;4961:46;:::o;5011:37::-;;;;;;;;;;;;;;;;;;;:::o;2340:202::-;2424:4;2467:6;2435:7;:19;2443:10;2435:19;;;;;;;;;;;;;;;:29;2455:8;2435:29;;;;;;;;;;;;;;;:38;;;;2504:8;2483:38;;2492:10;2483:38;;;2514:6;2483:38;;;;;;:::i;:::-;;;;;;;;2533:4;2526:11;;2340:202;;;;:::o;4082:327::-;3707:6;:18;3714:10;3707:18;;;;;;;;;;;;;;;;;;;;;;;;;3699:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;4179:1:::1;4155:26;;:12;:26;;;;4147:84;;;;;;;;;;;;:::i;:::-;;;;;;;;;4264:12;4244:32;;:16;;;;;;;;;;;:32;;;;4236:96;;;;;;;;;;;;:::i;:::-;;;;;;;;;4344:6;:20;4351:12;4344:20;;;;;;;;;;;;;;;;4337:27;;;;;;;;;;;4391:12;4374:30;;;;;;;;;;;;4082:327:::0;:::o;548:91::-;601:7;622:12;;615:19;;548:91;:::o;5422:152::-;5513:4;5531:38;5550:5;5557:3;5562:6;5531:18;:38::i;:::-;5524:45;;5422:152;;;;;:::o;4786:85::-;4837:4;4854:6;:12;4861:4;4854:12;;;;;;;;;;;;;;;;;;;;;;;;;4847:19;;4786:85;;;:::o;5094:37::-;5129:2;5094:37;:::o;5707:325::-;5777:4;3707:6;:18;3714:10;3707:18;;;;;;;;;;;;;;;;;;;;;;;;;3699:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;5811:1:::1;5796:17;;:3;:17;;;;5788:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;5867:25;5884:7;5867:12;;:16;;:25;;;;:::i;:::-;5852:12;:40;;;;5913:26;5931:7;5913:8;:13:::0;5922:3:::1;5913:13;;;;;;;;;;;;;;;;:17;;:26;;;;:::i;:::-;5897:8;:13:::0;5906:3:::1;5897:13;;;;;;;;;;;;;;;:42;;;;5954:3;5949:18;;;5959:7;5949:18;;;;;;:::i;:::-;;;;;;;;5998:3;5977:34;;5994:1;5977:34;;;6003:7;5977:34;;;;;;:::i;:::-;;;;;;;;6023:4;6016:11;;5707:325:::0;;;;:::o;6038:336::-;3707:6;:18;3714:10;3707:18;;;;;;;;;;;;;;;;;;;;;;;;;3699:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;6110:8:::1;:20:::0;6119:10:::1;6110:20;;;;;;;;;;;;;;;;6099:7;:31;;6091:86;;;;;;;;;;;;:::i;:::-;;;;;;;;;6197:25;6214:7;6197:12;;:16;;:25;;;;:::i;:::-;6182:12;:40;;;;6250:33;6275:7;6250:8;:20:::0;6259:10:::1;6250:20;;;;;;;;;;;;;;;;:24;;:33;;;;:::i;:::-;6227:8;:20:::0;6236:10:::1;6227:20;;;;;;;;;;;;;;;:56;;;;6298:10;6293:25;;;6310:7;6293:25;;;;;;:::i;:::-;;;;;;;;6357:1;6328:41;;6337:10;6328:41;;;6361:7;6328:41;;;;;;:::i;:::-;;;;;;;;6038:336:::0;:::o;2965:393::-;3048:4;3059:13;3075:7;:19;3083:10;3075:19;;;;;;;;;;;;;;;:29;3095:8;3075:29;;;;;;;;;;;;;;;;3059:45;;3132:8;3113:16;:27;3109:158;;;3180:1;3148:7;:19;3156:10;3148:19;;;;;;;;;;;;;;;:29;3168:8;3148:29;;;;;;;;;;;;;;;:33;;;;3109:158;;;3231:30;3244:16;3231:8;:12;;:30;;;;:::i;:::-;3199:7;:19;3207:10;3199:19;;;;;;;;;;;;;;;:29;3219:8;3199:29;;;;;;;;;;;;;;;:62;;;;3109:158;3297:8;3276:61;;3285:10;3276:61;;;3307:7;:19;3315:10;3307:19;;;;;;;;;;;;;;;:29;3327:8;3307:29;;;;;;;;;;;;;;;;3276:61;;;;;;:::i;:::-;;;;;;;;3349:4;3342:11;;;2965:393;;;;:::o;3878:198::-;3707:6;:18;3714:10;3707:18;;;;;;;;;;;;;;;;;;;;;;;;;3699:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;3958:1:::1;3941:19;;:5;:19;;;;3933:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4021:4;4005:6;:13;4012:5;4005:13;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;4065:5;4035:36;;4053:10;4035:36;;;;;;;;;;;;3878:198:::0;:::o;1066:107::-;1131:7;1152:8;:16;1161:6;1152:16;;;;;;;;;;;;;;;;1145:23;;1066:107;;;:::o;5052:38::-;;;;;;;;;;;;;;;;;;;:::o;5579:122::-;5651:4;5669:27;5684:3;5689:6;5669:14;:27::i;:::-;5662:34;;5579:122;;;;:::o;2694:266::-;2772:4;2821:46;2855:11;2821:7;:19;2829:10;2821:19;;;;;;;;;;;;;;;:29;2841:8;2821:29;;;;;;;;;;;;;;;;:33;;:46;;;;:::i;:::-;2783:7;:19;2791:10;2783:19;;;;;;;;;;;;;;;:29;2803:8;2783:29;;;;;;;;;;;;;;;:85;;;;2899:8;2878:61;;2887:10;2878:61;;;2909:7;:19;2917:10;2909:19;;;;;;;;;;;;;;;:29;2929:8;2909:29;;;;;;;;;;;;;;;;2878:61;;;;;;:::i;:::-;;;;;;;;2951:4;2944:11;;2694:266;;;;:::o;2547:142::-;2638:7;2659;:15;2667:6;2659:15;;;;;;;;;;;;;;;:25;2675:8;2659:25;;;;;;;;;;;;;;;;2652:32;;2547:142;;;;:::o;4414:367::-;3707:6;:18;3714:10;3707:18;;;;;;;;;;;;;;;;;;;;;;;;;3699:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;4509:1:::1;4489:22;;:8;:22;;;;4481:82;;;;;;;;;;;;:::i;:::-;;;;;;;;;4596:10;4576:30;;:16;;;;;;;;;;;:30;;;;4568:98;;;;;;;;;;;;:::i;:::-;;;;;;;;;4690:4;4671:6;:16;4678:8;4671:16;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;4706:6;:18;4713:10;4706:18;;;;;;;;;;;;;;;;4699:25;;;;;;;;;;;4767:8;4734:42;;4755:10;4734:42;;;;;;;;;;;;4414:367:::0;:::o;448:241:1:-;506:7;534:1;529;:6;525:45;;;558:1;551:8;;;;525:45;580:9;596:1;592;:5;;;;:::i;:::-;580:17;;624:1;619;615;:5;;;;:::i;:::-;:10;607:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;681:1;674:8;;;448:241;;;;;:::o;1731:604:0:-;1830:4;1866:1;1851:17;;:3;:17;;;;1843:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1933:8;:15;1942:5;1933:15;;;;;;;;;;;;;;;;1923:6;:25;;1915:82;;;;;;;;;;;;:::i;:::-;;;;;;;;;2020:7;:14;2028:5;2020:14;;;;;;;;;;;;;;;:26;2035:10;2020:26;;;;;;;;;;;;;;;;2010:6;:36;;2002:104;;;;;;;;;;;;:::i;:::-;;;;;;;;;2131:27;2151:6;2131:8;:15;2140:5;2131:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;2113:8;:15;2122:5;2113:15;;;;;;;;;;;;;;;:45;;;;2179:25;2197:6;2179:8;:13;2188:3;2179:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;2163:8;:13;2172:3;2163:13;;;;;;;;;;;;;;;:41;;;;2238:38;2269:6;2238:7;:14;2246:5;2238:14;;;;;;;;;;;;;;;:26;2253:10;2238:26;;;;;;;;;;;;;;;;:30;;:38;;;;:::i;:::-;2209:7;:14;2217:5;2209:14;;;;;;;;;;;;;;;:26;2224:10;2209:26;;;;;;;;;;;;;;;:67;;;;2302:3;2286:28;;2295:5;2286:28;;;2307:6;2286:28;;;;;;:::i;:::-;;;;;;;;2326:4;2319:11;;1731:604;;;;;:::o;80:176:1:-;138:7;157:9;173:1;169;:5;;;;:::i;:::-;157:17;;197:1;192;:6;;184:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;248:1;241:8;;;80:176;;;;:::o;262:180::-;320:7;352:1;347;:6;;339:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;399:9;415:1;411;:5;;;;:::i;:::-;399:17;;434:1;427:8;;;262:180;;;;:::o;644:417:0:-;724:4;758:1;743:17;;:3;:17;;;;735:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;821:8;:20;830:10;821:20;;;;;;;;;;;;;;;;811:6;:30;;803:88;;;;;;;;;;;;:::i;:::-;;;;;;;;;919:32;944:6;919:8;:20;928:10;919:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;896:8;:20;905:10;896:20;;;;;;;;;;;;;;;:55;;;;972:25;990:6;972:8;:13;981:3;972:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;956:8;:13;965:3;956:13;;;;;;;;;;;;;;;:41;;;;1028:3;1007:33;;1016:10;1007:33;;;1033:6;1007:33;;;;;;:::i;:::-;;;;;;;;1052:4;1045:11;;644:417;;;;:::o;7:139:2:-;;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:139::-;;236:6;223:20;214:29;;252:33;279:5;252:33;:::i;:::-;204:87;;;;:::o;297:262::-;;405:2;393:9;384:7;380:23;376:32;373:2;;;421:1;418;411:12;373:2;464:1;489:53;534:7;525:6;514:9;510:22;489:53;:::i;:::-;479:63;;435:117;363:196;;;;:::o;565:407::-;;;690:2;678:9;669:7;665:23;661:32;658:2;;;706:1;703;696:12;658:2;749:1;774:53;819:7;810:6;799:9;795:22;774:53;:::i;:::-;764:63;;720:117;876:2;902:53;947:7;938:6;927:9;923:22;902:53;:::i;:::-;892:63;;847:118;648:324;;;;;:::o;978:552::-;;;;1120:2;1108:9;1099:7;1095:23;1091:32;1088:2;;;1136:1;1133;1126:12;1088:2;1179:1;1204:53;1249:7;1240:6;1229:9;1225:22;1204:53;:::i;:::-;1194:63;;1150:117;1306:2;1332:53;1377:7;1368:6;1357:9;1353:22;1332:53;:::i;:::-;1322:63;;1277:118;1434:2;1460:53;1505:7;1496:6;1485:9;1481:22;1460:53;:::i;:::-;1450:63;;1405:118;1078:452;;;;;:::o;1536:407::-;;;1661:2;1649:9;1640:7;1636:23;1632:32;1629:2;;;1677:1;1674;1667:12;1629:2;1720:1;1745:53;1790:7;1781:6;1770:9;1766:22;1745:53;:::i;:::-;1735:63;;1691:117;1847:2;1873:53;1918:7;1909:6;1898:9;1894:22;1873:53;:::i;:::-;1863:63;;1818:118;1619:324;;;;;:::o;1949:262::-;;2057:2;2045:9;2036:7;2032:23;2028:32;2025:2;;;2073:1;2070;2063:12;2025:2;2116:1;2141:53;2186:7;2177:6;2166:9;2162:22;2141:53;:::i;:::-;2131:63;;2087:117;2015:196;;;;:::o;2217:109::-;2298:21;2313:5;2298:21;:::i;:::-;2293:3;2286:34;2276:50;;:::o;2332:364::-;;2448:39;2481:5;2448:39;:::i;:::-;2503:71;2567:6;2562:3;2503:71;:::i;:::-;2496:78;;2583:52;2628:6;2623:3;2616:4;2609:5;2605:16;2583:52;:::i;:::-;2660:29;2682:6;2660:29;:::i;:::-;2655:3;2651:39;2644:46;;2424:272;;;;;:::o;2702:327::-;;2865:67;2929:2;2924:3;2865:67;:::i;:::-;2858:74;;2962:31;2958:1;2953:3;2949:11;2942:52;3020:2;3015:3;3011:12;3004:19;;2848:181;;;:::o;3035:374::-;;3198:67;3262:2;3257:3;3198:67;:::i;:::-;3191:74;;3295:34;3291:1;3286:3;3282:11;3275:55;3361:12;3356:2;3351:3;3347:12;3340:34;3400:2;3395:3;3391:12;3384:19;;3181:228;;;:::o;3415:329::-;;3578:67;3642:2;3637:3;3578:67;:::i;:::-;3571:74;;3675:33;3671:1;3666:3;3662:11;3655:54;3735:2;3730:3;3726:12;3719:19;;3561:183;;;:::o;3750:325::-;;3913:67;3977:2;3972:3;3913:67;:::i;:::-;3906:74;;4010:29;4006:1;4001:3;3997:11;3990:50;4066:2;4061:3;4057:12;4050:19;;3896:179;;;:::o;4081:379::-;;4244:67;4308:2;4303:3;4244:67;:::i;:::-;4237:74;;4341:34;4337:1;4332:3;4328:11;4321:55;4407:17;4402:2;4397:3;4393:12;4386:39;4451:2;4446:3;4442:12;4435:19;;4227:233;;;:::o;4466:376::-;;4629:67;4693:2;4688:3;4629:67;:::i;:::-;4622:74;;4726:34;4722:1;4717:3;4713:11;4706:55;4792:14;4787:2;4782:3;4778:12;4771:36;4833:2;4828:3;4824:12;4817:19;;4612:230;;;:::o;4848:374::-;;5011:67;5075:2;5070:3;5011:67;:::i;:::-;5004:74;;5108:34;5104:1;5099:3;5095:11;5088:55;5174:12;5169:2;5164:3;5160:12;5153:34;5213:2;5208:3;5204:12;5197:19;;4994:228;;;:::o;5228:387::-;;5391:67;5455:2;5450:3;5391:67;:::i;:::-;5384:74;;5488:34;5484:1;5479:3;5475:11;5468:55;5554:25;5549:2;5544:3;5540:12;5533:47;5606:2;5601:3;5597:12;5590:19;;5374:241;;;:::o;5621:365::-;;5784:67;5848:2;5843:3;5784:67;:::i;:::-;5777:74;;5881:34;5877:1;5872:3;5868:11;5861:55;5947:3;5942:2;5937:3;5933:12;5926:25;5977:2;5972:3;5968:12;5961:19;;5767:219;;;:::o;5992:367::-;;6155:67;6219:2;6214:3;6155:67;:::i;:::-;6148:74;;6252:34;6248:1;6243:3;6239:11;6232:55;6318:5;6313:2;6308:3;6304:12;6297:27;6350:2;6345:3;6341:12;6334:19;;6138:221;;;:::o;6365:377::-;;6528:67;6592:2;6587:3;6528:67;:::i;:::-;6521:74;;6625:34;6621:1;6616:3;6612:11;6605:55;6691:15;6686:2;6681:3;6677:12;6670:37;6733:2;6728:3;6724:12;6717:19;;6511:231;;;:::o;6748:365::-;;6911:67;6975:2;6970:3;6911:67;:::i;:::-;6904:74;;7008:34;7004:1;6999:3;6995:11;6988:55;7074:3;7069:2;7064:3;7060:12;7053:25;7104:2;7099:3;7095:12;7088:19;;6894:219;;;:::o;7119:369::-;;7282:67;7346:2;7341:3;7282:67;:::i;:::-;7275:74;;7379:34;7375:1;7370:3;7366:11;7359:55;7445:7;7440:2;7435:3;7431:12;7424:29;7479:2;7474:3;7470:12;7463:19;;7265:223;;;:::o;7494:377::-;;7657:67;7721:2;7716:3;7657:67;:::i;:::-;7650:74;;7754:34;7750:1;7745:3;7741:11;7734:55;7820:15;7815:2;7810:3;7806:12;7799:37;7862:2;7857:3;7853:12;7846:19;;7640:231;;;:::o;7877:383::-;;8040:67;8104:2;8099:3;8040:67;:::i;:::-;8033:74;;8137:34;8133:1;8128:3;8124:11;8117:55;8203:21;8198:2;8193:3;8189:12;8182:43;8251:2;8246:3;8242:12;8235:19;;8023:237;;;:::o;8266:387::-;;8429:67;8493:2;8488:3;8429:67;:::i;:::-;8422:74;;8526:34;8522:1;8517:3;8513:11;8506:55;8592:25;8587:2;8582:3;8578:12;8571:47;8644:2;8639:3;8635:12;8628:19;;8412:241;;;:::o;8659:118::-;8746:24;8764:5;8746:24;:::i;:::-;8741:3;8734:37;8724:53;;:::o;8783:210::-;;8908:2;8897:9;8893:18;8885:26;;8921:65;8983:1;8972:9;8968:17;8959:6;8921:65;:::i;:::-;8875:118;;;;:::o;8999:313::-;;9150:2;9139:9;9135:18;9127:26;;9199:9;9193:4;9189:20;9185:1;9174:9;9170:17;9163:47;9227:78;9300:4;9291:6;9227:78;:::i;:::-;9219:86;;9117:195;;;;:::o;9318:419::-;;9522:2;9511:9;9507:18;9499:26;;9571:9;9565:4;9561:20;9557:1;9546:9;9542:17;9535:47;9599:131;9725:4;9599:131;:::i;:::-;9591:139;;9489:248;;;:::o;9743:419::-;;9947:2;9936:9;9932:18;9924:26;;9996:9;9990:4;9986:20;9982:1;9971:9;9967:17;9960:47;10024:131;10150:4;10024:131;:::i;:::-;10016:139;;9914:248;;;:::o;10168:419::-;;10372:2;10361:9;10357:18;10349:26;;10421:9;10415:4;10411:20;10407:1;10396:9;10392:17;10385:47;10449:131;10575:4;10449:131;:::i;:::-;10441:139;;10339:248;;;:::o;10593:419::-;;10797:2;10786:9;10782:18;10774:26;;10846:9;10840:4;10836:20;10832:1;10821:9;10817:17;10810:47;10874:131;11000:4;10874:131;:::i;:::-;10866:139;;10764:248;;;:::o;11018:419::-;;11222:2;11211:9;11207:18;11199:26;;11271:9;11265:4;11261:20;11257:1;11246:9;11242:17;11235:47;11299:131;11425:4;11299:131;:::i;:::-;11291:139;;11189:248;;;:::o;11443:419::-;;11647:2;11636:9;11632:18;11624:26;;11696:9;11690:4;11686:20;11682:1;11671:9;11667:17;11660:47;11724:131;11850:4;11724:131;:::i;:::-;11716:139;;11614:248;;;:::o;11868:419::-;;12072:2;12061:9;12057:18;12049:26;;12121:9;12115:4;12111:20;12107:1;12096:9;12092:17;12085:47;12149:131;12275:4;12149:131;:::i;:::-;12141:139;;12039:248;;;:::o;12293:419::-;;12497:2;12486:9;12482:18;12474:26;;12546:9;12540:4;12536:20;12532:1;12521:9;12517:17;12510:47;12574:131;12700:4;12574:131;:::i;:::-;12566:139;;12464:248;;;:::o;12718:419::-;;12922:2;12911:9;12907:18;12899:26;;12971:9;12965:4;12961:20;12957:1;12946:9;12942:17;12935:47;12999:131;13125:4;12999:131;:::i;:::-;12991:139;;12889:248;;;:::o;13143:419::-;;13347:2;13336:9;13332:18;13324:26;;13396:9;13390:4;13386:20;13382:1;13371:9;13367:17;13360:47;13424:131;13550:4;13424:131;:::i;:::-;13416:139;;13314:248;;;:::o;13568:419::-;;13772:2;13761:9;13757:18;13749:26;;13821:9;13815:4;13811:20;13807:1;13796:9;13792:17;13785:47;13849:131;13975:4;13849:131;:::i;:::-;13841:139;;13739:248;;;:::o;13993:419::-;;14197:2;14186:9;14182:18;14174:26;;14246:9;14240:4;14236:20;14232:1;14221:9;14217:17;14210:47;14274:131;14400:4;14274:131;:::i;:::-;14266:139;;14164:248;;;:::o;14418:419::-;;14622:2;14611:9;14607:18;14599:26;;14671:9;14665:4;14661:20;14657:1;14646:9;14642:17;14635:47;14699:131;14825:4;14699:131;:::i;:::-;14691:139;;14589:248;;;:::o;14843:419::-;;15047:2;15036:9;15032:18;15024:26;;15096:9;15090:4;15086:20;15082:1;15071:9;15067:17;15060:47;15124:131;15250:4;15124:131;:::i;:::-;15116:139;;15014:248;;;:::o;15268:419::-;;15472:2;15461:9;15457:18;15449:26;;15521:9;15515:4;15511:20;15507:1;15496:9;15492:17;15485:47;15549:131;15675:4;15549:131;:::i;:::-;15541:139;;15439:248;;;:::o;15693:419::-;;15897:2;15886:9;15882:18;15874:26;;15946:9;15940:4;15936:20;15932:1;15921:9;15917:17;15910:47;15974:131;16100:4;15974:131;:::i;:::-;15966:139;;15864:248;;;:::o;16118:222::-;;16249:2;16238:9;16234:18;16226:26;;16262:71;16330:1;16319:9;16315:17;16306:6;16262:71;:::i;:::-;16216:124;;;;:::o;16346:99::-;;16432:5;16426:12;16416:22;;16405:40;;;:::o;16451:169::-;;16569:6;16564:3;16557:19;16609:4;16604:3;16600:14;16585:29;;16547:73;;;;:::o;16626:305::-;;16685:20;16703:1;16685:20;:::i;:::-;16680:25;;16719:20;16737:1;16719:20;:::i;:::-;16714:25;;16873:1;16805:66;16801:74;16798:1;16795:81;16792:2;;;16879:18;;:::i;:::-;16792:2;16923:1;16920;16916:9;16909:16;;16670:261;;;;:::o;16937:185::-;;16994:20;17012:1;16994:20;:::i;:::-;16989:25;;17028:20;17046:1;17028:20;:::i;:::-;17023:25;;17067:1;17057:2;;17072:18;;:::i;:::-;17057:2;17114:1;17111;17107:9;17102:14;;16979:143;;;;:::o;17128:348::-;;17191:20;17209:1;17191:20;:::i;:::-;17186:25;;17225:20;17243:1;17225:20;:::i;:::-;17220:25;;17413:1;17345:66;17341:74;17338:1;17335:81;17330:1;17323:9;17316:17;17312:105;17309:2;;;17420:18;;:::i;:::-;17309:2;17468:1;17465;17461:9;17450:20;;17176:300;;;;:::o;17482:191::-;;17542:20;17560:1;17542:20;:::i;:::-;17537:25;;17576:20;17594:1;17576:20;:::i;:::-;17571:25;;17615:1;17612;17609:8;17606:2;;;17620:18;;:::i;:::-;17606:2;17665:1;17662;17658:9;17650:17;;17527:146;;;;:::o;17679:96::-;;17745:24;17763:5;17745:24;:::i;:::-;17734:35;;17724:51;;;:::o;17781:90::-;;17858:5;17851:13;17844:21;17833:32;;17823:48;;;:::o;17877:126::-;;17954:42;17947:5;17943:54;17932:65;;17922:81;;;:::o;18009:77::-;;18075:5;18064:16;;18054:32;;;:::o;18092:307::-;18160:1;18170:113;18184:6;18181:1;18178:13;18170:113;;;18269:1;18264:3;18260:11;18254:18;18250:1;18245:3;18241:11;18234:39;18206:2;18203:1;18199:10;18194:15;;18170:113;;;18301:6;18298:1;18295:13;18292:2;;;18381:1;18372:6;18367:3;18363:16;18356:27;18292:2;18141:258;;;;:::o;18405:180::-;18453:77;18450:1;18443:88;18550:4;18547:1;18540:15;18574:4;18571:1;18564:15;18591:180;18639:77;18636:1;18629:88;18736:4;18733:1;18726:15;18760:4;18757:1;18750:15;18777:102;;18869:2;18865:7;18860:2;18853:5;18849:14;18845:28;18835:38;;18825:54;;;:::o;18885:122::-;18958:24;18976:5;18958:24;:::i;:::-;18951:5;18948:35;18938:2;;18997:1;18994;18987:12;18938:2;18928:79;:::o;19013:122::-;19086:24;19104:5;19086:24;:::i;:::-;19079:5;19076:35;19066:2;;19125:1;19122;19115:12;19066:2;19056:79;:::o

Swarm Source

ipfs://88137ecf9591bf05f54290dd065ad59369546845178537f8ae22b13440e6700a
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.