BNB Price: $711.13 (-0.47%)
Gas: 1 GWei
 
Transaction Hash
Method
Block
From
To
Approve440750492024-11-17 1:11:3029 days ago1731805890IN
Cobalt: CBT Token
0 BNB0.000046221
Transfer440743402024-11-17 0:36:0329 days ago1731803763IN
Cobalt: CBT Token
0 BNB0.000051641
Transfer440743392024-11-17 0:36:0029 days ago1731803760IN
Cobalt: CBT Token
0 BNB0.000068731
Approve438124102024-11-07 22:18:4438 days ago1731017924IN
Cobalt: CBT Token
0 BNB0.000046211
Approve435515412024-10-29 20:43:1247 days ago1730234592IN
Cobalt: CBT Token
0 BNB0.000026621.1
Approve435389992024-10-29 10:16:0647 days ago1730196966IN
Cobalt: CBT Token
0 BNB0.000046491
Transfer435337092024-10-29 5:51:3347 days ago1730181093IN
Cobalt: CBT Token
0 BNB0.000051611
Transfer435337092024-10-29 5:51:3347 days ago1730181093IN
Cobalt: CBT Token
0 BNB0.000068711
Transfer406507412024-07-20 23:12:50148 days ago1721517170IN
Cobalt: CBT Token
0 BNB0.000068741
Transfer399246912024-06-25 16:08:09173 days ago1719331689IN
Cobalt: CBT Token
0 BNB0.000051631
Transfer399246912024-06-25 16:08:09173 days ago1719331689IN
Cobalt: CBT Token
0 BNB0.000056411
Transfer399246912024-06-25 16:08:09173 days ago1719331689IN
Cobalt: CBT Token
0 BNB0.000073531
Approve397181812024-06-18 10:56:33180 days ago1718708193IN
Cobalt: CBT Token
0 BNB0.000153423.3
Collect397181712024-06-18 10:56:03180 days ago1718708163IN
Cobalt: CBT Token
0 BNB0.000130633.3
Unstake397181642024-06-18 10:55:42180 days ago1718708142IN
Cobalt: CBT Token
0 BNB0.00015223.3
Collect397026252024-06-17 21:56:05181 days ago1718661365IN
Cobalt: CBT Token
0 BNB0.000130633.3
Unstake397025802024-06-17 21:53:50181 days ago1718661230IN
Cobalt: CBT Token
0 BNB0.000152243.3
Approve392515612024-06-02 4:47:44197 days ago1717303664IN
Cobalt: CBT Token
0 BNB0.000026621.1
Approve376494092024-04-07 10:50:21252 days ago1712487021IN
Cobalt: CBT Token
0 BNB0.00002621
Approve376491982024-04-07 10:39:48252 days ago1712486388IN
Cobalt: CBT Token
0 BNB0.00002421
Approve368947922024-03-12 4:30:28279 days ago1710217828IN
Cobalt: CBT Token
0 BNB0.000075043.1
Approve365016002024-02-27 12:14:50292 days ago1709036090IN
Cobalt: CBT Token
0 BNB0.000138683
Approve354490692024-01-21 21:22:37329 days ago1705872157IN
Cobalt: CBT Token
0 BNB0.000072623
Approve352379272024-01-14 12:59:35336 days ago1705237175IN
Cobalt: CBT Token
0 BNB0.000072623
Approve351491452024-01-11 10:52:30339 days ago1704970350IN
Cobalt: CBT Token
0 BNB0.000075043.1
View all transactions

Latest 25 internal transactions (View All)

Parent Transaction Hash Block From To
54708462021-03-07 11:35:151379 days ago1615116915
Cobalt: CBT Token
0 BNB
54708462021-03-07 11:35:151379 days ago1615116915
Cobalt: CBT Token
0 BNB
54708462021-03-07 11:35:151379 days ago1615116915
Cobalt: CBT Token
0 BNB
54695382021-03-07 10:29:511379 days ago1615112991
Cobalt: CBT Token
0 BNB
54694662021-03-07 10:26:151379 days ago1615112775
Cobalt: CBT Token
0 BNB
54694662021-03-07 10:26:151379 days ago1615112775
Cobalt: CBT Token
0 BNB
54683292021-03-07 9:29:241379 days ago1615109364
Cobalt: CBT Token
0 BNB
54683292021-03-07 9:29:241379 days ago1615109364
Cobalt: CBT Token
0 BNB
54683292021-03-07 9:29:241379 days ago1615109364
Cobalt: CBT Token
0 BNB
54682842021-03-07 9:27:091379 days ago1615109229
Cobalt: CBT Token
0 BNB
54682842021-03-07 9:27:091379 days ago1615109229
Cobalt: CBT Token
0 BNB
54682742021-03-07 9:26:391379 days ago1615109199
Cobalt: CBT Token
0 BNB
54682742021-03-07 9:26:391379 days ago1615109199
Cobalt: CBT Token
0 BNB
54682742021-03-07 9:26:391379 days ago1615109199
Cobalt: CBT Token
0 BNB
54671142021-03-07 8:28:391379 days ago1615105719
Cobalt: CBT Token
0 BNB
54665302021-03-07 7:59:271379 days ago1615103967
Cobalt: CBT Token
0 BNB
54665302021-03-07 7:59:271379 days ago1615103967
Cobalt: CBT Token
0 BNB
54665162021-03-07 7:58:451379 days ago1615103925
Cobalt: CBT Token
0 BNB
54664482021-03-07 7:55:211379 days ago1615103721
Cobalt: CBT Token
0 BNB
54664482021-03-07 7:55:211379 days ago1615103721
Cobalt: CBT Token
0 BNB
54664482021-03-07 7:55:211379 days ago1615103721
Cobalt: CBT Token
0 BNB
54659102021-03-07 7:28:271379 days ago1615102107
Cobalt: CBT Token
0 BNB
54652712021-03-07 6:56:301379 days ago1615100190
Cobalt: CBT Token
0 BNB
54652712021-03-07 6:56:301379 days ago1615100190
Cobalt: CBT Token
0 BNB
54651882021-03-07 6:52:211379 days ago1615099941
Cobalt: CBT Token
0 BNB
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Cobalt

Compiler Version
v0.5.17+commit.d19bba13

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at BscScan.com on 2021-02-14
*/

pragma solidity ^0.5.17;

interface Callable {
	function tokenCallback(address _from, uint256 _tokens, bytes calldata _data) external returns (bool);
}

//OFFICIAL COBALT.FINANCE SMART CONTRACT

contract Cobalt {

	uint256 constant private BURNING_RATE = 10;
	uint256 constant private INITIAL_SUPPLY = 1e26;
	uint256 constant private MINIMUM_SUPPLY_PBEPENTAGE = 5;
	uint256 constant private MIN_STAKE_AMOUNT = 1000;
	string constant public name = "Cobalt";
	uint8 constant public decimals = 18;
	string constant public symbol = "CBT";
	uint256 constant private DEFAULT_SCALAR_VALUE = 2**64;

	struct User {
		uint256 balance;
		uint256 staked;
		mapping(address => uint256) allowance;
		int256 scaledPayout;
		bool burningDisabled;
	}


	struct Info {
		address adminAddress;
		uint256 totalSupply;
		uint256 totalStaked;
		mapping(address => User) users;
		uint256 scaledPayoutPerToken;
	}


	Info private info;

	event Stake(address indexed owner, uint256 tokens);
	event Unstake(address indexed owner, uint256 tokens);
	event Approval(address indexed owner, address indexed spender, uint256 tokens);
	event DisableBurning(address indexed user, bool status);
	event Collect(address indexed owner, uint256 tokens);
	event Burn(uint256 tokens);
	event Transfer(address indexed from, address indexed to, uint256 tokens);

	constructor() public {
		info.adminAddress = msg.sender;
		info.totalSupply = INITIAL_SUPPLY;
		info.users[msg.sender].balance = INITIAL_SUPPLY;
		emit Transfer(address(0x0), msg.sender, INITIAL_SUPPLY);
		disableBurning(msg.sender, true);
	}

	function burn(uint256 _tokens) external {
		require(balanceOf(msg.sender) >= _tokens);
		info.users[msg.sender].balance -= _tokens;
		uint256 _burnedAmount = _tokens;
		if (info.totalStaked > 0) {
			_burnedAmount /= 2;
			info.scaledPayoutPerToken += _burnedAmount * DEFAULT_SCALAR_VALUE / info.totalStaked;
			emit Transfer(msg.sender, address(this), _burnedAmount);
		}

		info.totalSupply -= _burnedAmount;
		emit Transfer(msg.sender, address(0x0), _burnedAmount);
		emit Burn(_burnedAmount);
	}

	function stake(uint256 _tokens) external {
		_stake(_tokens);
	}

	function unstake(uint256 _tokens) external {
		_unstake(_tokens);
	}

	function approve(address _spender, uint256 _tokens) external returns (bool) {
		info.users[msg.sender].allowance[_spender] = _tokens;
		emit Approval(msg.sender, _spender, _tokens);
		return true;
	}

	function transferAndCall(address _to, uint256 _tokens, bytes calldata _data) external returns (bool) {
		uint256 _transferred = _transfer(msg.sender, _to, _tokens);
		uint32 _size;
		assembly {
			_size := extcodesize(_to)
		}
		if (_size > 0) {
			require(Callable(_to).tokenCallback(msg.sender, _transferred, _data));
		}
		return true;
	}

	function _transfer(address _from, address _to, uint256 _tokens) internal returns (uint256) {
		require(balanceOf(_from) >= _tokens);
		info.users[_from].balance -= _tokens;
		uint256 _burnedAmount = _tokens * BURNING_RATE / 100;

		if (totalSupply() - _burnedAmount < INITIAL_SUPPLY * MINIMUM_SUPPLY_PBEPENTAGE / 100 || isBurningDisabled(_from)) {
			_burnedAmount = 0;
		}

		uint256 _transferred = _tokens - _burnedAmount;
		info.users[_to].balance += _transferred;

		emit Transfer(_from, _to, _transferred);
		if (_burnedAmount > 0) {
			if (info.totalStaked > 0) {
				_burnedAmount /= 2;
				info.scaledPayoutPerToken += _burnedAmount * DEFAULT_SCALAR_VALUE / info.totalStaked;
				emit Transfer(_from, address(this), _burnedAmount);
			}

			info.totalSupply -= _burnedAmount;
			emit Transfer(_from, address(0x0), _burnedAmount);
			emit Burn(_burnedAmount);
		}

		return _transferred;
	}

	function bulkTransfer(address[] calldata _receivers, uint256[] calldata _amounts) external {
		require(_receivers.length == _amounts.length);
		for (uint256 i = 0; i < _receivers.length; i++) {
			_transfer(msg.sender, _receivers[i], _amounts[i]);
		}
	}

	function transferFrom(address _from, address _to, uint256 _tokens) external returns (bool) {
		require(info.users[_from].allowance[msg.sender] >= _tokens);
		info.users[_from].allowance[msg.sender] -= _tokens;
		_transfer(_from, _to, _tokens);
		return true;
	}

	function transfer(address _to, uint256 _tokens) external returns (bool) {
		_transfer(msg.sender, _to, _tokens);
		return true;
	}

	function distribute(uint256 _tokens) external {
		require(info.totalStaked > 0);
		require(balanceOf(msg.sender) >= _tokens);
		info.users[msg.sender].balance -= _tokens;
		info.scaledPayoutPerToken += _tokens * DEFAULT_SCALAR_VALUE / info.totalStaked;
		emit Transfer(msg.sender, address(this), _tokens);
	}

	function disableBurning(address _user, bool _status) public {
		require(msg.sender == info.adminAddress);
		info.users[_user].burningDisabled = _status;
		emit DisableBurning(_user, _status);
	}

	function totalStaked() public view returns (uint256) {
		return info.totalStaked;
	}

	function totalSupply() public view returns (uint256) {
		return info.totalSupply;
	}

	function dividendsOf(address _user) public view returns (uint256) {
		return uint256(int256(info.scaledPayoutPerToken * info.users[_user].staked) - info.users[_user].scaledPayout) / DEFAULT_SCALAR_VALUE;
	}

	function allowance(address _user, address _spender) public view returns (uint256) {
		return info.users[_user].allowance[_spender];
	}

	function balanceOf(address _user) public view returns (uint256) {
		return info.users[_user].balance - stakedOf(_user);
	}

	function stakedOf(address _user) public view returns (uint256) {
		return info.users[_user].staked;
	}

	function isBurningDisabled(address _user) public view returns (bool) {
		return info.users[_user].burningDisabled;
	}

	function infoFor(address _user) public view returns (uint256 totalTokenSupply, uint256 totalTokensStaked, uint256 userBalance, uint256 userStaked, uint256 userDividends) {
		return (totalSupply(), totalStaked(), balanceOf(_user), stakedOf(_user), dividendsOf(_user));
	}

	function _stake(uint256 _amount) internal {
		require(balanceOf(msg.sender) >= _amount);
		require(stakedOf(msg.sender) + _amount >= MIN_STAKE_AMOUNT);
		info.totalStaked += _amount;
		info.users[msg.sender].staked += _amount;
		info.users[msg.sender].scaledPayout += int256(_amount * info.scaledPayoutPerToken);
		emit Transfer(msg.sender, address(this), _amount);
		emit Stake(msg.sender, _amount);
	}

	function collect() external returns (uint256) {
		uint256 _dividends = dividendsOf(msg.sender);
		require(_dividends >= 0);
		info.users[msg.sender].scaledPayout += int256(_dividends * DEFAULT_SCALAR_VALUE);
		info.users[msg.sender].balance += _dividends;
		emit Transfer(address(this), msg.sender, _dividends);
		emit Collect(msg.sender, _dividends);
		return _dividends;
	}

	function _unstake(uint256 _amount) internal {
		require(stakedOf(msg.sender) >= _amount);
		uint256 _burnedAmount = _amount * BURNING_RATE / 100;
		info.scaledPayoutPerToken += _burnedAmount * DEFAULT_SCALAR_VALUE / info.totalStaked;
		info.totalStaked -= _amount;
		info.users[msg.sender].balance -= _burnedAmount;
		info.users[msg.sender].staked -= _amount;
		info.users[msg.sender].scaledPayout -= int256(_amount * info.scaledPayoutPerToken);
		emit Transfer(address(this), msg.sender, _amount - _burnedAmount);
		emit Unstake(msg.sender, _amount);
	}


}

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":"tokens","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"Collect","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"bool","name":"status","type":"bool"}],"name":"DisableBurning","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"Stake","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":"tokens","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"Unstake","type":"event"},{"constant":true,"inputs":[{"internalType":"address","name":"_user","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":"_tokens","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address[]","name":"_receivers","type":"address[]"},{"internalType":"uint256[]","name":"_amounts","type":"uint256[]"}],"name":"bulkTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"collect","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"bool","name":"_status","type":"bool"}],"name":"disableBurning","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"distribute","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"dividendsOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"infoFor","outputs":[{"internalType":"uint256","name":"totalTokenSupply","type":"uint256"},{"internalType":"uint256","name":"totalTokensStaked","type":"uint256"},{"internalType":"uint256","name":"userBalance","type":"uint256"},{"internalType":"uint256","name":"userStaked","type":"uint256"},{"internalType":"uint256","name":"userDividends","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"isBurningDisabled","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":false,"inputs":[{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"stake","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"stakedOf","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":"_tokens","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"name":"transferAndCall","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":"_tokens","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"unstake","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b50336000800160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506a52b7d2dcc80cd2e40000006000600101819055506a52b7d2dcc80cd2e4000000600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6a52b7d2dcc80cd2e40000006040518082815260200191505060405180910390a361014033600161014560201b60201c565b610254565b6000800160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101a157600080fd5b80600060030160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167fac5f37eb6828dbaeaab92129c6d94cc84993053d4ce0a52f25044ed7d1e8a9fa82604051808215151515815260200191505060405180910390a25050565b611c72806102636000396000f3fe608060405234801561001057600080fd5b50600436106101415760003560e01c806370a08231116100b8578063a694fc3a1161007c578063a694fc3a14610707578063a9059cbb14610735578063af500ba31461079b578063d7455eb6146107f3578063dd62ed3e14610867578063e5225381146108df57610141565b806370a08231146105905780637676817a146105e8578063817b1cd21461063857806391c05b0b1461065657806395d89b411461068457610141565b806323b872dd1161010a57806323b872dd146103735780632e17de78146103f9578063313ce567146104275780634000aea01461044b57806342966c681461050657806354eaae461461053457610141565b806265318b1461014657806306fdde031461019e578063095ea7b314610221578063153a1f3e1461028757806318160ddd14610355575b600080fd5b6101886004803603602081101561015c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506108fd565b6040518082815260200191505060405180910390f35b6101a66109ac565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101e65780820151818401526020810190506101cb565b50505050905090810190601f1680156102135780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61026d6004803603604081101561023757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109e5565b604051808215151515815260200191505060405180910390f35b6103536004803603604081101561029d57600080fd5b81019080803590602001906401000000008111156102ba57600080fd5b8201836020820111156102cc57600080fd5b803590602001918460208302840111640100000000831117156102ee57600080fd5b90919293919293908035906020019064010000000081111561030f57600080fd5b82018360208201111561032157600080fd5b8035906020019184602083028401116401000000008311171561034357600080fd5b9091929391929390505050610add565b005b61035d610b5a565b6040518082815260200191505060405180910390f35b6103df6004803603606081101561038957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b66565b604051808215151515815260200191505060405180910390f35b6104256004803603602081101561040f57600080fd5b8101908080359060200190929190505050610c9e565b005b61042f610caa565b604051808260ff1660ff16815260200191505060405180910390f35b6104ec6004803603606081101561046157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001906401000000008111156104a857600080fd5b8201836020820111156104ba57600080fd5b803590602001918460018302840111640100000000831117156104dc57600080fd5b9091929391929390505050610caf565b604051808215151515815260200191505060405180910390f35b6105326004803603602081101561051c57600080fd5b8101908080359060200190929190505050610de2565b005b6105766004803603602081101561054a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610faf565b604051808215151515815260200191505060405180910390f35b6105d2600480360360208110156105a657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061100a565b6040518082815260200191505060405180910390f35b610636600480360360408110156105fe57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050611063565b005b610640611172565b6040518082815260200191505060405180910390f35b6106826004803603602081101561066c57600080fd5b810190808035906020019092919050505061117e565b005b61068c61128b565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156106cc5780820151818401526020810190506106b1565b50505050905090810190601f1680156106f95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6107336004803603602081101561071d57600080fd5b81019080803590602001909291905050506112c4565b005b6107816004803603604081101561074b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506112d0565b604051808215151515815260200191505060405180910390f35b6107dd600480360360208110156107b157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112e8565b6040518082815260200191505060405180910390f35b6108356004803603602081101561080957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611336565b604051808681526020018581526020018481526020018381526020018281526020019550505050505060405180910390f35b6108c96004803603604081101561087d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061137c565b6040518082815260200191505060405180910390f35b6108e7611408565b6040518082815260200191505060405180910390f35b600068010000000000000000600060030160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154600060030160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101546000600401540203816109a457fe5b049050919050565b6040518060400160405280600681526020017f436f62616c74000000000000000000000000000000000000000000000000000081525081565b600081600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b818190508484905014610aef57600080fd5b60008090505b84849050811015610b5357610b4533868684818110610b1057fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff16858585818110610b3957fe5b9050602002013561158f565b508080600101915050610af5565b5050505050565b60008060010154905090565b600081600060030160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610bf757600080fd5b81600060030160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550610c9284848461158f565b50600190509392505050565b610ca78161187a565b50565b601281565b600080610cbd33878761158f565b90506000863b905060008163ffffffff161115610dd4578673ffffffffffffffffffffffffffffffffffffffff16636be32e73338488886040518563ffffffff1660e01b8152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505095505050505050602060405180830381600087803b158015610d8f57600080fd5b505af1158015610da3573d6000803e3d6000fd5b505050506040513d6020811015610db957600080fd5b8101908080519060200190929190505050610dd357600080fd5b5b600192505050949350505050565b80610dec3361100a565b1015610df757600080fd5b80600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825403925050819055506000819050600080600201541115610efb5760028181610e6657fe5b04905060006002015468010000000000000000820281610e8257fe5b046000600401600082825401925050819055503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35b80600060010160008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a37fb90306ad06b2a6ff86ddc9327db583062895ef6540e62dc50add009db5b356eb816040518082815260200191505060405180910390a15050565b60008060030160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160009054906101000a900460ff169050919050565b6000611015826112e8565b600060030160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154039050919050565b6000800160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110bf57600080fd5b80600060030160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167fac5f37eb6828dbaeaab92129c6d94cc84993053d4ce0a52f25044ed7d1e8a9fa82604051808215151515815260200191505060405180910390a25050565b60008060020154905090565b600080600201541161118f57600080fd5b806111993361100a565b10156111a457600080fd5b80600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825403925050819055506000600201546801000000000000000082028161121057fe5b046000600401600082825401925050819055503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350565b6040518060400160405280600381526020017f434254000000000000000000000000000000000000000000000000000000000081525081565b6112cd81611a99565b50565b60006112dd33848461158f565b506001905092915050565b60008060030160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050919050565b6000806000806000611346610b5a565b61134e611172565b6113578861100a565b611360896112e8565b6113698a6108fd565b9450945094509450945091939590929450565b60008060030160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600080611414336108fd565b9050600081101561142457600080fd5b680100000000000000008102600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003016000828254019250508190555080600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825401925050819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a33373ffffffffffffffffffffffffffffffffffffffff167f4256a058fa2b123d727576d3d31e3a272db98ee5fe264e229610ce43dc849999826040518082815260200191505060405180910390a28091505090565b60008161159b8561100a565b10156115a657600080fd5b81600060030160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254039250508190555060006064600a84028161160857fe5b049050606460056a52b7d2dcc80cd2e4000000028161162357fe5b048161162d610b5a565b03108061163f575061163e85610faf565b5b1561164957600090505b6000818403905080600060030160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825401925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600082111561186e576000806002015411156117bd576002828161172857fe5b0491506000600201546801000000000000000083028161174457fe5b046000600401600082825401925050819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35b81600060010160008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a37fb90306ad06b2a6ff86ddc9327db583062895ef6540e62dc50add009db5b356eb826040518082815260200191505060405180910390a15b80925050509392505050565b80611884336112e8565b101561188f57600080fd5b60006064600a83028161189e57fe5b049050600060020154680100000000000000008202816118ba57fe5b046000600401600082825401925050819055508160006002016000828254039250508190555080600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254039250508190555081600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101600082825403925050819055506000600401548202600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8385036040518082815260200191505060405180910390a33373ffffffffffffffffffffffffffffffffffffffff167f85082129d87b2fe11527cb1b3b7a520aeb5aa6913f88a3d8757fe40d1db02fdd836040518082815260200191505060405180910390a25050565b80611aa33361100a565b1015611aae57600080fd5b6103e881611abb336112e8565b011015611ac757600080fd5b8060006002016000828254019250508190555080600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101600082825401925050819055506000600401548102600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301600082825401925050819055503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a33373ffffffffffffffffffffffffffffffffffffffff167febedb8b3c678666e7f36970bc8f57abf6d8fa2e828c0da91ea5b75bf68ed101a826040518082815260200191505060405180910390a25056fea265627a7a7231582010fefdb36b22576eebb4b65d626fbd3fbeee027f991ec28afb6f6aee246483b864736f6c63430005110032

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101415760003560e01c806370a08231116100b8578063a694fc3a1161007c578063a694fc3a14610707578063a9059cbb14610735578063af500ba31461079b578063d7455eb6146107f3578063dd62ed3e14610867578063e5225381146108df57610141565b806370a08231146105905780637676817a146105e8578063817b1cd21461063857806391c05b0b1461065657806395d89b411461068457610141565b806323b872dd1161010a57806323b872dd146103735780632e17de78146103f9578063313ce567146104275780634000aea01461044b57806342966c681461050657806354eaae461461053457610141565b806265318b1461014657806306fdde031461019e578063095ea7b314610221578063153a1f3e1461028757806318160ddd14610355575b600080fd5b6101886004803603602081101561015c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506108fd565b6040518082815260200191505060405180910390f35b6101a66109ac565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101e65780820151818401526020810190506101cb565b50505050905090810190601f1680156102135780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61026d6004803603604081101561023757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109e5565b604051808215151515815260200191505060405180910390f35b6103536004803603604081101561029d57600080fd5b81019080803590602001906401000000008111156102ba57600080fd5b8201836020820111156102cc57600080fd5b803590602001918460208302840111640100000000831117156102ee57600080fd5b90919293919293908035906020019064010000000081111561030f57600080fd5b82018360208201111561032157600080fd5b8035906020019184602083028401116401000000008311171561034357600080fd5b9091929391929390505050610add565b005b61035d610b5a565b6040518082815260200191505060405180910390f35b6103df6004803603606081101561038957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b66565b604051808215151515815260200191505060405180910390f35b6104256004803603602081101561040f57600080fd5b8101908080359060200190929190505050610c9e565b005b61042f610caa565b604051808260ff1660ff16815260200191505060405180910390f35b6104ec6004803603606081101561046157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001906401000000008111156104a857600080fd5b8201836020820111156104ba57600080fd5b803590602001918460018302840111640100000000831117156104dc57600080fd5b9091929391929390505050610caf565b604051808215151515815260200191505060405180910390f35b6105326004803603602081101561051c57600080fd5b8101908080359060200190929190505050610de2565b005b6105766004803603602081101561054a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610faf565b604051808215151515815260200191505060405180910390f35b6105d2600480360360208110156105a657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061100a565b6040518082815260200191505060405180910390f35b610636600480360360408110156105fe57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050611063565b005b610640611172565b6040518082815260200191505060405180910390f35b6106826004803603602081101561066c57600080fd5b810190808035906020019092919050505061117e565b005b61068c61128b565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156106cc5780820151818401526020810190506106b1565b50505050905090810190601f1680156106f95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6107336004803603602081101561071d57600080fd5b81019080803590602001909291905050506112c4565b005b6107816004803603604081101561074b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506112d0565b604051808215151515815260200191505060405180910390f35b6107dd600480360360208110156107b157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112e8565b6040518082815260200191505060405180910390f35b6108356004803603602081101561080957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611336565b604051808681526020018581526020018481526020018381526020018281526020019550505050505060405180910390f35b6108c96004803603604081101561087d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061137c565b6040518082815260200191505060405180910390f35b6108e7611408565b6040518082815260200191505060405180910390f35b600068010000000000000000600060030160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154600060030160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101546000600401540203816109a457fe5b049050919050565b6040518060400160405280600681526020017f436f62616c74000000000000000000000000000000000000000000000000000081525081565b600081600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b818190508484905014610aef57600080fd5b60008090505b84849050811015610b5357610b4533868684818110610b1057fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff16858585818110610b3957fe5b9050602002013561158f565b508080600101915050610af5565b5050505050565b60008060010154905090565b600081600060030160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610bf757600080fd5b81600060030160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550610c9284848461158f565b50600190509392505050565b610ca78161187a565b50565b601281565b600080610cbd33878761158f565b90506000863b905060008163ffffffff161115610dd4578673ffffffffffffffffffffffffffffffffffffffff16636be32e73338488886040518563ffffffff1660e01b8152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505095505050505050602060405180830381600087803b158015610d8f57600080fd5b505af1158015610da3573d6000803e3d6000fd5b505050506040513d6020811015610db957600080fd5b8101908080519060200190929190505050610dd357600080fd5b5b600192505050949350505050565b80610dec3361100a565b1015610df757600080fd5b80600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825403925050819055506000819050600080600201541115610efb5760028181610e6657fe5b04905060006002015468010000000000000000820281610e8257fe5b046000600401600082825401925050819055503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35b80600060010160008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a37fb90306ad06b2a6ff86ddc9327db583062895ef6540e62dc50add009db5b356eb816040518082815260200191505060405180910390a15050565b60008060030160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160009054906101000a900460ff169050919050565b6000611015826112e8565b600060030160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154039050919050565b6000800160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110bf57600080fd5b80600060030160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167fac5f37eb6828dbaeaab92129c6d94cc84993053d4ce0a52f25044ed7d1e8a9fa82604051808215151515815260200191505060405180910390a25050565b60008060020154905090565b600080600201541161118f57600080fd5b806111993361100a565b10156111a457600080fd5b80600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825403925050819055506000600201546801000000000000000082028161121057fe5b046000600401600082825401925050819055503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350565b6040518060400160405280600381526020017f434254000000000000000000000000000000000000000000000000000000000081525081565b6112cd81611a99565b50565b60006112dd33848461158f565b506001905092915050565b60008060030160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050919050565b6000806000806000611346610b5a565b61134e611172565b6113578861100a565b611360896112e8565b6113698a6108fd565b9450945094509450945091939590929450565b60008060030160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600080611414336108fd565b9050600081101561142457600080fd5b680100000000000000008102600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003016000828254019250508190555080600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825401925050819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a33373ffffffffffffffffffffffffffffffffffffffff167f4256a058fa2b123d727576d3d31e3a272db98ee5fe264e229610ce43dc849999826040518082815260200191505060405180910390a28091505090565b60008161159b8561100a565b10156115a657600080fd5b81600060030160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254039250508190555060006064600a84028161160857fe5b049050606460056a52b7d2dcc80cd2e4000000028161162357fe5b048161162d610b5a565b03108061163f575061163e85610faf565b5b1561164957600090505b6000818403905080600060030160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825401925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600082111561186e576000806002015411156117bd576002828161172857fe5b0491506000600201546801000000000000000083028161174457fe5b046000600401600082825401925050819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35b81600060010160008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a37fb90306ad06b2a6ff86ddc9327db583062895ef6540e62dc50add009db5b356eb826040518082815260200191505060405180910390a15b80925050509392505050565b80611884336112e8565b101561188f57600080fd5b60006064600a83028161189e57fe5b049050600060020154680100000000000000008202816118ba57fe5b046000600401600082825401925050819055508160006002016000828254039250508190555080600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254039250508190555081600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101600082825403925050819055506000600401548202600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8385036040518082815260200191505060405180910390a33373ffffffffffffffffffffffffffffffffffffffff167f85082129d87b2fe11527cb1b3b7a520aeb5aa6913f88a3d8757fe40d1db02fdd836040518082815260200191505060405180910390a25050565b80611aa33361100a565b1015611aae57600080fd5b6103e881611abb336112e8565b011015611ac757600080fd5b8060006002016000828254019250508190555080600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101600082825401925050819055506000600401548102600060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301600082825401925050819055503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a33373ffffffffffffffffffffffffffffffffffffffff167febedb8b3c678666e7f36970bc8f57abf6d8fa2e828c0da91ea5b75bf68ed101a826040518082815260200191505060405180910390a25056fea265627a7a7231582010fefdb36b22576eebb4b65d626fbd3fbeee027f991ec28afb6f6aee246483b864736f6c63430005110032

Deployed Bytecode Sourcemap

203:7319:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;203:7319:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5154:208;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5154:208:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;431:38;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;431:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2285:203;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2285:203:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3777:259;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3777:259:0;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;3777:259:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;3777:259:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;3777:259:0;;;;;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;3777:259:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;3777:259:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;3777:259:0;;;;;;;;;;;;:::i;:::-;;5063:86;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4041:266;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4041:266:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2210:70;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2210:70:0;;;;;;;;;;;;;;;;;:::i;:::-;;473:35;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2493:351;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2493:351:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;2493:351:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2493:351:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;2493:351:0;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1622:512;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1622:512:0;;;;;;;;;;;;;;;;;:::i;:::-;;5746:119;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5746:119:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5508:124;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5508:124:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4769:198;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4769:198:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4972:86;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4450:314;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4450:314:0;;;;;;;;;;;;;;;;;:::i;:::-;;512:37;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;512:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2139:66;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2139:66:0;;;;;;;;;;;;;;;;;:::i;:::-;;4312:133;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4312:133:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5637:104;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5637:104:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5870:272;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5870:272:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5367:136;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5367:136:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6563:383;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5154:208;5211:7;601:5;5303:4;:10;;:17;5314:5;5303:17;;;;;;;;;;;;;;;:30;;;5275:4;:10;;:17;5286:5;5275:17;;;;;;;;;;;;;;;:24;;;5247:4;:25;;;:52;5240:93;5232:125;;;;;;5225:132;;5154:208;;;:::o;431:38::-;;;;;;;;;;;;;;;;;;;:::o;2285:203::-;2355:4;2411:7;2366:4;:10;;:22;2377:10;2366:22;;;;;;;;;;;;;;;:32;;:42;2399:8;2366:42;;;;;;;;;;;;;;;:52;;;;2449:8;2428:39;;2437:10;2428:39;;;2459:7;2428:39;;;;;;;;;;;;;;;;;;2479:4;2472:11;;2285:203;;;;:::o;3777:259::-;3902:8;;:15;;3881:10;;:17;;:36;3873:45;;;;;;3928:9;3940:1;3928:13;;3923:109;3947:10;;:17;;3943:1;:21;3923:109;;;3977:49;3987:10;3999;;4010:1;3999:13;;;;;;;;;;;;;;;4014:8;;4023:1;4014:11;;;;;;;;;;;;;3977:9;:49::i;:::-;;3966:3;;;;;;;3923:109;;;;3777:259;;;;:::o;5063:86::-;5107:7;5128:4;:16;;;5121:23;;5063:86;:::o;4041:266::-;4126:4;4188:7;4145:4;:10;;:17;4156:5;4145:17;;;;;;;;;;;;;;;:27;;:39;4173:10;4145:39;;;;;;;;;;;;;;;;:50;;4137:59;;;;;;4244:7;4201:4;:10;;:17;4212:5;4201:17;;;;;;;;;;;;;;;:27;;:39;4229:10;4201:39;;;;;;;;;;;;;;;;:50;;;;;;;;;;;4256:30;4266:5;4273:3;4278:7;4256:9;:30::i;:::-;;4298:4;4291:11;;4041:266;;;;;:::o;2210:70::-;2258:17;2267:7;2258:8;:17::i;:::-;2210:70;:::o;473:35::-;506:2;473:35;:::o;2493:351::-;2588:4;2599:20;2622:35;2632:10;2644:3;2649:7;2622:9;:35::i;:::-;2599:58;;2662:12;2715:3;2703:16;2694:25;;2740:1;2732:5;:9;;;2728:96;;;2766:3;2757:27;;;2785:10;2797:12;2811:5;;2757:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;2757:60:0;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2757:60:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2757:60:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2757:60:0;;;;;;;;;;;;;;;;2749:69;;;;;;2728:96;2835:4;2828:11;;;;2493:351;;;;;;:::o;1622:512::-;1700:7;1675:21;1685:10;1675:9;:21::i;:::-;:32;;1667:41;;;;;;1747:7;1713:4;:10;;:22;1724:10;1713:22;;;;;;;;;;;;;;;:30;;;:41;;;;;;;;;;;1759:21;1783:7;1759:31;;1818:1;1799:4;:16;;;:20;1795:207;;;1844:1;1827:18;;;;;;;;;1919:4;:16;;;601:5;1880:13;:36;:55;;;;;;1851:4;:25;;;:84;;;;;;;;;;;1975:4;1946:50;;1955:10;1946:50;;;1982:13;1946:50;;;;;;;;;;;;;;;;;;1795:207;2028:13;2008:4;:16;;;:33;;;;;;;;;;;2080:3;2051:49;;2060:10;2051:49;;;2086:13;2051:49;;;;;;;;;;;;;;;;;;2110:19;2115:13;2110:19;;;;;;;;;;;;;;;;;;1622:512;;:::o;5746:119::-;5809:4;5827;:10;;:17;5838:5;5827:17;;;;;;;;;;;;;;;:33;;;;;;;;;;;;5820:40;;5746:119;;;:::o;5508:124::-;5563:7;5612:15;5621:5;5612:8;:15::i;:::-;5584:4;:10;;:17;5595:5;5584:17;;;;;;;;;;;;;;;:25;;;:43;5577:50;;5508:124;;;:::o;4769:198::-;4856:4;:17;;;;;;;;;;;;4842:31;;:10;:31;;;4834:40;;;;;;4915:7;4879:4;:10;;:17;4890:5;4879:17;;;;;;;;;;;;;;;:33;;;:43;;;;;;;;;;;;;;;;;;4947:5;4932:30;;;4954:7;4932:30;;;;;;;;;;;;;;;;;;;;;;4769:198;;:::o;4972:86::-;5016:7;5037:4;:16;;;5030:23;;4972:86;:::o;4450:314::-;4528:1;4509:4;:16;;;:20;4501:29;;;;;;4568:7;4543:21;4553:10;4543:9;:21::i;:::-;:32;;4535:41;;;;;;4615:7;4581:4;:10;;:22;4592:10;4581:22;;;;;;;;;;;;;;;:30;;;:41;;;;;;;;;;;4689:4;:16;;;601:5;4656:7;:30;:49;;;;;;4627:4;:25;;;:78;;;;;;;;;;;4744:4;4715:44;;4724:10;4715:44;;;4751:7;4715:44;;;;;;;;;;;;;;;;;;4450:314;:::o;512:37::-;;;;;;;;;;;;;;;;;;;:::o;2139:66::-;2185:15;2192:7;2185:6;:15::i;:::-;2139:66;:::o;4312:133::-;4378:4;4389:35;4399:10;4411:3;4416:7;4389:9;:35::i;:::-;;4436:4;4429:11;;4312:133;;;;:::o;5637:104::-;5691:7;5712:4;:10;;:17;5723:5;5712:17;;;;;;;;;;;;;;;:24;;;5705:31;;5637:104;;;:::o;5870:272::-;5923:24;5949:25;5976:19;5997:18;6017:21;6053:13;:11;:13::i;:::-;6068;:11;:13::i;:::-;6083:16;6093:5;6083:9;:16::i;:::-;6101:15;6110:5;6101:8;:15::i;:::-;6118:18;6130:5;6118:11;:18::i;:::-;6045:92;;;;;;;;;;5870:272;;;;;;;:::o;5367:136::-;5440:7;5461:4;:10;;:17;5472:5;5461:17;;;;;;;;;;;;;;;:27;;:37;5489:8;5461:37;;;;;;;;;;;;;;;;5454:44;;5367:136;;;;:::o;6563:383::-;6600:7;6614:18;6635:23;6647:10;6635:11;:23::i;:::-;6614:44;;6685:1;6671:10;:15;;6663:24;;;;;;601:5;6738:10;:33;6692:4;:10;;:22;6703:10;6692:22;;;;;;;;;;;;;;;:35;;;:80;;;;;;;;;;;6811:10;6777:4;:10;;:22;6788:10;6777:22;;;;;;;;;;;;;;;:30;;;:44;;;;;;;;;;;6855:10;6831:47;;6848:4;6831:47;;;6867:10;6831:47;;;;;;;;;;;;;;;;;;6896:10;6888:31;;;6908:10;6888:31;;;;;;;;;;;;;;;;;;6931:10;6924:17;;;6563:383;:::o;2849:923::-;2931:7;2973;2953:16;2963:5;2953:9;:16::i;:::-;:27;;2945:36;;;;;;3015:7;2986:4;:10;;:17;2997:5;2986:17;;;;;;;;;;;;;;;:25;;;:36;;;;;;;;;;;3027:21;3076:3;265:2;3051:7;:22;:28;;;;;;3027:52;;3167:3;374:1;313:4;3122:42;:48;;;;;;3106:13;3090;:11;:13::i;:::-;:29;:80;:108;;;;3174:24;3192:5;3174:17;:24::i;:::-;3090:108;3086:143;;;3222:1;3206:17;;3086:143;3235:20;3268:13;3258:7;:23;3235:46;;3313:12;3286:4;:10;;:15;3297:3;3286:15;;;;;;;;;;;;;;;:23;;;:39;;;;;;;;;;;3353:3;3337:34;;3346:5;3337:34;;;3358:12;3337:34;;;;;;;;;;;;;;;;;;3396:1;3380:13;:17;3376:366;;;3428:1;3409:4;:16;;;:20;3405:206;;;3455:1;3438:18;;;;;;;;;3531:4;:16;;;601:5;3492:13;:36;:55;;;;;;3463:4;:25;;;:84;;;;;;;;;;;3583:4;3559:45;;3568:5;3559:45;;;3590:13;3559:45;;;;;;;;;;;;;;;;;;3405:206;3638:13;3618:4;:16;;;:33;;;;;;;;;;;3686:3;3662:44;;3671:5;3662:44;;;3692:13;3662:44;;;;;;;;;;;;;;;;;;3717:19;3722:13;3717:19;;;;;;;;;;;;;;;;;;3376:366;3755:12;3748:19;;;;2849:923;;;;;:::o;6951:564::-;7032:7;7008:20;7017:10;7008:8;:20::i;:::-;:31;;7000:40;;;;;;7045:21;7094:3;265:2;7069:7;:22;:28;;;;;;7045:52;;7170:4;:16;;;601:5;7131:13;:36;:55;;;;;;7102:4;:25;;;:84;;;;;;;;;;;7211:7;7191:4;:16;;;:27;;;;;;;;;;;7257:13;7223:4;:10;;:22;7234:10;7223:22;;;;;;;;;;;;;;;:30;;;:47;;;;;;;;;;;7308:7;7275:4;:10;;:22;7286:10;7275:22;;;;;;;;;;;;;;;:29;;;:40;;;;;;;;;;;7376:4;:25;;;7366:7;:35;7320:4;:10;;:22;7331:10;7320:22;;;;;;;;;;;;;;;:35;;;:82;;;;;;;;;;;7436:10;7412:60;;7429:4;7412:60;;;7458:13;7448:7;:23;7412:60;;;;;;;;;;;;;;;;;;7490:10;7482:28;;;7502:7;7482:28;;;;;;;;;;;;;;;;;;6951:564;;:::o;6147:411::-;6227:7;6202:21;6212:10;6202:9;:21::i;:::-;:32;;6194:41;;;;;;423:4;6271:7;6248:20;6257:10;6248:8;:20::i;:::-;:30;:50;;6240:59;;;;;;6324:7;6304:4;:16;;;:27;;;;;;;;;;;6369:7;6336:4;:10;;:22;6347:10;6336:22;;;;;;;;;;;;;;;:29;;;:40;;;;;;;;;;;6437:4;:25;;;6427:7;:35;6381:4;:10;;:22;6392:10;6381:22;;;;;;;;;;;;;;;:35;;;:82;;;;;;;;;;;6502:4;6473:44;;6482:10;6473:44;;;6509:7;6473:44;;;;;;;;;;;;;;;;;;6533:10;6527:26;;;6545:7;6527:26;;;;;;;;;;;;;;;;;;6147:411;:::o

Swarm Source

bzzr://10fefdb36b22576eebb4b65d626fbd3fbeee027f991ec28afb6f6aee246483b8

Block Transaction Gas Used Reward
view all blocks produced
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
View All Validatorset

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

OVERVIEW

CBT is a deflationary token whereby on every transfer, 5% of the transfer value gets burned permanently and another 5% is saved into the smart contract as income. The 5% burn increases the value of each CBT token, rewarding the token holders and stakers.

Loading...
Loading

Validator Index Block Amount
View All Withdrawals

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

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