ETH Price: $3,183.87 (+1.61%)
Gas: 7 Gwei

Contract

0x256845e721C0c46d54E6afBD4FA3B52CB72353EA
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve201211392024-06-18 20:50:4725 days ago1718743847IN
UniDollar: UNIUSD Token
0 ETH0.00020967.92897246
Approve201211272024-06-18 20:48:2325 days ago1718743703IN
UniDollar: UNIUSD Token
0 ETH0.000337877.29193843
Approve200589532024-06-10 4:10:2333 days ago1717992623IN
UniDollar: UNIUSD Token
0 ETH0.000138462.98826597
Transfer200587822024-06-10 3:35:4733 days ago1717990547IN
UniDollar: UNIUSD Token
0 ETH0.000265264.4825648
Approve198674902024-05-14 9:54:5960 days ago1715680499IN
UniDollar: UNIUSD Token
0 ETH0.000299186.45702541
Approve198653132024-05-14 2:37:1160 days ago1715654231IN
UniDollar: UNIUSD Token
0 ETH0.000180533.89620376
Approve198246782024-05-08 10:14:2366 days ago1715163263IN
UniDollar: UNIUSD Token
0 ETH0.000218124.72844812
Approve196754122024-04-17 13:12:3587 days ago1713359555IN
UniDollar: UNIUSD Token
0 ETH0.0019446141.96866243
Approve190251332024-01-17 7:31:59178 days ago1705476719IN
UniDollar: UNIUSD Token
0 ETH0.0015797434.09388457
Approve185955062023-11-18 1:36:35238 days ago1700271395IN
UniDollar: UNIUSD Token
0 ETH0.0009939321.45116725
Approve183962852023-10-21 4:24:59266 days ago1697862299IN
UniDollar: UNIUSD Token
0 ETH0.000346757.48364236
Approve183585302023-10-15 21:42:23272 days ago1697406143IN
UniDollar: UNIUSD Token
0 ETH0.000232235.04211833
Approve182889122023-10-06 3:55:11281 days ago1696564511IN
UniDollar: UNIUSD Token
0 ETH0.000270235.85799397
Approve179186272023-08-15 7:03:11333 days ago1692082991IN
UniDollar: UNIUSD Token
0 ETH0.0007986217.33461376
Transfer179132052023-08-14 12:52:11334 days ago1692017531IN
UniDollar: UNIUSD Token
0 ETH0.0010645817.98611367
Collect179131802023-08-14 12:47:11334 days ago1692017231IN
UniDollar: UNIUSD Token
0 ETH0.0008595621.88982031
Unstake179131772023-08-14 12:46:35334 days ago1692017195IN
UniDollar: UNIUSD Token
0 ETH0.0010381422.66988341
Transfer178952882023-08-12 0:44:11336 days ago1691801051IN
UniDollar: UNIUSD Token
0 ETH0.0007561712.77563688
Approve177264022023-07-19 9:39:47360 days ago1689759587IN
UniDollar: UNIUSD Token
0 ETH0.0010423322.46662375
Approve177255682023-07-19 6:51:23360 days ago1689749483IN
UniDollar: UNIUSD Token
0 ETH0.0004122815.78956879
Approve177255642023-07-19 6:50:35360 days ago1689749435IN
UniDollar: UNIUSD Token
0 ETH0.0003927916.29098317
Approve177225342023-07-18 20:37:59361 days ago1689712679IN
UniDollar: UNIUSD Token
0 ETH0.0009762740.49097739
Approve172468402023-05-12 22:11:59428 days ago1683929519IN
UniDollar: UNIUSD Token
0 ETH0.0014440159.89048191
Approve170978032023-04-21 22:45:35449 days ago1682117135IN
UniDollar: UNIUSD Token
0 ETH0.0009674740.12574612
Approve170095062023-04-09 8:16:11461 days ago1681028171IN
UniDollar: UNIUSD Token
0 ETH0.0004996120.72161347
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
UniDollar

Compiler Version
v0.5.13+commit.5b0b510c

Optimization Enabled:
Yes with 200 runs

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

pragma solidity ^0.5.13;

// UniDollar is the first experimental PoL+PoS token (Proof of Liquidity) + (Proof of Stake)
// https://t.me/unidollar

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

contract UniDollar {

	uint256 constant private FLOAT_SCALAR = 2**64;
	uint256 constant private INITIAL_SUPPLY = 125000000 * (10 ** 18); // 125 Million
	uint256 constant private XFER_FEE = 2; // 2% per tx
	uint256 constant private MIN_STAKE_AMOUNT = 2e22; // 20,000 Tokens Needed

	string constant public name = "UniDollar";
	string constant public symbol = "UNIUSD";
	uint8 constant public decimals = 18;

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

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


	event Transfer(address indexed from, address indexed to, uint256 tokens);
	event Approval(address indexed owner, address indexed spender, uint256 tokens);
	
	event Stake(address indexed owner, uint256 tokens);
	event Unstake(address indexed owner, uint256 tokens);
	event Collect(address indexed owner, uint256 tokens);
	event Tax(uint256 tokens);


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

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

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

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

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

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

	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 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 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 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 totalSupply() public view returns (uint256) {
		return info.totalSupply;
	}

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

	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 dividendsOf(address _user) public view returns (uint256) {
		return uint256(int256(info.scaledPayoutPerToken * info.users[_user].staked) - info.users[_user].scaledPayout) / FLOAT_SCALAR;
	}

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

	function allInfoFor(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 _transfer(address _from, address _to, uint256 _tokens) internal returns (uint256) {
		require(balanceOf(_from) >= _tokens);
		info.users[_from].balance -= _tokens;
		uint256 _taxAmount = _tokens * XFER_FEE / 100;
		uint256 _transferred = _tokens - _taxAmount;
        if (info.totalStaked > 0) {
            info.users[_to].balance += _transferred;
            emit Transfer(_from, _to, _transferred);
            info.scaledPayoutPerToken += _taxAmount * FLOAT_SCALAR / info.totalStaked;
            emit Transfer(_from, address(this), _taxAmount);
            emit Tax(_taxAmount);
            return _transferred;
        } else {
            info.users[_to].balance += _tokens;
            emit Transfer(_from, _to, _tokens);
            return _tokens;
        }
    }

	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 _unstake(uint256 _amount) internal {
		require(stakedOf(msg.sender) >= _amount);
		uint256 _taxAmount = _amount * XFER_FEE / 100;
		info.scaledPayoutPerToken += _taxAmount * FLOAT_SCALAR / info.totalStaked;
		info.totalStaked -= _amount;
		info.users[msg.sender].balance -= _taxAmount;
		info.users[msg.sender].staked -= _amount;
		info.users[msg.sender].scaledPayout -= int256(_amount * info.scaledPayoutPerToken);
		emit Transfer(address(this), msg.sender, _amount - _taxAmount);
		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":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":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"Stake","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"Tax","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"}],"name":"allInfoFor","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"},{"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":[],"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":"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":[],"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"}]

608060405234801561001057600080fd5b50600480546001600160a01b031916339081179091556a6765c793fa10079d000000600081815582815260026020908152604080832084905580519384525191927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a3610d2c8061008b6000396000f3fe608060405234801561001057600080fd5b50600436106101205760003560e01c806357f6b812116100ad578063a694fc3a11610071578063a694fc3a14610480578063a9059cbb1461049d578063af500ba3146104c9578063dd62ed3e146104ef578063e52253811461051d57610120565b806357f6b812146103dc57806370a082311461042d578063817b1cd21461045357806391c05b0b1461045b57806395d89b411461047857610120565b806318160ddd116100f457806318160ddd146102de57806323b872dd146102e65780632e17de781461031c578063313ce567146103395780634000aea01461035757610120565b806265318b1461012557806306fdde031461015d578063095ea7b3146101da578063153a1f3e1461021a575b600080fd5b61014b6004803603602081101561013b57600080fd5b50356001600160a01b0316610525565b60408051918252519081900360200190f35b610165610559565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561019f578181015183820152602001610187565b50505050905090810190601f1680156101cc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610206600480360360408110156101f057600080fd5b506001600160a01b03813516906020013561057e565b604080519115158252519081900360200190f35b6102dc6004803603604081101561023057600080fd5b81019060208101813564010000000081111561024b57600080fd5b82018360208201111561025d57600080fd5b8035906020019184602083028401116401000000008311171561027f57600080fd5b91939092909160208101903564010000000081111561029d57600080fd5b8201836020820111156102af57600080fd5b803590602001918460208302840111640100000000831117156102d157600080fd5b5090925090506105e6565b005b61014b610645565b610206600480360360608110156102fc57600080fd5b506001600160a01b0381358116916020810135909116906040013561064b565b6102dc6004803603602081101561033257600080fd5b50356106c1565b6103416106cd565b6040805160ff9092168252519081900360200190f35b6102066004803603606081101561036d57600080fd5b6001600160a01b038235169160208101359181019060608101604082013564010000000081111561039d57600080fd5b8201836020820111156103af57600080fd5b803590602001918460018302840111640100000000831117156103d157600080fd5b5090925090506106d2565b610402600480360360208110156103f257600080fd5b50356001600160a01b03166107b9565b6040805195865260208601949094528484019290925260608401526080830152519081900360a00190f35b61014b6004803603602081101561044357600080fd5b50356001600160a01b03166107fe565b61014b61082a565b6102dc6004803603602081101561047157600080fd5b5035610830565b6101656108ae565b6102dc6004803603602081101561049657600080fd5b50356108d0565b610206600480360360408110156104b357600080fd5b506001600160a01b0381351690602001356108d9565b61014b600480360360208110156104df57600080fd5b50356001600160a01b03166108f0565b61014b6004803603604081101561050557600080fd5b506001600160a01b038135811691602001351661090e565b61014b61093a565b6001600160a01b031660009081526002602052604090206003808201546001909201549054600160401b9102919091030490565b604051806040016040528060098152602001682ab734a237b63630b960b91b81525081565b3360008181526002602081815260408084206001600160a01b0388168086529301825280842086905580518681529051939492937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b8281146105f257600080fd5b60005b8381101561063e576106353386868481811061060d57fe5b905060200201356001600160a01b031685858581811061062957fe5b905060200201356109cc565b506001016105f5565b5050505050565b60005490565b6001600160a01b0383166000908152600260208181526040808420338552909201905281205482111561067d57600080fd5b6001600160a01b038416600090815260026020818152604080842033855290920190529020805483900390556106b48484846109cc565b50600190505b9392505050565b6106ca81610b3b565b50565b601281565b6000806106e03387876109cc565b9050853b63ffffffff8116156107ac57604051636be32e7360e01b8152336004820181815260248301859052606060448401908152606484018890526001600160a01b038b1693636be32e73939287928b928b929190608401848480828437600081840152601f19601f82011690508083019250505095505050505050602060405180830381600087803b15801561077757600080fd5b505af115801561078b573d6000803e3d6000fd5b505050506040513d60208110156107a157600080fd5b50516107ac57600080fd5b5060019695505050505050565b60008060008060006107c9610645565b6107d161082a565b6107da886107fe565b6107e3896108f0565b6107ec8a610525565b939a9299509097509550909350915050565b6000610809826108f0565b6001600160a01b038316600090815260026020526040902054039050919050565b60015490565b60015461083c57600080fd5b80610846336107fe565b101561085157600080fd5b33600090815260026020526040902080548290039055600154600160401b82028161087857fe5b600380549290910491909101905560408051828152905130913391600080516020610cd88339815191529181900360200190a350565b604051806040016040528060068152602001651553925554d160d21b81525081565b6106ca81610c14565b60006108e63384846109cc565b5060019392505050565b6001600160a01b031660009081526002602052604090206001015490565b6001600160a01b0391821660009081526002602081815260408084209490951683529201909152205490565b60008061094633610525565b905033600081815260026020908152604091829020600381018054600160401b8702019055805485019055815184815291513092600080516020610cd883398151915292908290030190a360408051828152905133917f4256a058fa2b123d727576d3d31e3a272db98ee5fe264e229610ce43dc849999919081900360200190a2905090565b6000816109d8856107fe565b10156109e357600080fd5b6001600160a01b0384166000908152600260208190526040822080548590039055606490840260015491900491508184039015610aea576001600160a01b038086166000818152600260209081526040918290208054860190558151858152915192938a1692600080516020610cd88339815191529281900390910190a3600154600160401b830281610a7257fe5b600380549290910491909101905560408051838152905130916001600160a01b03891691600080516020610cd88339815191529181900360200190a36040805183815290517f1da9a0060303acd94a78d52073d1a4429cf474a9a26cee91c84e7d28abb2baaa9181900360200190a191506106ba9050565b6001600160a01b038086166000818152600260209081526040918290208054890190558151888152915192938a1692600080516020610cd88339815191529281900390910190a383925050506106ba565b80610b45336108f0565b1015610b5057600080fd5b6001546064600283020490600160401b820281610b6957fe5b60038054929091049091018155600180548490038155336000818152600260209081526040918290208054879003815593840180548890039055845493909401805493870290930390925581518486038152915190923092600080516020610cd8833981519152929081900390910190a360408051838152905133917f85082129d87b2fe11527cb1b3b7a520aeb5aa6913f88a3d8757fe40d1db02fdd919081900360200190a25050565b80610c1e336107fe565b1015610c2957600080fd5b69043c33c193756480000081610c3e336108f0565b011015610c4a57600080fd5b6001805482018155336000818152600260209081526040918290209384018054860190556003805494018054948602909401909355805184815290513093600080516020610cd8833981519152928290030190a360408051828152905133917febedb8b3c678666e7f36970bc8f57abf6d8fa2e828c0da91ea5b75bf68ed101a919081900360200190a25056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa265627a7a723158207fc43fb0eabc736683468280ec6a260e2f6713a6b39ffd8b62d334ff210b08ec64736f6c634300050d0032

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101205760003560e01c806357f6b812116100ad578063a694fc3a11610071578063a694fc3a14610480578063a9059cbb1461049d578063af500ba3146104c9578063dd62ed3e146104ef578063e52253811461051d57610120565b806357f6b812146103dc57806370a082311461042d578063817b1cd21461045357806391c05b0b1461045b57806395d89b411461047857610120565b806318160ddd116100f457806318160ddd146102de57806323b872dd146102e65780632e17de781461031c578063313ce567146103395780634000aea01461035757610120565b806265318b1461012557806306fdde031461015d578063095ea7b3146101da578063153a1f3e1461021a575b600080fd5b61014b6004803603602081101561013b57600080fd5b50356001600160a01b0316610525565b60408051918252519081900360200190f35b610165610559565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561019f578181015183820152602001610187565b50505050905090810190601f1680156101cc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610206600480360360408110156101f057600080fd5b506001600160a01b03813516906020013561057e565b604080519115158252519081900360200190f35b6102dc6004803603604081101561023057600080fd5b81019060208101813564010000000081111561024b57600080fd5b82018360208201111561025d57600080fd5b8035906020019184602083028401116401000000008311171561027f57600080fd5b91939092909160208101903564010000000081111561029d57600080fd5b8201836020820111156102af57600080fd5b803590602001918460208302840111640100000000831117156102d157600080fd5b5090925090506105e6565b005b61014b610645565b610206600480360360608110156102fc57600080fd5b506001600160a01b0381358116916020810135909116906040013561064b565b6102dc6004803603602081101561033257600080fd5b50356106c1565b6103416106cd565b6040805160ff9092168252519081900360200190f35b6102066004803603606081101561036d57600080fd5b6001600160a01b038235169160208101359181019060608101604082013564010000000081111561039d57600080fd5b8201836020820111156103af57600080fd5b803590602001918460018302840111640100000000831117156103d157600080fd5b5090925090506106d2565b610402600480360360208110156103f257600080fd5b50356001600160a01b03166107b9565b6040805195865260208601949094528484019290925260608401526080830152519081900360a00190f35b61014b6004803603602081101561044357600080fd5b50356001600160a01b03166107fe565b61014b61082a565b6102dc6004803603602081101561047157600080fd5b5035610830565b6101656108ae565b6102dc6004803603602081101561049657600080fd5b50356108d0565b610206600480360360408110156104b357600080fd5b506001600160a01b0381351690602001356108d9565b61014b600480360360208110156104df57600080fd5b50356001600160a01b03166108f0565b61014b6004803603604081101561050557600080fd5b506001600160a01b038135811691602001351661090e565b61014b61093a565b6001600160a01b031660009081526002602052604090206003808201546001909201549054600160401b9102919091030490565b604051806040016040528060098152602001682ab734a237b63630b960b91b81525081565b3360008181526002602081815260408084206001600160a01b0388168086529301825280842086905580518681529051939492937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b8281146105f257600080fd5b60005b8381101561063e576106353386868481811061060d57fe5b905060200201356001600160a01b031685858581811061062957fe5b905060200201356109cc565b506001016105f5565b5050505050565b60005490565b6001600160a01b0383166000908152600260208181526040808420338552909201905281205482111561067d57600080fd5b6001600160a01b038416600090815260026020818152604080842033855290920190529020805483900390556106b48484846109cc565b50600190505b9392505050565b6106ca81610b3b565b50565b601281565b6000806106e03387876109cc565b9050853b63ffffffff8116156107ac57604051636be32e7360e01b8152336004820181815260248301859052606060448401908152606484018890526001600160a01b038b1693636be32e73939287928b928b929190608401848480828437600081840152601f19601f82011690508083019250505095505050505050602060405180830381600087803b15801561077757600080fd5b505af115801561078b573d6000803e3d6000fd5b505050506040513d60208110156107a157600080fd5b50516107ac57600080fd5b5060019695505050505050565b60008060008060006107c9610645565b6107d161082a565b6107da886107fe565b6107e3896108f0565b6107ec8a610525565b939a9299509097509550909350915050565b6000610809826108f0565b6001600160a01b038316600090815260026020526040902054039050919050565b60015490565b60015461083c57600080fd5b80610846336107fe565b101561085157600080fd5b33600090815260026020526040902080548290039055600154600160401b82028161087857fe5b600380549290910491909101905560408051828152905130913391600080516020610cd88339815191529181900360200190a350565b604051806040016040528060068152602001651553925554d160d21b81525081565b6106ca81610c14565b60006108e63384846109cc565b5060019392505050565b6001600160a01b031660009081526002602052604090206001015490565b6001600160a01b0391821660009081526002602081815260408084209490951683529201909152205490565b60008061094633610525565b905033600081815260026020908152604091829020600381018054600160401b8702019055805485019055815184815291513092600080516020610cd883398151915292908290030190a360408051828152905133917f4256a058fa2b123d727576d3d31e3a272db98ee5fe264e229610ce43dc849999919081900360200190a2905090565b6000816109d8856107fe565b10156109e357600080fd5b6001600160a01b0384166000908152600260208190526040822080548590039055606490840260015491900491508184039015610aea576001600160a01b038086166000818152600260209081526040918290208054860190558151858152915192938a1692600080516020610cd88339815191529281900390910190a3600154600160401b830281610a7257fe5b600380549290910491909101905560408051838152905130916001600160a01b03891691600080516020610cd88339815191529181900360200190a36040805183815290517f1da9a0060303acd94a78d52073d1a4429cf474a9a26cee91c84e7d28abb2baaa9181900360200190a191506106ba9050565b6001600160a01b038086166000818152600260209081526040918290208054890190558151888152915192938a1692600080516020610cd88339815191529281900390910190a383925050506106ba565b80610b45336108f0565b1015610b5057600080fd5b6001546064600283020490600160401b820281610b6957fe5b60038054929091049091018155600180548490038155336000818152600260209081526040918290208054879003815593840180548890039055845493909401805493870290930390925581518486038152915190923092600080516020610cd8833981519152929081900390910190a360408051838152905133917f85082129d87b2fe11527cb1b3b7a520aeb5aa6913f88a3d8757fe40d1db02fdd919081900360200190a25050565b80610c1e336107fe565b1015610c2957600080fd5b69043c33c193756480000081610c3e336108f0565b011015610c4a57600080fd5b6001805482018155336000818152600260209081526040918290209384018054860190556003805494018054948602909401909355805184815290513093600080516020610cd8833981519152928290030190a360408051828152905133917febedb8b3c678666e7f36970bc8f57abf6d8fa2e828c0da91ea5b75bf68ed101a919081900360200190a25056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa265627a7a723158207fc43fb0eabc736683468280ec6a260e2f6713a6b39ffd8b62d334ff210b08ec64736f6c634300050d0032

Deployed Bytecode Sourcemap

282:6189:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;282:6189:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4080:200;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4080:200:0;-1:-1:-1;;;;;4080:200:0;;:::i;:::-;;;;;;;;;;;;;;;;571:41;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;571:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2559:203;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;2559:203:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;3394:259;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3394:259:0;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;3394:259:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;3394: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;3394:259:0;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;3394:259:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;3394: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;-1:-1;3394:259:0;;-1:-1:-1;3394:259:0;-1:-1:-1;3394:259:0;:::i;:::-;;3660:86;;;:::i;2767:266::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;2767:266:0;;;;;;;;;;;;;;;;;:::i;1655:70::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1655:70:0;;:::i;660:35::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3038:351;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;3038:351:0;;;;;;;;;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;3038:351:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;3038: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;-1:-1;3038:351:0;;-1:-1:-1;3038:351:0;-1:-1:-1;3038:351:0;:::i;4426:275::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4426:275:0;-1:-1:-1;;;;;4426:275:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3842:124;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3842:124:0;-1:-1:-1;;;;;3842:124:0;;:::i;3751:86::-;;;:::i;2110:306::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2110:306:0;;:::i;616:40::-;;;:::i;1584:66::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1584:66:0;;:::i;2421:133::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;2421:133:0;;;;;;;;:::i;3971:104::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3971:104:0;-1:-1:-1;;;;;3971:104:0;;:::i;4285:136::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;4285:136:0;;;;;;;;;;:::i;1730:375::-;;;:::i;4080:200::-;-1:-1:-1;;;;;4229:17:0;4137:7;4229:17;;;:10;:17;;;;;:30;;;;;4201:24;;;;;4173:25;;-1:-1:-1;;;4173:52:0;;4166:93;;;;4158:117;;4080:200::o;571:41::-;;;;;;;;;;;;;;-1:-1:-1;;;571:41:0;;;;:::o;2559:203::-;2651:10;2629:4;2640:22;;;:10;:22;;;;;;;;-1:-1:-1;;;;;2640:42:0;;;;;:32;;:42;;;;;:52;;;2702:39;;;;;;;2629:4;;2640:42;;2702:39;;;;;;;;;;;-1:-1:-1;2753:4:0;2559:203;;;;:::o;3394:259::-;3498:36;;;3490:45;;;;;;3545:9;3540:109;3560:21;;;3540:109;;;3594:49;3604:10;3616;;3627:1;3616:13;;;;;;;;;;;;;-1:-1:-1;;;;;3616:13:0;3631:8;;3640:1;3631:11;;;;;;;;;;;;;3594:9;:49::i;:::-;-1:-1:-1;3583:3:0;;3540:109;;;;3394:259;;;;:::o;3660:86::-;3704:7;3725:16;3660:86;:::o;2767:266::-;-1:-1:-1;;;;;2871:17:0;;2852:4;2871:17;;;:10;:17;;;;;;;;2899:10;2871:39;;:27;;;:39;;;;;:50;-1:-1:-1;2871:50:0;2863:59;;;;;;-1:-1:-1;;;;;2927:17:0;;:4;:17;;;:10;:17;;;;;;;;2955:10;2927:39;;:27;;;:39;;;;:50;;;;;;;2982:30;2938:5;2999:3;2970:7;2982:9;:30::i;:::-;;3024:4;3017:11;;2767:266;;;;;;:::o;1655:70::-;1703:17;1712:7;1703:8;:17::i;:::-;1655:70;:::o;660:35::-;693:2;660:35;:::o;3038:351::-;3133:4;3144:20;3167:35;3177:10;3189:3;3194:7;3167:9;:35::i;:::-;3144:58;-1:-1:-1;3248:16:0;;3277:9;;;;3273:96;;3302:60;;-1:-1:-1;;;3302:60:0;;3330:10;3302:60;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3302:27:0;;;;;3330:10;3342:12;;3356:5;;;;3302:60;;;;3356:5;;;;3302:60;1:33:-1;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;;3302:60:0;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3302:60:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3302:60:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3302:60:0;3294:69;;;;;;-1:-1:-1;3380:4:0;;3038:351;-1:-1:-1;;;;;;3038:351:0:o;4426:275::-;4482:24;4508:25;4535:19;4556:18;4576:21;4612:13;:11;:13::i;:::-;4627;:11;:13::i;:::-;4642:16;4652:5;4642:9;:16::i;:::-;4660:15;4669:5;4660:8;:15::i;:::-;4677:18;4689:5;4677:11;:18::i;:::-;4604:92;;;;-1:-1:-1;4604:92:0;;-1:-1:-1;4604:92:0;-1:-1:-1;4604:92:0;;-1:-1:-1;4426:275:0;-1:-1:-1;;4426:275:0:o;3842:124::-;3897:7;3946:15;3955:5;3946:8;:15::i;:::-;-1:-1:-1;;;;;3918:17:0;;:4;:17;;;:10;:17;;;;;:25;:43;;-1:-1:-1;3842:124:0;;;:::o;3751:86::-;3816:16;;3751:86;:::o;2110:306::-;2169:16;;2161:29;;;;;;2228:7;2203:21;2213:10;2203:9;:21::i;:::-;:32;;2195:41;;;;;;2252:10;2241:4;:22;;;:10;:22;;;;;:41;;;;;;;-1:-1:-1;2341:16:0;-1:-1:-1;;;2316:22:0;;2341:16;2316:41;;;;2287:25;:70;;2316:41;;;;2287:70;;;;;;2367:44;;;;;;;;2396:4;;2376:10;;-1:-1:-1;;;;;;;;;;;2367:44:0;;;;;;;;2110:306;:::o;616:40::-;;;;;;;;;;;;;;-1:-1:-1;;;616:40:0;;;;:::o;1584:66::-;1630:15;1637:7;1630:6;:15::i;2421:133::-;2487:4;2498:35;2508:10;2520:3;2525:7;2498:9;:35::i;:::-;-1:-1:-1;2545:4:0;;2421:133;-1:-1:-1;;;2421:133:0:o;3971:104::-;-1:-1:-1;;;;;4046:17:0;4025:7;4046:17;;;:10;:17;;;;;:24;;;;3971:104::o;4285:136::-;-1:-1:-1;;;;;4379:17:0;;;4358:7;4379:17;;;:10;:17;;;;;;;;:37;;;;;;:27;;:37;;;;;;4285:136::o;1730:375::-;1767:7;1781:18;1802:23;1814:10;1802:11;:23::i;:::-;1781:44;-1:-1:-1;1870:10:0;1859:4;:22;;;:10;:22;;;;;;;;;:35;;;:72;;-1:-1:-1;;;1905:25:0;;1859:72;;;1936:44;;;;;;1990:47;;;;;;;2007:4;;-1:-1:-1;;;;;;;;;;;1990:47:0;;;;;;;;2047:31;;;;;;;;2055:10;;2047:31;;;;;;;;;;2090:10;-1:-1:-1;1730:375:0;:::o;4708:799::-;4790:7;4832;4812:16;4822:5;4812:9;:16::i;:::-;:27;;4804:36;;;;;;-1:-1:-1;;;;;4845:17:0;;:4;:17;;;:10;:17;;;;;;;:36;;;;;;;4928:3;;4907:18;;4994:16;;4907:24;;;;-1:-1:-1;4959:20:0;;;;4994;4990:510;;-1:-1:-1;;;;;5031:15:0;;;:4;:15;;;:10;:15;;;;;;;;;:39;;;;;;5090:34;;;;;;;5031:15;;5090:34;;;-1:-1:-1;;;;;;;;;;;5090:34:0;;;;;;;;;5196:16;;-1:-1:-1;;;5168:25:0;;5196:16;5168:44;;;;5139:25;:73;;5168:44;;;;5139:73;;;;;;5232:42;;;;;;;;5256:4;;-1:-1:-1;;;;;5232:42:0;;;-1:-1:-1;;;;;;;;;;;5232:42:0;;;;;;;;5294:15;;;;;;;;;;;;;;;;;5331:12;-1:-1:-1;5324:19:0;;-1:-1:-1;5324:19:0;4990:510;-1:-1:-1;;;;;5376:15:0;;;:4;:15;;;:10;:15;;;;;;;;;:34;;;;;;5430:29;;;;;;;5376:15;;5430:29;;;-1:-1:-1;;;;;;;;;;;5430:29:0;;;;;;;;;5481:7;5474:14;;;;;;5928:540;6009:7;5985:20;5994:10;5985:8;:20::i;:::-;:31;;5977:40;;;;;;6129:16;;6064:3;475:1;6043:18;;:24;;-1:-1:-1;;;6101:25:0;;6129:16;6101:44;;;;6072:25;:73;;6101:44;;;;6072:73;;;;;-1:-1:-1;6150:27:0;;;;;;;6193:10;-1:-1:-1;6182:22:0;;;-1:-1:-1;6182:22:0;;;;;;;;;:44;;;;;;;6231:29;;;:40;;;;;;;6332:25;;6276:35;;;;:82;;6322:35;;;6276:82;;;;;;6368:57;;6404:20;;;6368:57;;;;6193:10;;6385:4;;-1:-1:-1;;;;;;;;;;;6368:57:0;;;;;;;;;;6435:28;;;;;;;;6443:10;;6435:28;;;;;;;;;;5928:540;;:::o;5512:411::-;5592:7;5567:21;5577:10;5567:9;:21::i;:::-;:32;;5559:41;;;;;;537:4;5636:7;5613:20;5622:10;5613:8;:20::i;:::-;:30;:50;;5605:59;;;;;;5669:16;:27;;;;;;5712:10;-1:-1:-1;5701:22:0;;;:10;:22;;;;;;;;;:29;;;:40;;;;;;5802:25;;;5746:35;;:82;;5792:35;;;5746:82;;;;;;5838:44;;;;;;;5867:4;;-1:-1:-1;;;;;;;;;;;5838:44:0;;;;;;;5892:26;;;;;;;;5898:10;;5892:26;;;;;;;;;;5512:411;:::o

Swarm Source

bzzr://7fc43fb0eabc736683468280ec6a260e2f6713a6b39ffd8b62d334ff210b08ec

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

OVERVIEW

UniDollar is an autonomous staking rewards platform

Validator Index Block Amount
View All Withdrawals

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

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