Contract Overview
Balance:
0 FTM
FTM Value:
$0.00
My Name Tag:
Not Available, login to update
[ Download CSV Export ]
Latest 1 internal transaction
Parent Txn Hash | Block | From | To | Value | |||
---|---|---|---|---|---|---|---|
0x0db5490d118af36c122f99fab8b949723f0ab21554a07ed161416aa1334350bf | 18794912 | 538 days 5 hrs ago | Dark Matter DeFi: Deployer | Contract Creation | 0 FTM |
[ Download CSV Export ]
Contract Name:
lock_Tokens
Compiler Version
v0.4.16+commit.d7661dd9
Contract Source Code (Solidity)
/** *Submitted for verification at FtmScan.com on 2021-10-11 */ //Team Token Locking Contract pragma solidity ^0.4.16; /** * token contract functions */ contract Token { function balanceOf(address who) external view returns (uint256); function allowance(address owner, address spender) external view returns (uint256); function transfer(address to, uint256 value) external returns (bool); function approve(address spender, uint256 value) external returns (bool); function approveAndCall(address spender, uint tokens, bytes data) external returns (bool success); function transferFrom(address from, address to, uint256 value) external returns (bool); } library SafeMath { function mul(uint256 a, uint256 b) internal constant returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b); return c; } function div(uint256 a, uint256 b) internal constant returns (uint256) { uint256 c = a / b; return c; } function sub(uint256 a, uint256 b) internal constant returns (uint256) { require(b <= a); return a - b; } function add(uint256 a, uint256 b) internal constant returns (uint256) { uint256 c = a + b; require(c >= a); return c; } function ceil(uint256 a, uint256 m) internal constant returns (uint256) { uint256 c = add(a,m); uint256 d = sub(c,1); return mul(div(d,m),m); } } contract owned { address public owner; function owned() public { owner = msg.sender; } modifier onlyOwner { require(msg.sender == owner); _; } function transferOwnership(address newOwner) onlyOwner public { owner = newOwner; } } contract lock_Tokens is owned{ using SafeMath for uint256; /* * deposit vars */ struct Items { address tokenAddress; address withdrawalAddress; uint256 tokenAmount; uint256 unlockTime; bool withdrawn; } uint256 public depositId; uint256[] public allDepositIds; mapping (address => uint256[]) public depositsByWithdrawalAddress; mapping (uint256 => Items) public lockedToken; mapping (address => mapping(address => uint256)) public walletTokenBalance; event LogWithdrawal(address SentToAddress, uint256 AmountTransferred); /** *lock tokens */ function lockTokens(address _tokenAddress, address _withdrawalAddress, uint256 _amount, uint256 _unlockTime) public returns (uint256 _id) { require(_amount > 0); require(_unlockTime < 10000000000); //update balance in address walletTokenBalance[_tokenAddress][_withdrawalAddress] = walletTokenBalance[_tokenAddress][_withdrawalAddress].add(_amount); _id = ++depositId; lockedToken[_id].tokenAddress = _tokenAddress; lockedToken[_id].withdrawalAddress = _withdrawalAddress; lockedToken[_id].tokenAmount = _amount; lockedToken[_id].unlockTime = _unlockTime; lockedToken[_id].withdrawn = false; allDepositIds.push(_id); depositsByWithdrawalAddress[_withdrawalAddress].push(_id); // transfer tokens into contract require(Token(_tokenAddress).transferFrom(msg.sender, this, _amount)); } /** *Create multiple locks */ function createMultipleLocks(address _tokenAddress, address _withdrawalAddress, uint256[] _amounts, uint256[] _unlockTimes) public returns (uint256 _id) { require(_amounts.length > 0); require(_amounts.length == _unlockTimes.length); uint256 i; for(i=0; i<_amounts.length; i++){ require(_amounts[i] > 0); require(_unlockTimes[i] < 10000000000); //update balance in address walletTokenBalance[_tokenAddress][_withdrawalAddress] = walletTokenBalance[_tokenAddress][_withdrawalAddress].add(_amounts[i]); _id = ++depositId; lockedToken[_id].tokenAddress = _tokenAddress; lockedToken[_id].withdrawalAddress = _withdrawalAddress; lockedToken[_id].tokenAmount = _amounts[i]; lockedToken[_id].unlockTime = _unlockTimes[i]; lockedToken[_id].withdrawn = false; allDepositIds.push(_id); depositsByWithdrawalAddress[_withdrawalAddress].push(_id); //transfer tokens into contract require(Token(_tokenAddress).transferFrom(msg.sender, this, _amounts[i])); } } /** *Extend lock Duration */ function extendLockDuration(uint256 _id, uint256 _unlockTime) public { require(_unlockTime < 10000000000); require(_unlockTime > lockedToken[_id].unlockTime); require(!lockedToken[_id].withdrawn); require(msg.sender == lockedToken[_id].withdrawalAddress); //set new unlock time lockedToken[_id].unlockTime = _unlockTime; } /** *transfer locked tokens */ function transferLocks(uint256 _id, address _receiverAddress) public { require(!lockedToken[_id].withdrawn); require(msg.sender == lockedToken[_id].withdrawalAddress); //decrease sender's token balance walletTokenBalance[lockedToken[_id].tokenAddress][msg.sender] = walletTokenBalance[lockedToken[_id].tokenAddress][msg.sender].sub(lockedToken[_id].tokenAmount); //increase receiver's token balance walletTokenBalance[lockedToken[_id].tokenAddress][_receiverAddress] = walletTokenBalance[lockedToken[_id].tokenAddress][_receiverAddress].add(lockedToken[_id].tokenAmount); //remove this id from sender address uint256 j; uint256 arrLength = depositsByWithdrawalAddress[lockedToken[_id].withdrawalAddress].length; for (j=0; j<arrLength; j++) { if (depositsByWithdrawalAddress[lockedToken[_id].withdrawalAddress][j] == _id) { depositsByWithdrawalAddress[lockedToken[_id].withdrawalAddress][j] = depositsByWithdrawalAddress[lockedToken[_id].withdrawalAddress][arrLength - 1]; depositsByWithdrawalAddress[lockedToken[_id].withdrawalAddress].length--; break; } } //Assign this id to receiver address lockedToken[_id].withdrawalAddress = _receiverAddress; depositsByWithdrawalAddress[_receiverAddress].push(_id); } /** *withdraw tokens */ function withdrawTokens(uint256 _id) public { require(block.timestamp >= lockedToken[_id].unlockTime); require(msg.sender == lockedToken[_id].withdrawalAddress); require(!lockedToken[_id].withdrawn); lockedToken[_id].withdrawn = true; //update balance in address walletTokenBalance[lockedToken[_id].tokenAddress][msg.sender] = walletTokenBalance[lockedToken[_id].tokenAddress][msg.sender].sub(lockedToken[_id].tokenAmount); //remove this id from this address uint256 j; uint256 arrLength = depositsByWithdrawalAddress[lockedToken[_id].withdrawalAddress].length; for (j=0; j<arrLength; j++) { if (depositsByWithdrawalAddress[lockedToken[_id].withdrawalAddress][j] == _id) { depositsByWithdrawalAddress[lockedToken[_id].withdrawalAddress][j] = depositsByWithdrawalAddress[lockedToken[_id].withdrawalAddress][arrLength - 1]; depositsByWithdrawalAddress[lockedToken[_id].withdrawalAddress].length--; break; } } // transfer tokens to wallet address require(Token(lockedToken[_id].tokenAddress).transfer(msg.sender, lockedToken[_id].tokenAmount)); LogWithdrawal(msg.sender, lockedToken[_id].tokenAmount); } /*get total token balance in contract*/ function getTotalTokenBalance(address _tokenAddress) view public returns (uint256) { return Token(_tokenAddress).balanceOf(this); } /*get total token balance by address*/ function getTokenBalanceByAddress(address _tokenAddress, address _walletAddress) view public returns (uint256) { return walletTokenBalance[_tokenAddress][_walletAddress]; } /*get allDepositIds*/ function getAllDepositIds() view public returns (uint256[]) { return allDepositIds; } /*get getDepositDetails*/ function getDepositDetails(uint256 _id) view public returns (address _tokenAddress, address _withdrawalAddress, uint256 _tokenAmount, uint256 _unlockTime, bool _withdrawn) { return(lockedToken[_id].tokenAddress,lockedToken[_id].withdrawalAddress,lockedToken[_id].tokenAmount, lockedToken[_id].unlockTime,lockedToken[_id].withdrawn); } /*get DepositsByWithdrawalAddress*/ function getDepositsByWithdrawalAddress(address _withdrawalAddress) view public returns (uint256[]) { return depositsByWithdrawalAddress[_withdrawalAddress]; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"_tokenAddress","type":"address"},{"name":"_withdrawalAddress","type":"address"},{"name":"_amounts","type":"uint256[]"},{"name":"_unlockTimes","type":"uint256[]"}],"name":"createMultipleLocks","outputs":[{"name":"_id","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_withdrawalAddress","type":"address"}],"name":"getDepositsByWithdrawalAddress","outputs":[{"name":"","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_id","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenAddress","type":"address"},{"name":"_walletAddress","type":"address"}],"name":"getTokenBalanceByAddress","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_id","type":"uint256"},{"name":"_receiverAddress","type":"address"}],"name":"transferLocks","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"depositsByWithdrawalAddress","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getAllDepositIds","outputs":[{"name":"","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_id","type":"uint256"},{"name":"_unlockTime","type":"uint256"}],"name":"extendLockDuration","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenAddress","type":"address"},{"name":"_withdrawalAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_unlockTime","type":"uint256"}],"name":"lockTokens","outputs":[{"name":"_id","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_id","type":"uint256"}],"name":"getDepositDetails","outputs":[{"name":"_tokenAddress","type":"address"},{"name":"_withdrawalAddress","type":"address"},{"name":"_tokenAmount","type":"uint256"},{"name":"_unlockTime","type":"uint256"},{"name":"_withdrawn","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":"depositId","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenAddress","type":"address"}],"name":"getTotalTokenBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"walletTokenBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"lockedToken","outputs":[{"name":"tokenAddress","type":"address"},{"name":"withdrawalAddress","type":"address"},{"name":"tokenAmount","type":"uint256"},{"name":"unlockTime","type":"uint256"},{"name":"withdrawn","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"allDepositIds","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":false,"name":"SentToAddress","type":"address"},{"indexed":false,"name":"AmountTransferred","type":"uint256"}],"name":"LogWithdrawal","type":"event"}]
Contract Creation Code
60606040525b60008054600160a060020a03191633600160a060020a03161790555b5b611817806100316000396000f300606060405236156100ee5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166303a29adf81146100f35780630bd59ad3146101b9578063315a095d14610239578063347c80ba146102515780634c5f7f5414610295578063530680d8146102c65780636ba039241461030757806376704de01461036e5780637d533c1e14610389578063890db72f146103d35780638da5cb5b146104305780639852099c1461046c578063adad19bd14610491578063b9e7df1c146104cf578063bb941cff14610513578063c9028aff14610570578063f2fde38b14610598575b600080fd5b34156100fe57600080fd5b6101a773ffffffffffffffffffffffffffffffffffffffff600480358216916024803590911691906064906044359081019083013580602081810201604051908101604052809392919081815260200183836020028082843782019150505050505091908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437509496506105c695505050505050565b60405190815260200160405180910390f35b34156101c457600080fd5b6101e573ffffffffffffffffffffffffffffffffffffffff600435166108f0565b60405160208082528190810183818151815260200191508051906020019060200280838360005b838110156102255780820151818401525b60200161020c565b505050509050019250505060405180910390f35b341561024457600080fd5b61024f60043561098e565b005b341561025c57600080fd5b6101a773ffffffffffffffffffffffffffffffffffffffff60043581169060243516610db2565b60405190815260200160405180910390f35b34156102a057600080fd5b61024f60043573ffffffffffffffffffffffffffffffffffffffff60243516610dec565b005b34156102d157600080fd5b6101a773ffffffffffffffffffffffffffffffffffffffff60043516602435611184565b60405190815260200160405180910390f35b341561031257600080fd5b6101e56111b6565b60405160208082528190810183818151815260200191508051906020019060200280838360005b838110156102255780820151818401525b60200161020c565b505050509050019250505060405180910390f35b341561037957600080fd5b61024f600435602435611215565b005b341561039457600080fd5b6101a773ffffffffffffffffffffffffffffffffffffffff600435811690602435166044356064356112b3565b60405190815260200160405180910390f35b34156103de57600080fd5b6103e9600435611511565b60405173ffffffffffffffffffffffffffffffffffffffff95861681529390941660208401526040808401929092526060830152911515608082015260a001905180910390f35b341561043b57600080fd5b610443611564565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561047757600080fd5b6101a7611580565b60405190815260200160405180910390f35b341561049c57600080fd5b6101a773ffffffffffffffffffffffffffffffffffffffff60043516611586565b60405190815260200160405180910390f35b34156104da57600080fd5b6101a773ffffffffffffffffffffffffffffffffffffffff60043581169060243516611634565b60405190815260200160405180910390f35b341561051e57600080fd5b6103e9600435611651565b60405173ffffffffffffffffffffffffffffffffffffffff95861681529390941660208401526040808401929092526060830152911515608082015260a001905180910390f35b341561057b57600080fd5b6101a760043561169d565b60405190815260200160405180910390f35b34156105a357600080fd5b61024f73ffffffffffffffffffffffffffffffffffffffff600435166116c0565b005b60008060008451116105d757600080fd5b82518451146105e557600080fd5b5060005b83518110156108e657600084828151811061060057fe5b906020019060200201511161061457600080fd5b6402540be40083828151811061062657fe5b906020019060200201511061063a57600080fd5b61069284828151811061064957fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff8089166000908152600560209081526040808320938b16835292905220549063ffffffff61172d16565b73ffffffffffffffffffffffffffffffffffffffff8088166000818152600560209081526040808320948b168084529482528083209590955560018054810180825580845260049092529490912080547fffffffffffffffffffffffff0000000000000000000000000000000000000000908116909317815590930180549091169091179055915083818151811061072657fe5b9060200190602002015160008381526004602052604090206002015582818151811061074e57fe5b90602001906020020151600083815260046020819052604090912060038101929092550180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560028054600181016107aa8382611764565b916000526020600020900160005b508390555073ffffffffffffffffffffffffffffffffffffffff851660009081526003602052604090208054600181016107f28382611764565b916000526020600020900160005b508390555073ffffffffffffffffffffffffffffffffffffffff86166323b872dd333087858151811061082f57fe5b906020019060200201516000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff861602815273ffffffffffffffffffffffffffffffffffffffff93841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156108b757600080fd5b6102c65a03f115156108c857600080fd5b5050506040518051905015156108dd57600080fd5b5b6001016105e9565b5b50949350505050565b6108f861178e565b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080548060200260200160405190810160405280929190818152602001828054801561098157602002820191906000526020600020905b81548152602001906001019080831161096d575b505050505090505b919050565b60008181526004602052604081206003015481904210156109ae57600080fd5b6000838152600460205260409020600101543373ffffffffffffffffffffffffffffffffffffffff9081169116146109e557600080fd5b6000838152600460208190526040909120015460ff1615610a0557600080fd5b600083815260046020818152604080842092830180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556002830154925473ffffffffffffffffffffffffffffffffffffffff90811685526005835281852033909116855290915290912054610a869163ffffffff61174a16565b6000848152600460209081526040808320805473ffffffffffffffffffffffffffffffffffffffff9081168552600584528285203382168652845282852095909555600101549093168252600390529081205490925090505b80821015610c775760008381526004602090815260408083206001015473ffffffffffffffffffffffffffffffffffffffff16835260039091529020805484919084908110610b2a57fe5b906000526020600020900160005b50541415610c6b5760008381526004602090815260408083206001015473ffffffffffffffffffffffffffffffffffffffff1683526003909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8301908110610ba257fe5b906000526020600020900160005b505460008481526004602090815260408083206001015473ffffffffffffffffffffffffffffffffffffffff16835260039091529020805484908110610bf257fe5b906000526020600020900160005b505560008381526004602090815260408083206001015473ffffffffffffffffffffffffffffffffffffffff16835260039091529020805490610c65907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8301611764565b50610c77565b5b600190910190610adf565b600083815260046020526040808220805460029091015473ffffffffffffffffffffffffffffffffffffffff9091169263a9059cbb923392919051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff851602815273ffffffffffffffffffffffffffffffffffffffff90921660048301526024820152604401602060405180830381600087803b1515610d1f57600080fd5b6102c65a03f11515610d3057600080fd5b505050604051805190501515610d4557600080fd5b7fb4214c8c54fc7442f36d3682f59aebaf09358a4431835b30efb29d52cf9e1e9133600460008681526020019081526020016000206002015460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a15b505050565b73ffffffffffffffffffffffffffffffffffffffff8083166000908152600560209081526040808320938516835292905220545b92915050565b600082815260046020819052604082200154819060ff1615610e0d57600080fd5b6000848152600460205260409020600101543373ffffffffffffffffffffffffffffffffffffffff908116911614610e4457600080fd5b60008481526004602090815260408083206002810154905473ffffffffffffffffffffffffffffffffffffffff90811685526005845282852033909116855290925290912054610e999163ffffffff61174a16565b6000858152600460209081526040808320805473ffffffffffffffffffffffffffffffffffffffff9081168552600580855283862033831687528552838620969096556002820154915481168552948352818420948816845293909152902054610f089163ffffffff61172d16565b6000858152600460209081526040808320805473ffffffffffffffffffffffffffffffffffffffff9081168552600584528285208982168652845282852095909555600101549093168252600390529081205490925090505b808210156110f95760008481526004602090815260408083206001015473ffffffffffffffffffffffffffffffffffffffff16835260039091529020805485919084908110610fac57fe5b906000526020600020900160005b505414156110ed5760008481526004602090815260408083206001015473ffffffffffffffffffffffffffffffffffffffff1683526003909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff830190811061102457fe5b906000526020600020900160005b505460008581526004602090815260408083206001015473ffffffffffffffffffffffffffffffffffffffff1683526003909152902080548490811061107457fe5b906000526020600020900160005b505560008481526004602090815260408083206001015473ffffffffffffffffffffffffffffffffffffffff168352600390915290208054906110e7907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8301611764565b506110f9565b5b600190910190610f61565b6000848152600460209081526040808320600190810180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff89169081179091558452600390925290912080549091810161116a8382611764565b916000526020600020900160005b50859055505b50505050565b60036020528160005260406000208181548110151561119f57fe5b906000526020600020900160005b91509150505481565b6111be61178e565b600280548060200260200160405190810160405280929190818152602001828054801561120a57602002820191906000526020600020905b8154815260200190600101908083116111f6575b505050505090505b90565b6402540be400811061122657600080fd5b600082815260046020526040902060030154811161124357600080fd5b6000828152600460208190526040909120015460ff161561126357600080fd5b6000828152600460205260409020600101543373ffffffffffffffffffffffffffffffffffffffff90811691161461129a57600080fd5b60008281526004602052604090206003018190555b5050565b60008083116112c157600080fd5b6402540be40082106112d257600080fd5b73ffffffffffffffffffffffffffffffffffffffff808616600090815260056020908152604080832093881683529290522054611315908463ffffffff61172d16565b73ffffffffffffffffffffffffffffffffffffffff8087166000818152600560209081526040808320948a16808452948252808320959095556001805481018082558084526004928390529590922080547fffffffffffffffffffffffff0000000000000000000000000000000000000000908116909417815580830180549094169094179092556002808401889055600384018790559290910180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055815492935090919081016113ea8382611764565b916000526020600020900160005b508290555073ffffffffffffffffffffffffffffffffffffffff841660009081526003602052604090208054600181016114328382611764565b916000526020600020900160005b508290555073ffffffffffffffffffffffffffffffffffffffff85166323b872dd3330866000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff861602815273ffffffffffffffffffffffffffffffffffffffff93841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156114e257600080fd5b6102c65a03f115156114f357600080fd5b50505060405180519050151561150857600080fd5b5b949350505050565b60008181526004602081905260409091208054600182015460028301546003840154939094015473ffffffffffffffffffffffffffffffffffffffff9283169492909116929060ff165b91939590929450565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60015481565b60008173ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff841602815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381600087803b151561161257600080fd5b6102c65a03f1151561162357600080fd5b50505060405180519150505b919050565b600560209081526000928352604080842090915290825290205481565b60046020819052600091825260409091208054600182015460028301546003840154939094015473ffffffffffffffffffffffffffffffffffffffff9283169492909116929060ff1685565b60028054829081106116ab57fe5b906000526020600020900160005b5054905081565b6000543373ffffffffffffffffffffffffffffffffffffffff9081169116146116e857600080fd5b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555b5b50565b60008282018381101561173f57600080fd5b8091505b5092915050565b60008282111561175957600080fd5b508082035b92915050565b815481835581811511610dad57600083815260209020610dad9181019083016117ca565b5b505050565b60206040519081016040526000815290565b815481835581811511610dad57600083815260209020610dad9181019083016117ca565b5b505050565b61121291905b808211156117e457600081556001016117d0565b5090565b905600a165627a7a72305820c07ec6ee35bfca7b4da7521c2603c134dfd69fc52689eeadc474a23156373b2d0029
Deployed ByteCode Sourcemap
1755:7555:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3458:1243;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3458:1243:0;;-1:-1:-1;3458:1243:0;;-1:-1:-1;;;;;;3458:1243:0;;;;;;;;;;;;;;;;9123:178;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;8:100;52:2;45:3;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;6715:1358:0;;;;;;;;;;;;;;;;8332:190;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5208:1455;;;;;;;;;;;;;;;;;;;;2119:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8561:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;8:100;52:2;45:3;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;4758:391:0;;;;;;;;;;;;;;;;;;2448:952;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8708:362;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1427:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2051:24;;;;;;;;;;;;;;;;;;;;;;;;;;;8127:149;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2243:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2191:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2082:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1643:105;;;;;;;;;;;;;;;;;;3458:1243;3598:11;3729:9;3648:1;3630:8;:15;:19;3622:28;;;;;;3688:12;:19;3669:8;:15;:38;3661:47;;;;;;-1:-1:-1;3755:1:0;3749:945;3760:8;:15;3758:1;:17;3749:945;;;3818:1;3804:8;3813:1;3804:11;;;;;;;;;;;;;;;;:15;3796:24;;;;;;3861:11;3843:12;3856:1;3843:15;;;;;;;;;;;;;;;;:29;3835:38;;;;;;3999:70;4057:8;4066:1;4057:11;;;;;;;;;;;;;;;;3999:33;;;;;;;;:18;:33;;;;;;;;:53;;;;;;;;;;;:70;:57;:70;:::i;:::-;3943:33;;;;;;;;:18;:33;;;;;;;;:53;;;;;;;;;;;;:126;;;;4106:9;4104:11;;;;;;;4130:16;;;:11;:16;;;;;;;:45;;;;;;;;;;;4190:34;;;:55;;;;;;;;;;4104:11;-1:-1:-1;4291:8:0;4300:1;4291:8;:11;;;;;;;;;;;;;;;4260:16;;;;:11;:16;;;;;:28;;:42;4347:12;4360:1;4347:12;:15;;;;;;;;;;;;;;;4317:16;;;;:11;:16;;;;;;;;:27;;;:45;;;;4377:26;:34;;;;;;4440:13;:23;;4377:34;4440:23;;;:13;:23;;:::i;:::-;;;;;;;;;;;-1:-1:-1;4440:23:0;;;-1:-1:-1;4478:47:0;;;;;;;:27;:47;;;;;:57;;;;;;:47;:57;;:::i;:::-;;;;;;;;;;;-1:-1:-1;4478:57:0;;;-1:-1:-1;4617:33:0;;;;4651:10;4663:4;4669:8;4678:1;4669:8;:11;;;;;;;;;;;;;;;4617:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4609:73;;;;;;;;3749:945;3777:3;;3749:945;;;3458:1243;;;;;;;;:::o;9123:178::-;9212:9;;:::i;:::-;9246:27;:47;9274:18;9246:47;;;;;;;;;;;;;;;9239:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9123:178;;;;:::o;6715:1358::-;7286:9;6797:16;;;:11;:16;;;;;:27;;;7286:9;;6778:15;:46;;6770:55;;;;;;6858:16;;;;:11;:16;;;;;:34;;;6844:10;6858:34;6844:48;;;6858:34;;6844:48;6836:57;;;;;;6913:16;;;;:11;:16;;;;;;;;:26;;;;6912:27;6904:36;;;;;;6971:16;;;;:11;:16;;;;;;;;:26;;;:33;;;;7000:4;6971:33;;;7192:28;;;;7145:29;;;;;;7126:49;;:18;:49;;;;;7176:10;7126:61;;;;;;;;;;;;:95;;;:65;:95;:::i;:::-;7062:49;7081:16;;;:11;:16;;;;;;;;:29;;;;;;7062:49;;:18;:49;;;;;7112:10;7062:61;;;;;;;;;:159;;;;7081:29;7354:34;;;;;7326:63;;:27;:63;;;;;:70;7062:49;;-1:-1:-1;7326:70:0;-1:-1:-1;7407:430:0;7419:9;7417:1;:11;7407:430;;;7454:63;7482:16;;;:11;:16;;;;;;;;:34;;;;;7454:63;;:27;:63;;;;;:66;;7524:3;;7454:63;7518:1;;7454:66;;;;;;;;;;;;;;;;;;:73;7450:376;;;7617:63;7645:16;;;:11;:16;;;;;;;;:34;;;;;7617:63;;:27;:63;;;;;:78;;7681:13;;;;7617:78;;;;;;;;;;;;;;;;-1:-1:-1;7617:78:0;7548:63;7576:16;;;:11;:16;;;;;;;;:34;;;;;7548:63;;:27;:63;;;;;:66;;7612:1;;7548:66;;;;;;;;;;;;;;;;-1:-1:-1;7548:147:0;7714:63;7742:16;;;:11;:16;;;;;;;;:34;;;;;7714:63;;:27;:63;;;;;:72;;;;;;;;;:::i;:::-;;7805:5;;7450:376;7407:430;7430:3;;;;;7407:430;;;7917:16;;;;:11;:16;;;;;;:29;;7969:28;;;;;7917:29;;;;;7911:45;;7957:10;;7969:28;7917:16;7911:87;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7903:96;;;;;;;;8010:55;8024:10;8036:11;:16;8048:3;8036:16;;;;;;;;;;;:28;;;8010:55;;;;;;;;;;;;;;;;;;;;;;;6715:1358;;;;:::o;8332:190::-;8465:33;;;;8434:7;8465:33;;;:18;:33;;;;;;;;:49;;;;;;;;;;8332:190;;;;;:::o;5208:1455::-;5919:9;5297:16;;;:11;:16;;;;;;;:26;;5919:9;;5297:26;;5296:27;5288:36;;;;;;5357:16;;;;:11;:16;;;;;:34;;;5343:10;5357:34;5343:48;;;5357:34;;5343:48;5335:57;;;;;;5586:16;;;;:11;:16;;;;;;;;:28;;;;5539:29;;;;;;5520:49;;:18;:49;;;;;5570:10;5520:61;;;;;;;;;;;;:95;;;:65;:95;:::i;:::-;5456:49;5475:16;;;:11;:16;;;;;;;;:29;;;;;;5456:49;;:18;:49;;;;;;5506:10;5456:61;;;;;;;;;:159;;;;5823:28;;;;5770:29;;;;5751:49;;;;;;;;:67;;;;;;;;;;;;:101;;;:71;:101;:::i;:::-;5681:49;5700:16;;;:11;:16;;;;;;;;:29;;;;;;5681:49;;:18;:49;;;;;:67;;;;;;;;;;:171;;;;5700:29;5987:34;;;;;5959:63;;:27;:63;;;;;:70;5681:49;;-1:-1:-1;5959:70:0;-1:-1:-1;6040:430:0;6052:9;6050:1;:11;6040:430;;;6087:63;6115:16;;;:11;:16;;;;;;;;:34;;;;;6087:63;;:27;:63;;;;;:66;;6157:3;;6087:63;6151:1;;6087:66;;;;;;;;;;;;;;;;;;:73;6083:376;;;6250:63;6278:16;;;:11;:16;;;;;;;;:34;;;;;6250:63;;:27;:63;;;;;:78;;6314:13;;;;6250:78;;;;;;;;;;;;;;;;-1:-1:-1;6250:78:0;6181:63;6209:16;;;:11;:16;;;;;;;;:34;;;;;6181:63;;:27;:63;;;;;:66;;6245:1;;6181:66;;;;;;;;;;;;;;;;-1:-1:-1;6181:147:0;6347:63;6375:16;;;:11;:16;;;;;;;;:34;;;;;6347:63;;:27;:63;;;;;:72;;;;;;;;;:::i;:::-;;6438:5;;6083:376;6040:430;6063:3;;;;;6040:430;;;6536:16;;;;:11;:16;;;;;;;;:34;;;;:53;;;;;;;;;;;;;6600:45;;:27;:45;;;;;;:55;;:45;;:55;;;:45;:55;;:::i;:::-;;;;;;;;;;;-1:-1:-1;6600:55:0;;;-1:-1:-1;5208:1455:0;;;;;:::o;2119:65::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8561:104::-;8610:9;;:::i;:::-;8644:13;8637:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8561:104;;:::o;4758:391::-;4860:11;4846:25;;4838:34;;;;;;4905:16;;;;:11;:16;;;;;:27;;;4891:41;;4883:50;;;;;;4953:16;;;;:11;:16;;;;;;;;:26;;;;4952:27;4944:36;;;;;;5013:16;;;;:11;:16;;;;;:34;;;4999:10;5013:34;4999:48;;;5013:34;;4999:48;4991:57;;;;;;5100:16;;;;:11;:16;;;;;:27;;:41;;;4758:391;;;:::o;2448:952::-;2573:11;2605;;;2597:20;;;;;;2650:11;2636:25;;2628:34;;;;;;2776:33;;;;;;;;:18;:33;;;;;;;;:53;;;;;;;;;;:66;;2834:7;2776:66;:57;:66;:::i;:::-;2720:33;;;;;;;;:18;:33;;;;;;;;:53;;;;;;;;;;;;:122;;;;2871:9;2869:11;;;;;;;2891:16;;;:11;:16;;;;;;;;:45;;;;;;;;;;;2947:34;;;:55;;;;;;;;;;;3013:28;;;;:38;;;3062:27;;;:41;;;3114:26;;;;:34;;;;;;3169:23;;2869:11;;-1:-1:-1;3013:28:0;;3169:23;;;;3013:28;3169:23;;:::i;:::-;;;;;;;;;;;-1:-1:-1;3169:23:0;;;-1:-1:-1;3203:47:0;;;;;;;:27;:47;;;;;:57;;;;;;:47;:57;;:::i;:::-;;;;;;;;;;;-1:-1:-1;3203:57:0;;;-1:-1:-1;3331:33:0;;;;3365:10;3377:4;3383:7;3331:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3323:69;;;;;;;;2448:952;;;;;;;:::o;8708:362::-;8769:21;8903:16;;;:11;:16;;;;;;;;:29;;;8933:34;;;8968:28;;;;9007:27;;;;9035:26;;;;;8903:29;;;;;8933:34;;;;;9007:27;9035:26;;8708:362;;;;;;;;:::o;1427:20::-;;;;;;:::o;2051:24::-;;;;:::o;8127:149::-;8201:7;8238:13;8232:30;;;8263:4;8232:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8127:149:0;;;;:::o;2243:74::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;2191:45::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2082:30::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2082:30:0;;-1:-1:-1;2082:30:0;:::o;1643:105::-;1597:5;;1583:10;1597:5;1583:19;;;1597:5;;1583:19;1575:28;;;;;;1720:5;:16;;;;;;;;;;1618:1;1643:105;;:::o;1089:138::-;1151:7;1179:5;;;1199:6;;;;1191:15;;;;;;1220:1;1213:8;;1089:138;;;;;;:::o;965:118::-;1027:7;1051:6;;;;1043:15;;;;;;-1:-1:-1;1072:5:0;;;965:118;;;;;:::o;1755:7555::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o
Swarm Source
bzzr://c07ec6ee35bfca7b4da7521c2603c134dfd69fc52689eeadc474a23156373b2d
Age | Block | Fee Address | BC Fee Address | Voting Power | Jailed | Incoming |
---|
Validator ID :
0 FTM
Amount Staked
0
Amount Delegated
0
Staking Total
0
Staking Start Epoch
0
Staking Start Time
0
Proof of Importance
0
Origination Score
0
Validation Score
0
Active
0
Online
0
Downtime
0 s
Address | Amount | claimed Rewards | Created On Epoch | Created On |
---|
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.