ERC-20
Overview
Max Total Supply
820,000,000 OMNIS
Holders
536
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
OMNIS
Compiler Version
v0.4.25+commit.59dbf8f1
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-04-12 */ pragma solidity 0.4.25; /** _____ __ __ ______ ____ ____ ______ ______ /\ __`\ /'\_/`\ /\ \/\ \ /\__ _\ /\ _`\ /\ _`\ /\__ _\ /\__ _\ \ \ \/\ \ /\ \ \ \ `\\ \ \/_/\ \/ \ \,\L\_\ \ \ \L\ \ \/_/\ \/ \/_/\ \/ \ \ \ \ \ \ \ \__\ \ \ \ , ` \ \ \ \ \/_\__ \ _______ \ \ _ <' \ \ \ \ \ \ \ \ \_\ \ \ \ \_/\ \ \ \ \`\ \ \_\ \__ /\ \L\ \ /\______\ \ \ \L\ \ \_\ \__ \ \ \ \ \_____\ \ \_\\ \_\ \ \_\ \_\ /\_____\ \ `\____\\/______/ \ \____/ /\_____\ \ \_\ \/_____/ \/_/ \/_/ \/_/\/_/ \/_____/ \/_____/ \/___/ \/_____/ \/_/ WEBSITE: omnis-bit.com */ /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ library SafeMath { function mul(uint256 a, uint256 b) internal pure returns(uint256) { uint256 c = a * b; assert(a == 0 || c / a == b); return c; } function div(uint256 a, uint256 b) internal pure returns(uint256) { // assert(b > 0); // Solidity automatically throws when dividing by 0 uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function sub(uint256 a, uint256 b) internal pure returns(uint256) { assert(b <= a); return a - b; } function add(uint256 a, uint256 b) internal pure returns(uint256) { uint256 c = a + b; assert(c >= a); return c; } } /** * @title Ownable * @dev The Ownable contract has an owner address, and provides basic authorization control * functions, this simplifies the implementation of "user permissions". */ contract Ownable { address public owner; /** * @dev The Ownable constructor sets the original `owner` of the contract to the sender * account. */ constructor() public { owner = msg.sender; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(msg.sender == owner); _; } /** * @dev Allows the current owner to transfer control of the contract to a newOwner. * @param newOwner The address to transfer ownership to. */ function transferOwnership(address newOwner) onlyOwner public { require(newOwner != address(0)); owner = newOwner; } } /** * @title ERC20Basic * @dev Simpler version of ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/179 */ contract ERC20Basic { uint256 public totalSupply; function balanceOf(address who) public view returns(uint256); function transfer(address to, uint256 value) public returns(bool); event Transfer(address indexed from, address indexed to, uint256 value); } /** * @title ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ contract ERC20 is ERC20Basic { function allowance(address owner, address spender) public view returns(uint256); function transferFrom(address from, address to, uint256 value) public returns(bool); function approve(address spender, uint256 value) public returns(bool); event Approval(address indexed owner, address indexed spender, uint256 value); } contract StakerToken { uint256 public stakeStartTime; uint256 public stakeMinAge; uint256 public stakeMaxAge; function claimStake() public returns(bool); function coinAge() public view returns(uint256); function annualInterest() public view returns(uint256); event ClaimStake(address indexed _address, uint _reward); } contract OMNIS is ERC20, StakerToken, Ownable { using SafeMath for uint256; string public name = "OMNIS-BIT"; string public symbol = "OMNIS"; uint public decimals = 18; uint public chainStartTime; uint public chainStartBlockNumber; uint public stakeStartTime; uint public stakeMinAge = 3 days; uint public stakeMaxAge = 90 days; uint public totalSupply; uint public maxTotalSupply; uint public totalInitialSupply; struct Airdrop { uint value; bool claimed; } mapping(address => Airdrop) public airdrops; //ESCROW RELATED enum PaymentStatus { Pending, Completed, Refunded } event NewFeeRate(uint newFee); event NewCollectionWallet(address newWallet); event PaymentCreation(uint indexed orderId, address indexed customer, uint value); event PaymentCompletion(uint indexed orderId, address indexed provider, address indexed customer, uint value, PaymentStatus status); struct Payment { address provider; address customer; uint value; PaymentStatus status; bool refundApproved; } uint escrowCounter; uint public escrowFeePercent = 5; //0.5% mapping(uint => Payment) public payments; address public collectionAddress; //ESCROW SECTION END struct transferInStruct { uint128 amount; uint64 time; } mapping(address => uint256) balances; mapping(address => mapping(address => uint256)) allowed; mapping(address => transferInStruct[]) transferIns; modifier canPoSclaimStake() { require(totalSupply < maxTotalSupply); _; } constructor() public { maxTotalSupply = 1000000000 * 10 ** 18; totalInitialSupply = 820000000 * 10 ** 18; chainStartTime = now; //Original Time chainStartBlockNumber = block.number; //Original Block totalSupply = totalInitialSupply; collectionAddress = msg.sender; //Initially collection address to owner balances[msg.sender] = totalInitialSupply; emit Transfer(address(0), msg.sender, totalInitialSupply); } function setCurrentEscrowFee(uint _newFee) onlyOwner public { require(_newFee != 0 && _newFee < 1000); escrowFeePercent = _newFee; emit NewFeeRate(escrowFeePercent); } function setCollectionWallet(address _newWallet) onlyOwner public { require(_newWallet != address(0)); collectionAddress = _newWallet; emit NewCollectionWallet(collectionAddress); } function transfer(address _to, uint256 _value) public returns(bool) { require(_to != address(0)); if (msg.sender == _to) return claimStake(); balances[msg.sender] = balances[msg.sender].sub(_value); balances[_to] = balances[_to].add(_value); emit Transfer(msg.sender, _to, _value); if (transferIns[msg.sender].length > 0) delete transferIns[msg.sender]; uint64 _now = uint64(now); transferIns[msg.sender].push(transferInStruct(uint128(balances[msg.sender]), _now)); transferIns[_to].push(transferInStruct(uint128(_value), _now)); return true; } function balanceOf(address _owner) public view returns(uint256 balance) { return balances[_owner]; } function transferFrom(address _from, address _to, uint256 _value) public returns(bool) { require(_to != address(0)); uint256 _allowance = allowed[_from][msg.sender]; balances[_from] = balances[_from].sub(_value); balances[_to] = balances[_to].add(_value); allowed[_from][msg.sender] = _allowance.sub(_value); emit Transfer(_from, _to, _value); if (transferIns[_from].length > 0) delete transferIns[_from]; uint64 _now = uint64(now); transferIns[_from].push(transferInStruct(uint128(balances[_from]), _now)); transferIns[_to].push(transferInStruct(uint128(_value), _now)); return true; } function approve(address _spender, uint256 _value) public returns(bool) { require((_value == 0) || (allowed[msg.sender][_spender] == 0)); allowed[msg.sender][_spender] = _value; emit Approval(msg.sender, _spender, _value); return true; } function allowance(address _owner, address _spender) public view returns(uint256 remaining) { return allowed[_owner][_spender]; } /** * @dev claimStake * @dev Allow any user to claim stake earned */ function claimStake() canPoSclaimStake public returns(bool) { if (balances[msg.sender] <= 0) return false; if (transferIns[msg.sender].length <= 0) return false; uint reward = getProofOfStakeReward(msg.sender); if (reward <= 0) return false; totalSupply = totalSupply.add(reward); balances[msg.sender] = balances[msg.sender].add(reward); delete transferIns[msg.sender]; transferIns[msg.sender].push(transferInStruct(uint128(balances[msg.sender]), uint64(now))); emit Transfer(address(0),msg.sender,reward); emit ClaimStake(msg.sender, reward); return true; } /** * @dev getBlockNumber * @dev Returns the block number since deployment */ function getBlockNumber() public view returns(uint blockNumber) { blockNumber = block.number.sub(chainStartBlockNumber); } /** * @dev coinAge * @dev Returns the coinage for the callers account */ function coinAge() public view returns(uint myCoinAge) { myCoinAge = getCoinAge(msg.sender, now); } /** * @dev annualInterest * @dev Returns the current interest rate */ function annualInterest() public view returns(uint interest) { uint _now = now; interest = 0; if ((_now.sub(stakeStartTime)).div(365 days) == 0) { interest = (106 * 1e15); } else if ((_now.sub(stakeStartTime)).div(365 days) == 1) { interest = (49 * 1e15); } else if ((_now.sub(stakeStartTime)).div(365 days) == 2) { interest = (24 * 1e15); } else if ((_now.sub(stakeStartTime)).div(365 days) == 3) { interest = (13 * 1e15); } else if ((_now.sub(stakeStartTime)).div(365 days) == 4) { interest = (11 * 1e15); } } /** * @dev getProofOfStakeReward * @dev Returns the current stake of a wallet * @param _address is the user wallet */ function getProofOfStakeReward(address _address) public view returns(uint) { require((now >= stakeStartTime) && (stakeStartTime > 0)); uint _now = now; uint _coinAge = getCoinAge(_address, _now); if (_coinAge <= 0) return 0; uint interest = 0; if ((_now.sub(stakeStartTime)).div(365 days) == 0) { interest = (106 * 1e15); } else if ((_now.sub(stakeStartTime)).div(365 days) == 1) { interest = (49 * 1e15); } else if ((_now.sub(stakeStartTime)).div(365 days) == 2) { interest = (24 * 1e15); } else if ((_now.sub(stakeStartTime)).div(365 days) == 3) { interest = (13 * 1e15); } else if ((_now.sub(stakeStartTime)).div(365 days) == 4) { interest = (11 * 1e1); } return (_coinAge * interest).div(365 * (10 ** decimals)); } function getCoinAge(address _address, uint _now) internal view returns(uint _coinAge) { if (transferIns[_address].length <= 0) return 0; for (uint i = 0; i < transferIns[_address].length; i++) { if (_now < uint(transferIns[_address][i].time).add(stakeMinAge)) continue; uint nCoinSeconds = _now.sub(uint(transferIns[_address][i].time)); if (nCoinSeconds > stakeMaxAge) nCoinSeconds = stakeMaxAge; _coinAge = _coinAge.add(uint(transferIns[_address][i].amount) * nCoinSeconds.div(1 days)); } } /** * @dev ownerSetStakeStartTime * @dev Used by the owner to define the staking period start * @param timestamp time in UNIX format */ function ownerSetStakeStartTime(uint timestamp) onlyOwner public { require((stakeStartTime <= 0) && (timestamp >= chainStartTime)); stakeStartTime = timestamp; } /** * @dev batchTransfer * @dev Used by the owner to deliver several transfers at the same time (Airdrop) * @param _recipients Array of addresses * @param _values Array of values */ function batchTransfer(address[] _recipients, uint[] _values) onlyOwner external returns(bool) { //Check data sizes require(_recipients.length > 0 && _recipients.length == _values.length); //Total value calc uint total = 0; for (uint i = 0; i < _values.length; i++) { total = total.add(_values[i]); } //Sender must hold funds require(total <= balances[msg.sender]); //Make transfers uint64 _now = uint64(now); for (uint j = 0; j < _recipients.length; j++) { balances[_recipients[j]] = balances[_recipients[j]].add(_values[j]); transferIns[_recipients[j]].push(transferInStruct(uint128(_values[j]), _now)); emit Transfer(msg.sender, _recipients[j], _values[j]); } //Reduce all balance on a single transaction from sender balances[msg.sender] = balances[msg.sender].sub(total); if (transferIns[msg.sender].length > 0) delete transferIns[msg.sender]; if (balances[msg.sender] > 0) transferIns[msg.sender].push(transferInStruct(uint128(balances[msg.sender]), _now)); return true; } /** * @dev dropSet * @dev Used by the owner to set several self-claiming drops at the same time (Airdrop) * @param _recipients Array of addresses * @param _values Array of values */ function dropSet(address[] _recipients, uint[] _values) onlyOwner external returns(bool) { //Check data sizes require(_recipients.length > 0 && _recipients.length == _values.length); for (uint j = 0; j < _recipients.length; j++) { //Store user drop info airdrops[_recipients[j]].value = _values[j]; airdrops[_recipients[j]].claimed = false; } return true; } /** * @dev claimAirdrop * @dev Allow any user with a drop set to claim it */ function claimAirdrop() external returns(bool) { //Check if not claimed require(airdrops[msg.sender].claimed == false); require(airdrops[msg.sender].value != 0); //Set Claim to True airdrops[msg.sender].claimed = true; //Clear value airdrops[msg.sender].value = 0; //Tokens are on owner wallet address _from = owner; //Tokens goes to costumer address _to = msg.sender; //Original value uint _value = airdrops[msg.sender].value; balances[_from] = balances[_from].sub(_value); balances[_to] = balances[_to].add(_value); emit Transfer(_from, _to, _value); if (transferIns[_from].length > 0) delete transferIns[_from]; uint64 _now = uint64(now); transferIns[_from].push(transferInStruct(uint128(balances[_from]), _now)); transferIns[_to].push(transferInStruct(uint128(_value), _now)); return true; } //ESCROW SECTION /** * @dev createPayment * @dev Allow a user to start a Escrow process * @param _customer Counterpart that will receive payment on success * @param _value Amount to be escrowed */ function createPayment(address _customer, uint _value) external returns(uint) { address _to = address(this); require(_value > 0); balances[msg.sender] = balances[msg.sender].sub(_value); balances[_to] = balances[_to].add(_value); emit Transfer(msg.sender, _to, _value); if (transferIns[msg.sender].length > 0) delete transferIns[msg.sender]; uint64 _now = uint64(now); transferIns[msg.sender].push(transferInStruct(uint128(balances[msg.sender]), _now)); payments[escrowCounter] = Payment(msg.sender, _customer, _value, PaymentStatus.Pending, false); emit PaymentCreation(escrowCounter, _customer, _value); escrowCounter = escrowCounter.add(1); return escrowCounter - 1; } /** * @dev release * @dev Allow a user to release a payment * @param _orderId Ticket number of the escrow service */ function release(uint _orderId) external returns(bool) { //Get Payment Handler Payment storage payment = payments[_orderId]; //Only if pending require(payment.status == PaymentStatus.Pending); //Only owner or token provider require(msg.sender == owner || msg.sender == payment.provider); //Tokens are on contract address _from = address(this); //Tokens goes to costumer address _to = payment.customer; //Original value uint _value = payment.value; //Fee calculation uint _fee = _value.mul(escrowFeePercent).div(1000); //Value less fees _value = _value.sub(_fee); //Costumer transfer balances[_from] = balances[_from].sub(_value); balances[_to] = balances[_to].add(_value); emit Transfer(_from, _to, _value); //collectionAddress fee recolection balances[_from] = balances[_from].sub(_fee); balances[collectionAddress] = balances[collectionAddress].add(_fee); emit Transfer(_from, collectionAddress, _fee); //Delete any staking from contract address itself if (transferIns[_from].length > 0) delete transferIns[_from]; //Store staking information for receivers uint64 _now = uint64(now); //Costumer transferIns[_to].push(transferInStruct(uint128(_value), _now)); //collectionAddress transferIns[collectionAddress].push(transferInStruct(uint128(_fee), _now)); //Payment Escrow Completed payment.status = PaymentStatus.Completed; //Emit Event emit PaymentCompletion(_orderId, payment.provider, payment.customer, payment.value, payment.status); return true; } /** * @dev refund * @dev Allow a user to refund a payment * @param _orderId Ticket number of the escrow service */ function refund(uint _orderId) external returns(bool) { //Get Payment Handler Payment storage payment = payments[_orderId]; //Only if pending require(payment.status == PaymentStatus.Pending); //Only if refund was approved require(payment.refundApproved); //Tokens are on contract address _from = address(this); //Tokens go back to provider address _to = payment.provider; //Original value uint _value = payment.value; //Provider transfer balances[_from] = balances[_from].sub(_value); balances[_to] = balances[_to].add(_value); emit Transfer(_from, _to, _value); //Delete any staking from contract address itself if (transferIns[_from].length > 0) delete transferIns[_from]; //Store staking information for receivers uint64 _now = uint64(now); transferIns[_to].push(transferInStruct(uint128(_value), _now)); //Payment Escrow Refunded payment.status = PaymentStatus.Refunded; //Emit Event emit PaymentCompletion(_orderId, payment.provider, payment.customer, payment.value, payment.status); return true; } /** * @dev approveRefund * @dev Allow a user to approve a refund * @param _orderId Ticket number of the escrow service */ function approveRefund(uint _orderId) external returns(bool) { //Get Payment Handler Payment storage payment = payments[_orderId]; //Only if pending require(payment.status == PaymentStatus.Pending); //Only owner or costumer require(msg.sender == owner || msg.sender == payment.customer); //Approve Refund payment.refundApproved = true; return true; } //ESCROW SECTION END }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"_customer","type":"address"},{"name":"_value","type":"uint256"}],"name":"createPayment","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"getProofOfStakeReward","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newFee","type":"uint256"}],"name":"setCurrentEscrowFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"coinAge","outputs":[{"name":"myCoinAge","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_orderId","type":"uint256"}],"name":"refund","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"timestamp","type":"uint256"}],"name":"ownerSetStakeStartTime","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"maxTotalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"escrowFeePercent","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_orderId","type":"uint256"}],"name":"approveRefund","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_orderId","type":"uint256"}],"name":"release","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getBlockNumber","outputs":[{"name":"blockNumber","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"chainStartTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"claimAirdrop","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"collectionAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stakeStartTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"payments","outputs":[{"name":"provider","type":"address"},{"name":"customer","type":"address"},{"name":"value","type":"uint256"},{"name":"status","type":"uint8"},{"name":"refundApproved","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_recipients","type":"address[]"},{"name":"_values","type":"uint256[]"}],"name":"batchTransfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_recipients","type":"address[]"},{"name":"_values","type":"uint256[]"}],"name":"dropSet","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"airdrops","outputs":[{"name":"value","type":"uint256"},{"name":"claimed","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalInitialSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"annualInterest","outputs":[{"name":"interest","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stakeMinAge","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"chainStartBlockNumber","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stakeMaxAge","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"claimStake","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newWallet","type":"address"}],"name":"setCollectionWallet","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newFee","type":"uint256"}],"name":"NewFeeRate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newWallet","type":"address"}],"name":"NewCollectionWallet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"orderId","type":"uint256"},{"indexed":true,"name":"customer","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"PaymentCreation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"orderId","type":"uint256"},{"indexed":true,"name":"provider","type":"address"},{"indexed":true,"name":"customer","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"status","type":"uint8"}],"name":"PaymentCompletion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"},{"indexed":false,"name":"_reward","type":"uint256"}],"name":"ClaimStake","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]
Contract Creation Code
60c0604052600960808190527f4f4d4e49532d424954000000000000000000000000000000000000000000000060a09081526200004091600591906200014c565b506040805180820190915260058082527f4f4d4e4953000000000000000000000000000000000000000000000000000000602090920191825262000087916006916200014c565b5060126007556203f480600b556276a700600c556005601255348015620000ad57600080fd5b506004805433600160a060020a031991821681179092556b033b2e3c9fd0803ce8000000600e556b02a649c112686927b4000000600f8190554260085543600955600d819055601480549092168317909155600082815260156020908152604080832084905580519384525191927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a3620001f1565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200018f57805160ff1916838001178555620001bf565b82800160010185558215620001bf579182015b82811115620001bf578251825591602001919060010190620001a2565b50620001cd929150620001d1565b5090565b620001ee91905b80821115620001cd5760008155600101620001d8565b90565b6125be80620002016000396000f3006080604052600436106101cc5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306a669fc81146101d157806306fdde0314610207578063095ea7b3146102915780630d6dcab3146102c95780631623ef5f146102ea57806318160ddd146103045780631e1b13c01461031957806323b872dd1461032e578063278ecde1146103585780632a9edf6f146103705780632ab4d052146103885780632c3ce5fa1461039d578063313ce567146103b2578063348a71a6146103c757806337bdc99b146103df57806342cbb15c146103f75780635b054f9b1461040c5780635b88349d146104215780636aa003711461043657806370a08231146104675780637419f1901461048857806387d817891461049d57806388d695b2146105025780638bfa92071461052e5780638c86f0a71461055a5780638da5cb5b1461059457806395d89b41146105a95780639fd4da40146105be578063a9059cbb146105d3578063b2552fc4146105f7578063cbd8877e1461060c578063cd474b0414610621578063dd62ed3e14610636578063e1c3bac61461065d578063eb32117314610672578063ee78b83314610687578063f2fde38b146106a8575b600080fd5b3480156101dd57600080fd5b506101f5600160a060020a03600435166024356106c9565b60408051918252519081900360200190f35b34801561021357600080fd5b5061021c61095b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561025657818101518382015260200161023e565b50505050905090810190601f1680156102835780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561029d57600080fd5b506102b5600160a060020a03600435166024356109e9565b604080519115158252519081900360200190f35b3480156102d557600080fd5b506101f5600160a060020a0360043516610a8b565b3480156102f657600080fd5b50610302600435610bfd565b005b34801561031057600080fd5b506101f5610c6a565b34801561032557600080fd5b506101f5610c70565b34801561033a57600080fd5b506102b5600160a060020a0360043581169060243516604435610c81565b34801561036457600080fd5b506102b5600435610eaa565b34801561037c57600080fd5b506103026004356110fc565b34801561039457600080fd5b506101f5611138565b3480156103a957600080fd5b506101f561113e565b3480156103be57600080fd5b506101f5611144565b3480156103d357600080fd5b506102b560043561114a565b3480156103eb57600080fd5b506102b56004356111be565b34801561040357600080fd5b506101f561156c565b34801561041857600080fd5b506101f5611583565b34801561042d57600080fd5b506102b5611589565b34801561044257600080fd5b5061044b6117bb565b60408051600160a060020a039092168252519081900360200190f35b34801561047357600080fd5b506101f5600160a060020a03600435166117ca565b34801561049457600080fd5b506101f56117e5565b3480156104a957600080fd5b506104b56004356117eb565b60408051600160a060020a03808816825286166020820152908101849052606081018360028111156104e357fe5b60ff168152911515602083015250604080519182900301945092505050f35b34801561050e57600080fd5b506102b5602460048035828101929082013591813591820191013561182b565b34801561053a57600080fd5b506102b56024600480358281019290820135918135918201910135611bcf565b34801561056657600080fd5b5061057b600160a060020a0360043516611cca565b6040805192835290151560208301528051918290030190f35b3480156105a057600080fd5b5061044b611ce6565b3480156105b557600080fd5b5061021c611cf5565b3480156105ca57600080fd5b506101f5611d50565b3480156105df57600080fd5b506102b5600160a060020a0360043516602435611d56565b34801561060357600080fd5b506101f5611f38565b34801561061857600080fd5b506101f5612041565b34801561062d57600080fd5b506101f5612047565b34801561064257600080fd5b506101f5600160a060020a036004358116906024351661204d565b34801561066957600080fd5b506101f5612078565b34801561067e57600080fd5b506102b561207e565b34801561069357600080fd5b50610302600160a060020a0360043516612230565b3480156106b457600080fd5b50610302600160a060020a03600435166122c3565b600030818084116106d957600080fd5b336000908152601560205260409020546106f9908563ffffffff61231e16565b3360009081526015602052604080822092909255600160a060020a0384168152205461072b908563ffffffff61233016565b600160a060020a0383166000818152601560209081526040918290209390935580518781529051919233926000805160206125738339815191529281900390910190a333600090815260176020526040812054111561079c5733600090815260176020526040812061079c916124f9565b503360008181526017602090815260408083208151808301835260158452828520546001608060020a03908116825267ffffffffffffffff42818116848801908152855460018082018855968a52888a209551950180549151909316608060020a02600080516020612553833981519152959094166001608060020a03199091161793909316919091179055825160a081018452958652600160a060020a038a81168786019081528785018b81526060890188815260808a0189905260115489526013909752949096208751815490831673ffffffffffffffffffffffffffffffffffffffff199182161782559651818501805491909316971696909617905591516002808601919091559251600385018054939695949193909260ff199091169184908111156108c957fe5b021790555060809190910151600390910180549115156101000261ff0019909216919091179055601154604080518681529051600160a060020a03881692917f116f78e400432d6399c491c22c98e7a457200ae66fc2cec42ddbe99ac276db02919081900360200190a360115461094790600163ffffffff61233016565b60118190556000190192505b505092915050565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109e15780601f106109b6576101008083540402835291602001916109e1565b820191906000526020600020905b8154815290600101906020018083116109c457829003601f168201915b505050505081565b6000811580610a195750336000908152601660209081526040808320600160a060020a0387168452909152902054155b1515610a2457600080fd5b336000818152601660209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b600080600080600a544210158015610aa557506000600a54115b1515610ab057600080fd5b429250610abd8584612346565b915060008211610ad05760009350610bf5565b60009050610afd6301e13380610af1600a548661231e90919063ffffffff16565b9063ffffffff6124be16565b1515610b12575067017896703a310000610bd4565b610b2f6301e13380610af1600a548661231e90919063ffffffff16565b60011415610b45575066ae153d89fe8000610bd4565b610b626301e13380610af1600a548661231e90919063ffffffff16565b60021415610b785750665543df729c0000610bd4565b610b956301e13380610af1600a548661231e90919063ffffffff16565b60031415610bab5750662e2f6e5e148000610bd4565b610bc86301e13380610af1600a548661231e90919063ffffffff16565b60041415610bd45750606e5b610bf2600754600a0a61016d028284026124be90919063ffffffff16565b93505b505050919050565b600454600160a060020a03163314610c1457600080fd5b8015801590610c2457506103e881105b1515610c2f57600080fd5b60128190556040805182815290517f788980e82f4651cc86d1cc00916685528f16c9abb21b2afe72325496c18c94ae9181900360200190a150565b600d5481565b6000610c7c3342612346565b905090565b60008080600160a060020a0385161515610c9a57600080fd5b600160a060020a03861660008181526016602090815260408083203384528252808320549383526015909152902054909250610cdc908563ffffffff61231e16565b600160a060020a038088166000908152601560205260408082209390935590871681522054610d11908563ffffffff61233016565b600160a060020a038616600090815260156020526040902055610d3a828563ffffffff61231e16565b600160a060020a0380881660008181526016602090815260408083203384528252918290209490945580518881529051928916939192600080516020612573833981519152929181900390910190a3600160a060020a0386166000908152601760205260408120541115610dc957600160a060020a0386166000908152601760205260408120610dc9916124f9565b505050600160a060020a0392831660009081526017602081815260408084208151808301835260158452828620546001608060020a03908116825267ffffffffffffffff428116838701818152855460018181018855968b52888b2095519501805491518416608060020a9081026000805160206125538339815191529787166001608060020a0319948516178816179091559b909c1689529686528488208551808701909652988216855284860196875288548085018a559888529490962092519290960180549451909316909602931691909516179091161790915590565b60008181526013602052604081208180808080600386015460ff166002811115610ed057fe5b14610eda57600080fd5b6003850154610100900460ff161515610ef257600080fd5b8454600286015430600081815260156020526040902054909650600160a060020a0390921694509250610f2b908363ffffffff61231e16565b600160a060020a038086166000908152601560205260408082209390935590851681522054610f60908363ffffffff61233016565b600160a060020a03808516600081815260156020908152604091829020949094558051868152905191939288169260008051602061257383398151915292918290030190a3600160a060020a0384166000908152601760205260408120541115610fe557600160a060020a0384166000908152601760205260408120610fe5916124f9565b50600160a060020a038281166000908152601760209081526040808320815180830183526001608060020a03878116825267ffffffffffffffff42818116848801908152855460018082018855968a529888902094519490980180549851909216608060020a02600080516020612553833981519152949093166001608060020a03199098169790971792909216179055600389018054600260ff19909116811791829055918a01548a54838c015494518581529697918216969116948d947feeb3d73e98eda8ed2fbd6111857bb2e2c00d32813b18f57f482393a15bceb9b694909360ff16929182019083908111156110db57fe5b60ff1681526020019250505060405180910390a45060019695505050505050565b600454600160a060020a0316331461111357600080fd5b6000600a541115801561112857506008548110155b151561113357600080fd5b600a55565b600e5481565b60125481565b60075481565b600081815260136020526040812081600382015460ff16600281111561116c57fe5b1461117657600080fd5b600454600160a060020a031633148061119b57506001810154600160a060020a031633145b15156111a657600080fd5b600301805461ff001916610100179055506001919050565b6000818152601360205260408120818080808080600387015460ff1660028111156111e557fe5b146111ef57600080fd5b600454600160a060020a031633148061121157508554600160a060020a031633145b151561121c57600080fd5b60018601546002870154601254309750600160a060020a0390921695509350611254906103e890610af190869063ffffffff6124d516565b9150611266838363ffffffff61231e16565b600160a060020a038616600090815260156020526040902054909350611292908463ffffffff61231e16565b600160a060020a0380871660009081526015602052604080822093909355908616815220546112c7908463ffffffff61233016565b600160a060020a03808616600081815260156020908152604091829020949094558051878152905191939289169260008051602061257383398151915292918290030190a3600160a060020a038516600090815260156020526040902054611335908363ffffffff61231e16565b600160a060020a03808716600090815260156020526040808220939093556014549091168152205461136d908363ffffffff61233016565b60148054600160a060020a0390811660009081526015602090815260409182902094909455915482518681529251908216939189169260008051602061257383398151915292908290030190a3600160a060020a03851660009081526017602052604081205411156113fa57600160a060020a03851660009081526017602052604081206113fa916124f9565b50600160a060020a038084166000908152601760208181526040808420815180830183526001608060020a03808a16825267ffffffffffffffff42818116848801818152865460018181018955978c52898c2096519601805491518516608060020a9081026000805160206125538339815191529888166001608060020a031994851617891617909155601454909c168b52988852868a2087518089019098528c8516885287890191825280548088018255908b529790992095519590960180549851909116909802931695909416949094179092169190911790925560038701805460ff1916828002179055506001860154865460028089015460038a0154604051828152600160a060020a0395861695909416938d937feeb3d73e98eda8ed2fbd6111857bb2e2c00d32813b18f57f482393a15bceb9b6939260ff1691906020820190839081111561154a57fe5b60ff1681526020019250505060405180910390a4506001979650505050505050565b6000610c7c6009544361231e90919063ffffffff16565b60085481565b33600090815260106020526040812060010154819081908190819060ff16156115b157600080fd5b3360009081526010602052604090205415156115cc57600080fd5b3360008181526010602090815260408083206001818101805460ff19169091179055839055600454600160a060020a031680845260159092528220549096509194509250611620908363ffffffff61231e16565b600160a060020a038086166000908152601560205260408082209390935590851681522054611655908363ffffffff61233016565b600160a060020a03808516600081815260156020908152604091829020949094558051868152905191939288169260008051602061257383398151915292918290030190a3600160a060020a03841660009081526017602052604081205411156116da57600160a060020a03841660009081526017602052604081206116da916124f9565b50600160a060020a0392831660009081526017602081815260408084208151808301835260158452828620546001608060020a03908116825267ffffffffffffffff428116838701818152855460018082018855968b52888b2095519501805491518416608060020a9081026000805160206125538339815191529787166001608060020a0319948516178816179091559b909c1689529686528488208551808701909652988216855284860196875288548085018a5598885294909620925192909601805494519093169096029316919095161790911617909155919050565b601454600160a060020a031681565b600160a060020a031660009081526015602052604090205490565b600a5481565b6013602052600090815260409020805460018201546002830154600390930154600160a060020a0392831693919092169160ff8082169161010090041685565b6004546000908190819081908190600160a060020a0316331461184d57600080fd5b60008811801561185c57508786145b151561186757600080fd5b60009350600092505b858310156118aa5761189d87878581811061188757fe5b905060200201358561233090919063ffffffff16565b9350600190920191611870565b336000908152601560205260409020548411156118c657600080fd5b5042905060005b87811015611ac45761193c8787838181106118e457fe5b90506020020135601560008c8c8681811015156118fd57fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a031681526020019081526020016000205461233090919063ffffffff16565b601560008b8b8581811061194c57fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a0316815260200190815260200160002081905550601760008a8a84818110151561199257fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a03168152602001908152602001600020604080519081016040528089898581811015156119db57fe5b602090810292909201356001608060020a03908116845267ffffffffffffffff88811694840194909452855460018101875560009687529583902085519601805495909301516001608060020a031990951695169490941760008051602061255383398151915216608060020a939092169290920217905550888882818110611a6057fe5b90506020020135600160a060020a0316600160a060020a031633600160a060020a03166000805160206125738339815191528989858181101515611aa057fe5b905060200201356040518082815260200191505060405180910390a36001016118cd565b33600090815260156020526040902054611ae4908563ffffffff61231e16565b3360009081526015602090815260408083209390935560179052908120541115611b2057336000908152601760205260408120611b20916124f9565b336000908152601560205260408120541115611bc0573360009081526017602090815260408083208151808301835260158452918420546001608060020a03908116835267ffffffffffffffff80881684860190815283546001810185559387529490952092519290910180549351909416608060020a02600080516020612553833981519152929091166001608060020a031990931692909217161790555b50600198975050505050505050565b6004546000908190600160a060020a03163314611beb57600080fd5b600085118015611bfa57508483145b1515611c0557600080fd5b5060005b84811015611cbe57838382818110611c1d57fe5b90506020020135601060008888858181101515611c3657fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a03168152602001908152602001600020600001819055506000601060008888858181101515611c8157fe5b60209081029290920135600160a060020a03168352508101919091526040016000206001908101805460ff19169215159290921790915501611c09565b50600195945050505050565b6010602052600090815260409020805460019091015460ff1682565b600454600160a060020a031681565b6006805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109e15780601f106109b6576101008083540402835291602001916109e1565b600f5481565b600080600160a060020a0384161515611d6e57600080fd5b33600160a060020a0385161415611d8e57611d8761207e565b9150611f31565b33600090815260156020526040902054611dae908463ffffffff61231e16565b3360009081526015602052604080822092909255600160a060020a03861681522054611de0908463ffffffff61233016565b600160a060020a0385166000818152601560209081526040918290209390935580518681529051919233926000805160206125738339815191529281900390910190a3336000908152601760205260408120541115611e5157336000908152601760205260408120611e51916124f9565b50503360009081526017602081815260408084208151808301835260158452828620546001608060020a03908116825267ffffffffffffffff42818116848801818152865460018181018955978c52898c2096519601805491518516608060020a9081026000805160206125538339815191529888166001608060020a031994851617891617909155600160a060020a038e168c52998952878b208851808a019099528c86168952888a0192835280548089018255908c5298909a2096519690970180549751909216909702949091169490961693909317909216179092555b5092915050565b600a546000904290611f5b906301e1338090610af190849063ffffffff61231e16565b1515611f715767017896703a310000915061203d565b611f8e6301e13380610af1600a548461231e90919063ffffffff16565b60011415611fa55766ae153d89fe8000915061203d565b611fc26301e13380610af1600a548461231e90919063ffffffff16565b60021415611fd957665543df729c0000915061203d565b611ff66301e13380610af1600a548461231e90919063ffffffff16565b6003141561200d57662e2f6e5e148000915061203d565b61202a6301e13380610af1600a548461231e90919063ffffffff16565b6004141561203d57662714711487800091505b5090565b600b5481565b60095481565b600160a060020a03918216600090815260166020908152604080832093909416825291909152205490565b600c5481565b600080600e54600d5410151561209357600080fd5b33600090815260156020526040812054116120b1576000915061203d565b33600090815260176020526040812054116120cf576000915061203d565b6120d833610a8b565b9050600081116120eb576000915061203d565b600d546120fe908263ffffffff61233016565b600d5533600090815260156020526040902054612121908263ffffffff61233016565b3360009081526015602090815260408083209390935560179052908120612147916124f9565b3360008181526017602090815260408083208151808301835260158452828520546001608060020a03908116825267ffffffffffffffff428116838701908152845460018101865594885286882093519390940180549451909116608060020a02600080516020612553833981519152939092166001608060020a0319909416939093179190911617905580518581529051600080516020612573833981519152929181900390910190a360408051828152905133917f157fac8fd4f41c05fc4eb4fc76efaff83b44dde65830c8474bbda846b6cebbcb919081900360200190a2600191505090565b600454600160a060020a0316331461224757600080fd5b600160a060020a038116151561225c57600080fd5b6014805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03838116919091179182905560408051929091168252517fb408f9ca0555ebd07984cfda88b709f9637edae44f4be9b3e1a2c54e5ea10b5d916020908290030190a150565b600454600160a060020a031633146122da57600080fd5b600160a060020a03811615156122ef57600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60008282111561232a57fe5b50900390565b60008282018381101561233f57fe5b9392505050565b600160a060020a0382166000908152601760205260408120548190819081106123725760009250610953565b600091505b600160a060020a03851660009081526017602052604090205482101561095357600b54600160a060020a038616600090815260176020526040902080546123e7929190859081106123c457fe5b600091825260209091200154608060020a900467ffffffffffffffff1690612330565b8410156123f3576124b3565b600160a060020a0385166000908152601760205260409020805461244091908490811061241c57fe5b6000918252602090912001548590608060020a900467ffffffffffffffff1661231e565b9050600c548111156124515750600c545b6124b0612467826201518063ffffffff6124be16565b600160a060020a038716600090815260176020526040902080548590811061248b57fe5b60009182526020909120015485916001608060020a039091160263ffffffff61233016565b92505b600190910190612377565b60008082848115156124cc57fe5b04949350505050565b60008282028315806124f157508284828115156124ee57fe5b04145b151561233f57fe5b5080546000825590600052602060002090810190612517919061251a565b50565b61254f91905b8082111561203d57805477ffffffffffffffffffffffffffffffffffffffffffffffff19168155600101612520565b905600ffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffffddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820807adeda907c573622d08cd63f3f64aee4267c4dcb932586a55f86daa940b3010029
Deployed Bytecode
0x6080604052600436106101cc5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306a669fc81146101d157806306fdde0314610207578063095ea7b3146102915780630d6dcab3146102c95780631623ef5f146102ea57806318160ddd146103045780631e1b13c01461031957806323b872dd1461032e578063278ecde1146103585780632a9edf6f146103705780632ab4d052146103885780632c3ce5fa1461039d578063313ce567146103b2578063348a71a6146103c757806337bdc99b146103df57806342cbb15c146103f75780635b054f9b1461040c5780635b88349d146104215780636aa003711461043657806370a08231146104675780637419f1901461048857806387d817891461049d57806388d695b2146105025780638bfa92071461052e5780638c86f0a71461055a5780638da5cb5b1461059457806395d89b41146105a95780639fd4da40146105be578063a9059cbb146105d3578063b2552fc4146105f7578063cbd8877e1461060c578063cd474b0414610621578063dd62ed3e14610636578063e1c3bac61461065d578063eb32117314610672578063ee78b83314610687578063f2fde38b146106a8575b600080fd5b3480156101dd57600080fd5b506101f5600160a060020a03600435166024356106c9565b60408051918252519081900360200190f35b34801561021357600080fd5b5061021c61095b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561025657818101518382015260200161023e565b50505050905090810190601f1680156102835780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561029d57600080fd5b506102b5600160a060020a03600435166024356109e9565b604080519115158252519081900360200190f35b3480156102d557600080fd5b506101f5600160a060020a0360043516610a8b565b3480156102f657600080fd5b50610302600435610bfd565b005b34801561031057600080fd5b506101f5610c6a565b34801561032557600080fd5b506101f5610c70565b34801561033a57600080fd5b506102b5600160a060020a0360043581169060243516604435610c81565b34801561036457600080fd5b506102b5600435610eaa565b34801561037c57600080fd5b506103026004356110fc565b34801561039457600080fd5b506101f5611138565b3480156103a957600080fd5b506101f561113e565b3480156103be57600080fd5b506101f5611144565b3480156103d357600080fd5b506102b560043561114a565b3480156103eb57600080fd5b506102b56004356111be565b34801561040357600080fd5b506101f561156c565b34801561041857600080fd5b506101f5611583565b34801561042d57600080fd5b506102b5611589565b34801561044257600080fd5b5061044b6117bb565b60408051600160a060020a039092168252519081900360200190f35b34801561047357600080fd5b506101f5600160a060020a03600435166117ca565b34801561049457600080fd5b506101f56117e5565b3480156104a957600080fd5b506104b56004356117eb565b60408051600160a060020a03808816825286166020820152908101849052606081018360028111156104e357fe5b60ff168152911515602083015250604080519182900301945092505050f35b34801561050e57600080fd5b506102b5602460048035828101929082013591813591820191013561182b565b34801561053a57600080fd5b506102b56024600480358281019290820135918135918201910135611bcf565b34801561056657600080fd5b5061057b600160a060020a0360043516611cca565b6040805192835290151560208301528051918290030190f35b3480156105a057600080fd5b5061044b611ce6565b3480156105b557600080fd5b5061021c611cf5565b3480156105ca57600080fd5b506101f5611d50565b3480156105df57600080fd5b506102b5600160a060020a0360043516602435611d56565b34801561060357600080fd5b506101f5611f38565b34801561061857600080fd5b506101f5612041565b34801561062d57600080fd5b506101f5612047565b34801561064257600080fd5b506101f5600160a060020a036004358116906024351661204d565b34801561066957600080fd5b506101f5612078565b34801561067e57600080fd5b506102b561207e565b34801561069357600080fd5b50610302600160a060020a0360043516612230565b3480156106b457600080fd5b50610302600160a060020a03600435166122c3565b600030818084116106d957600080fd5b336000908152601560205260409020546106f9908563ffffffff61231e16565b3360009081526015602052604080822092909255600160a060020a0384168152205461072b908563ffffffff61233016565b600160a060020a0383166000818152601560209081526040918290209390935580518781529051919233926000805160206125738339815191529281900390910190a333600090815260176020526040812054111561079c5733600090815260176020526040812061079c916124f9565b503360008181526017602090815260408083208151808301835260158452828520546001608060020a03908116825267ffffffffffffffff42818116848801908152855460018082018855968a52888a209551950180549151909316608060020a02600080516020612553833981519152959094166001608060020a03199091161793909316919091179055825160a081018452958652600160a060020a038a81168786019081528785018b81526060890188815260808a0189905260115489526013909752949096208751815490831673ffffffffffffffffffffffffffffffffffffffff199182161782559651818501805491909316971696909617905591516002808601919091559251600385018054939695949193909260ff199091169184908111156108c957fe5b021790555060809190910151600390910180549115156101000261ff0019909216919091179055601154604080518681529051600160a060020a03881692917f116f78e400432d6399c491c22c98e7a457200ae66fc2cec42ddbe99ac276db02919081900360200190a360115461094790600163ffffffff61233016565b60118190556000190192505b505092915050565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109e15780601f106109b6576101008083540402835291602001916109e1565b820191906000526020600020905b8154815290600101906020018083116109c457829003601f168201915b505050505081565b6000811580610a195750336000908152601660209081526040808320600160a060020a0387168452909152902054155b1515610a2457600080fd5b336000818152601660209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b600080600080600a544210158015610aa557506000600a54115b1515610ab057600080fd5b429250610abd8584612346565b915060008211610ad05760009350610bf5565b60009050610afd6301e13380610af1600a548661231e90919063ffffffff16565b9063ffffffff6124be16565b1515610b12575067017896703a310000610bd4565b610b2f6301e13380610af1600a548661231e90919063ffffffff16565b60011415610b45575066ae153d89fe8000610bd4565b610b626301e13380610af1600a548661231e90919063ffffffff16565b60021415610b785750665543df729c0000610bd4565b610b956301e13380610af1600a548661231e90919063ffffffff16565b60031415610bab5750662e2f6e5e148000610bd4565b610bc86301e13380610af1600a548661231e90919063ffffffff16565b60041415610bd45750606e5b610bf2600754600a0a61016d028284026124be90919063ffffffff16565b93505b505050919050565b600454600160a060020a03163314610c1457600080fd5b8015801590610c2457506103e881105b1515610c2f57600080fd5b60128190556040805182815290517f788980e82f4651cc86d1cc00916685528f16c9abb21b2afe72325496c18c94ae9181900360200190a150565b600d5481565b6000610c7c3342612346565b905090565b60008080600160a060020a0385161515610c9a57600080fd5b600160a060020a03861660008181526016602090815260408083203384528252808320549383526015909152902054909250610cdc908563ffffffff61231e16565b600160a060020a038088166000908152601560205260408082209390935590871681522054610d11908563ffffffff61233016565b600160a060020a038616600090815260156020526040902055610d3a828563ffffffff61231e16565b600160a060020a0380881660008181526016602090815260408083203384528252918290209490945580518881529051928916939192600080516020612573833981519152929181900390910190a3600160a060020a0386166000908152601760205260408120541115610dc957600160a060020a0386166000908152601760205260408120610dc9916124f9565b505050600160a060020a0392831660009081526017602081815260408084208151808301835260158452828620546001608060020a03908116825267ffffffffffffffff428116838701818152855460018181018855968b52888b2095519501805491518416608060020a9081026000805160206125538339815191529787166001608060020a0319948516178816179091559b909c1689529686528488208551808701909652988216855284860196875288548085018a559888529490962092519290960180549451909316909602931691909516179091161790915590565b60008181526013602052604081208180808080600386015460ff166002811115610ed057fe5b14610eda57600080fd5b6003850154610100900460ff161515610ef257600080fd5b8454600286015430600081815260156020526040902054909650600160a060020a0390921694509250610f2b908363ffffffff61231e16565b600160a060020a038086166000908152601560205260408082209390935590851681522054610f60908363ffffffff61233016565b600160a060020a03808516600081815260156020908152604091829020949094558051868152905191939288169260008051602061257383398151915292918290030190a3600160a060020a0384166000908152601760205260408120541115610fe557600160a060020a0384166000908152601760205260408120610fe5916124f9565b50600160a060020a038281166000908152601760209081526040808320815180830183526001608060020a03878116825267ffffffffffffffff42818116848801908152855460018082018855968a529888902094519490980180549851909216608060020a02600080516020612553833981519152949093166001608060020a03199098169790971792909216179055600389018054600260ff19909116811791829055918a01548a54838c015494518581529697918216969116948d947feeb3d73e98eda8ed2fbd6111857bb2e2c00d32813b18f57f482393a15bceb9b694909360ff16929182019083908111156110db57fe5b60ff1681526020019250505060405180910390a45060019695505050505050565b600454600160a060020a0316331461111357600080fd5b6000600a541115801561112857506008548110155b151561113357600080fd5b600a55565b600e5481565b60125481565b60075481565b600081815260136020526040812081600382015460ff16600281111561116c57fe5b1461117657600080fd5b600454600160a060020a031633148061119b57506001810154600160a060020a031633145b15156111a657600080fd5b600301805461ff001916610100179055506001919050565b6000818152601360205260408120818080808080600387015460ff1660028111156111e557fe5b146111ef57600080fd5b600454600160a060020a031633148061121157508554600160a060020a031633145b151561121c57600080fd5b60018601546002870154601254309750600160a060020a0390921695509350611254906103e890610af190869063ffffffff6124d516565b9150611266838363ffffffff61231e16565b600160a060020a038616600090815260156020526040902054909350611292908463ffffffff61231e16565b600160a060020a0380871660009081526015602052604080822093909355908616815220546112c7908463ffffffff61233016565b600160a060020a03808616600081815260156020908152604091829020949094558051878152905191939289169260008051602061257383398151915292918290030190a3600160a060020a038516600090815260156020526040902054611335908363ffffffff61231e16565b600160a060020a03808716600090815260156020526040808220939093556014549091168152205461136d908363ffffffff61233016565b60148054600160a060020a0390811660009081526015602090815260409182902094909455915482518681529251908216939189169260008051602061257383398151915292908290030190a3600160a060020a03851660009081526017602052604081205411156113fa57600160a060020a03851660009081526017602052604081206113fa916124f9565b50600160a060020a038084166000908152601760208181526040808420815180830183526001608060020a03808a16825267ffffffffffffffff42818116848801818152865460018181018955978c52898c2096519601805491518516608060020a9081026000805160206125538339815191529888166001608060020a031994851617891617909155601454909c168b52988852868a2087518089019098528c8516885287890191825280548088018255908b529790992095519590960180549851909116909802931695909416949094179092169190911790925560038701805460ff1916828002179055506001860154865460028089015460038a0154604051828152600160a060020a0395861695909416938d937feeb3d73e98eda8ed2fbd6111857bb2e2c00d32813b18f57f482393a15bceb9b6939260ff1691906020820190839081111561154a57fe5b60ff1681526020019250505060405180910390a4506001979650505050505050565b6000610c7c6009544361231e90919063ffffffff16565b60085481565b33600090815260106020526040812060010154819081908190819060ff16156115b157600080fd5b3360009081526010602052604090205415156115cc57600080fd5b3360008181526010602090815260408083206001818101805460ff19169091179055839055600454600160a060020a031680845260159092528220549096509194509250611620908363ffffffff61231e16565b600160a060020a038086166000908152601560205260408082209390935590851681522054611655908363ffffffff61233016565b600160a060020a03808516600081815260156020908152604091829020949094558051868152905191939288169260008051602061257383398151915292918290030190a3600160a060020a03841660009081526017602052604081205411156116da57600160a060020a03841660009081526017602052604081206116da916124f9565b50600160a060020a0392831660009081526017602081815260408084208151808301835260158452828620546001608060020a03908116825267ffffffffffffffff428116838701818152855460018082018855968b52888b2095519501805491518416608060020a9081026000805160206125538339815191529787166001608060020a0319948516178816179091559b909c1689529686528488208551808701909652988216855284860196875288548085018a5598885294909620925192909601805494519093169096029316919095161790911617909155919050565b601454600160a060020a031681565b600160a060020a031660009081526015602052604090205490565b600a5481565b6013602052600090815260409020805460018201546002830154600390930154600160a060020a0392831693919092169160ff8082169161010090041685565b6004546000908190819081908190600160a060020a0316331461184d57600080fd5b60008811801561185c57508786145b151561186757600080fd5b60009350600092505b858310156118aa5761189d87878581811061188757fe5b905060200201358561233090919063ffffffff16565b9350600190920191611870565b336000908152601560205260409020548411156118c657600080fd5b5042905060005b87811015611ac45761193c8787838181106118e457fe5b90506020020135601560008c8c8681811015156118fd57fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a031681526020019081526020016000205461233090919063ffffffff16565b601560008b8b8581811061194c57fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a0316815260200190815260200160002081905550601760008a8a84818110151561199257fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a03168152602001908152602001600020604080519081016040528089898581811015156119db57fe5b602090810292909201356001608060020a03908116845267ffffffffffffffff88811694840194909452855460018101875560009687529583902085519601805495909301516001608060020a031990951695169490941760008051602061255383398151915216608060020a939092169290920217905550888882818110611a6057fe5b90506020020135600160a060020a0316600160a060020a031633600160a060020a03166000805160206125738339815191528989858181101515611aa057fe5b905060200201356040518082815260200191505060405180910390a36001016118cd565b33600090815260156020526040902054611ae4908563ffffffff61231e16565b3360009081526015602090815260408083209390935560179052908120541115611b2057336000908152601760205260408120611b20916124f9565b336000908152601560205260408120541115611bc0573360009081526017602090815260408083208151808301835260158452918420546001608060020a03908116835267ffffffffffffffff80881684860190815283546001810185559387529490952092519290910180549351909416608060020a02600080516020612553833981519152929091166001608060020a031990931692909217161790555b50600198975050505050505050565b6004546000908190600160a060020a03163314611beb57600080fd5b600085118015611bfa57508483145b1515611c0557600080fd5b5060005b84811015611cbe57838382818110611c1d57fe5b90506020020135601060008888858181101515611c3657fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a03168152602001908152602001600020600001819055506000601060008888858181101515611c8157fe5b60209081029290920135600160a060020a03168352508101919091526040016000206001908101805460ff19169215159290921790915501611c09565b50600195945050505050565b6010602052600090815260409020805460019091015460ff1682565b600454600160a060020a031681565b6006805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109e15780601f106109b6576101008083540402835291602001916109e1565b600f5481565b600080600160a060020a0384161515611d6e57600080fd5b33600160a060020a0385161415611d8e57611d8761207e565b9150611f31565b33600090815260156020526040902054611dae908463ffffffff61231e16565b3360009081526015602052604080822092909255600160a060020a03861681522054611de0908463ffffffff61233016565b600160a060020a0385166000818152601560209081526040918290209390935580518681529051919233926000805160206125738339815191529281900390910190a3336000908152601760205260408120541115611e5157336000908152601760205260408120611e51916124f9565b50503360009081526017602081815260408084208151808301835260158452828620546001608060020a03908116825267ffffffffffffffff42818116848801818152865460018181018955978c52898c2096519601805491518516608060020a9081026000805160206125538339815191529888166001608060020a031994851617891617909155600160a060020a038e168c52998952878b208851808a019099528c86168952888a0192835280548089018255908c5298909a2096519690970180549751909216909702949091169490961693909317909216179092555b5092915050565b600a546000904290611f5b906301e1338090610af190849063ffffffff61231e16565b1515611f715767017896703a310000915061203d565b611f8e6301e13380610af1600a548461231e90919063ffffffff16565b60011415611fa55766ae153d89fe8000915061203d565b611fc26301e13380610af1600a548461231e90919063ffffffff16565b60021415611fd957665543df729c0000915061203d565b611ff66301e13380610af1600a548461231e90919063ffffffff16565b6003141561200d57662e2f6e5e148000915061203d565b61202a6301e13380610af1600a548461231e90919063ffffffff16565b6004141561203d57662714711487800091505b5090565b600b5481565b60095481565b600160a060020a03918216600090815260166020908152604080832093909416825291909152205490565b600c5481565b600080600e54600d5410151561209357600080fd5b33600090815260156020526040812054116120b1576000915061203d565b33600090815260176020526040812054116120cf576000915061203d565b6120d833610a8b565b9050600081116120eb576000915061203d565b600d546120fe908263ffffffff61233016565b600d5533600090815260156020526040902054612121908263ffffffff61233016565b3360009081526015602090815260408083209390935560179052908120612147916124f9565b3360008181526017602090815260408083208151808301835260158452828520546001608060020a03908116825267ffffffffffffffff428116838701908152845460018101865594885286882093519390940180549451909116608060020a02600080516020612553833981519152939092166001608060020a0319909416939093179190911617905580518581529051600080516020612573833981519152929181900390910190a360408051828152905133917f157fac8fd4f41c05fc4eb4fc76efaff83b44dde65830c8474bbda846b6cebbcb919081900360200190a2600191505090565b600454600160a060020a0316331461224757600080fd5b600160a060020a038116151561225c57600080fd5b6014805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03838116919091179182905560408051929091168252517fb408f9ca0555ebd07984cfda88b709f9637edae44f4be9b3e1a2c54e5ea10b5d916020908290030190a150565b600454600160a060020a031633146122da57600080fd5b600160a060020a03811615156122ef57600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60008282111561232a57fe5b50900390565b60008282018381101561233f57fe5b9392505050565b600160a060020a0382166000908152601760205260408120548190819081106123725760009250610953565b600091505b600160a060020a03851660009081526017602052604090205482101561095357600b54600160a060020a038616600090815260176020526040902080546123e7929190859081106123c457fe5b600091825260209091200154608060020a900467ffffffffffffffff1690612330565b8410156123f3576124b3565b600160a060020a0385166000908152601760205260409020805461244091908490811061241c57fe5b6000918252602090912001548590608060020a900467ffffffffffffffff1661231e565b9050600c548111156124515750600c545b6124b0612467826201518063ffffffff6124be16565b600160a060020a038716600090815260176020526040902080548590811061248b57fe5b60009182526020909120015485916001608060020a039091160263ffffffff61233016565b92505b600190910190612377565b60008082848115156124cc57fe5b04949350505050565b60008282028315806124f157508284828115156124ee57fe5b04145b151561233f57fe5b5080546000825590600052602060002090810190612517919061251a565b50565b61254f91905b8082111561203d57805477ffffffffffffffffffffffffffffffffffffffffffffffff19168155600101612520565b905600ffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffffddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820807adeda907c573622d08cd63f3f64aee4267c4dcb932586a55f86daa940b3010029
Swarm Source
bzzr://807adeda907c573622d08cd63f3f64aee4267c4dcb932586a55f86daa940b301
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.