Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
800,000 LV
Holders
31
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
33.786578635530583509 LVValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
LV
Compiler Version
v0.5.17+commit.d19bba13
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-09-17 */ pragma solidity 0.5.17; library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } contract LVTokenStorage { using SafeMath for uint256; bool internal _notEntered; string public name; string public symbol; uint8 public decimals; address public gov; address public pendingGov; address public rebaser; address public incentivizer; uint256 public totalSupply; uint256 public constant internalDecimals = 10**24; uint256 public constant BASE = 10**18; uint256 public lvsScalingFactor; mapping (address => uint256) internal _lvBalances; mapping (address => mapping (address => uint256)) internal _allowedFragments; uint256 public initSupply; } contract LVGovernanceStorage { mapping (address => address) internal _delegates; struct Checkpoint { uint32 fromBlock; uint256 votes; } mapping (address => mapping (uint32 => Checkpoint)) public checkpoints; mapping (address => uint32) public numCheckpoints; bytes32 public constant DOMAIN_TYPEHASH = keccak256("EIP712Domain(string name,uint256 chainId,address verifyingContract)"); bytes32 public constant DELEGATION_TYPEHASH = keccak256("Delegation(address delegatee,uint256 nonce,uint256 expiry)"); mapping (address => uint) public nonces; } contract LVTokenInterface is LVTokenStorage, LVGovernanceStorage { event DelegateChanged(address indexed delegator, address indexed fromDelegate, address indexed toDelegate); event DelegateVotesChanged(address indexed delegate, uint previousBalance, uint newBalance); event Rebase(uint256 epoch, uint256 prevLvsScalingFactor, uint256 newLvsScalingFactor); event NewPendingGov(address oldPendingGov, address newPendingGov); event NewGov(address oldGov, address newGov); event NewRebaser(address oldRebaser, address newRebaser); event NewIncentivizer(address oldIncentivizer, address newIncentivizer); event Transfer(address indexed from, address indexed to, uint amount); event Approval(address indexed owner, address indexed spender, uint amount); event Mint(address to, uint256 amount); function transfer(address to, uint256 value) external returns(bool); function transferFrom(address from, address to, uint256 value) external returns(bool); function balanceOf(address who) external view returns(uint256); function balanceOfUnderlying(address who) external view returns(uint256); function allowance(address owner_, address spender) external view returns(uint256); function approve(address spender, uint256 value) external returns (bool); function increaseAllowance(address spender, uint256 addedValue) external returns (bool); function decreaseAllowance(address spender, uint256 subtractedValue) external returns (bool); function maxScalingFactor() external view returns (uint256); function getPriorVotes(address account, uint blockNumber) external view returns (uint256); function delegateBySig(address delegatee, uint nonce, uint expiry, uint8 v, bytes32 r, bytes32 s) external; function delegate(address delegatee) external; function delegates(address delegator) external view returns (address); function getCurrentVotes(address account) external view returns (uint256); function mint(address to, uint256 amount) external returns (bool); function rebase(uint256 epoch, uint256 indexDelta, bool positive) external returns (uint256); function _setRebaser(address rebaser_) external; function _setIncentivizer(address incentivizer_) external; function _setPendingGov(address pendingGov_) external; function _acceptGov() external; } contract LVGovernanceToken is LVTokenInterface { event DelegateChanged(address indexed delegator, address indexed fromDelegate, address indexed toDelegate); event DelegateVotesChanged(address indexed delegate, uint previousBalance, uint newBalance); function delegates(address delegator) external view returns (address) { return _delegates[delegator]; } function delegate(address delegatee) external { return _delegate(msg.sender, delegatee); } function delegateBySig( address delegatee, uint nonce, uint expiry, uint8 v, bytes32 r, bytes32 s ) external { bytes32 domainSeparator = keccak256( abi.encode( DOMAIN_TYPEHASH, keccak256(bytes(name)), getChainId(), address(this) ) ); bytes32 structHash = keccak256( abi.encode( DELEGATION_TYPEHASH, delegatee, nonce, expiry ) ); bytes32 digest = keccak256( abi.encodePacked( "\x19\x01", domainSeparator, structHash ) ); address signatory = ecrecover(digest, v, r, s); require(signatory != address(0), "LV::delegateBySig: invalid signature"); require(nonce == nonces[signatory]++, "LV::delegateBySig: invalid nonce"); require(now <= expiry, "LV::delegateBySig: signature expired"); return _delegate(signatory, delegatee); } function getCurrentVotes(address account) external view returns (uint256) { uint32 nCheckpoints = numCheckpoints[account]; return nCheckpoints > 0 ? checkpoints[account][nCheckpoints - 1].votes : 0; } function getPriorVotes(address account, uint blockNumber) external view returns (uint256) { require(blockNumber < block.number, "LV::getPriorVotes: not yet determined"); uint32 nCheckpoints = numCheckpoints[account]; if (nCheckpoints == 0) { return 0; } if (checkpoints[account][nCheckpoints - 1].fromBlock <= blockNumber) { return checkpoints[account][nCheckpoints - 1].votes; } if (checkpoints[account][0].fromBlock > blockNumber) { return 0; } uint32 lower = 0; uint32 upper = nCheckpoints - 1; while (upper > lower) { uint32 center = upper - (upper - lower) / 2; // ceil, avoiding overflow Checkpoint memory cp = checkpoints[account][center]; if (cp.fromBlock == blockNumber) { return cp.votes; } else if (cp.fromBlock < blockNumber) { lower = center; } else { upper = center - 1; } } return checkpoints[account][lower].votes; } function _delegate(address delegator, address delegatee) internal { address currentDelegate = _delegates[delegator]; uint256 delegatorBalance = _lvBalances[delegator]; // balance of underlying LVs (not scaled); _delegates[delegator] = delegatee; emit DelegateChanged(delegator, currentDelegate, delegatee); _moveDelegates(currentDelegate, delegatee, delegatorBalance); } function _moveDelegates(address srcRep, address dstRep, uint256 amount) internal { if (srcRep != dstRep && amount > 0) { if (srcRep != address(0)) { // decrease old representative uint32 srcRepNum = numCheckpoints[srcRep]; uint256 srcRepOld = srcRepNum > 0 ? checkpoints[srcRep][srcRepNum - 1].votes : 0; uint256 srcRepNew = srcRepOld.sub(amount); _writeCheckpoint(srcRep, srcRepNum, srcRepOld, srcRepNew); } if (dstRep != address(0)) { // increase new representative uint32 dstRepNum = numCheckpoints[dstRep]; uint256 dstRepOld = dstRepNum > 0 ? checkpoints[dstRep][dstRepNum - 1].votes : 0; uint256 dstRepNew = dstRepOld.add(amount); _writeCheckpoint(dstRep, dstRepNum, dstRepOld, dstRepNew); } } } function _writeCheckpoint( address delegatee, uint32 nCheckpoints, uint256 oldVotes, uint256 newVotes ) internal { uint32 blockNumber = safe32(block.number, "LV::_writeCheckpoint: block number exceeds 32 bits"); if (nCheckpoints > 0 && checkpoints[delegatee][nCheckpoints - 1].fromBlock == blockNumber) { checkpoints[delegatee][nCheckpoints - 1].votes = newVotes; } else { checkpoints[delegatee][nCheckpoints] = Checkpoint(blockNumber, newVotes); numCheckpoints[delegatee] = nCheckpoints + 1; } emit DelegateVotesChanged(delegatee, oldVotes, newVotes); } function safe32(uint n, string memory errorMessage) internal pure returns (uint32) { require(n < 2**32, errorMessage); return uint32(n); } function getChainId() internal pure returns (uint) { uint256 chainId; assembly { chainId := chainid() } return chainId; } } contract LVToken is LVGovernanceToken { modifier onlyGov() { require(msg.sender == gov); _; } modifier onlyRebaser() { require(msg.sender == rebaser); _; } modifier onlyMinter() { require(msg.sender == rebaser || msg.sender == incentivizer || msg.sender == gov, "not minter"); _; } modifier validRecipient(address to) { require(to != address(0x0)); require(to != address(this)); _; } function initialize( string memory name_, string memory symbol_, uint8 decimals_ ) public { require(lvsScalingFactor == 0, "already initialized"); name = name_; symbol = symbol_; decimals = decimals_; } function maxScalingFactor() external view returns (uint256) { return _maxScalingFactor(); } function _maxScalingFactor() internal view returns (uint256) { return uint256(-1) / initSupply; } function mint(address to, uint256 amount) external onlyMinter returns (bool) { _mint(to, amount); return true; } function _mint(address to, uint256 amount) internal { totalSupply = totalSupply.add(amount); uint256 lvValue = amount.mul(internalDecimals).div(lvsScalingFactor); initSupply = initSupply.add(lvValue); require(lvsScalingFactor <= _maxScalingFactor(), "max scaling factor too low"); _lvBalances[to] = _lvBalances[to].add(lvValue); _moveDelegates(address(0), _delegates[to], lvValue); emit Mint(to, amount); } function transfer(address to, uint256 value) external validRecipient(to) returns (bool) { uint256 lvValue = value.mul(internalDecimals).div(lvsScalingFactor); _lvBalances[msg.sender] = _lvBalances[msg.sender].sub(lvValue); _lvBalances[to] = _lvBalances[to].add(lvValue); emit Transfer(msg.sender, to, value); _moveDelegates(_delegates[msg.sender], _delegates[to], lvValue); return true; } function transferFrom(address from, address to, uint256 value) external validRecipient(to) returns (bool) { _allowedFragments[from][msg.sender] = _allowedFragments[from][msg.sender].sub(value); uint256 lvValue = value.mul(internalDecimals).div(lvsScalingFactor); _lvBalances[from] = _lvBalances[from].sub(lvValue); _lvBalances[to] = _lvBalances[to].add(lvValue); emit Transfer(from, to, value); _moveDelegates(_delegates[from], _delegates[to], lvValue); return true; } function balanceOf(address who) external view returns (uint256) { return _lvBalances[who].mul(lvsScalingFactor).div(internalDecimals); } function balanceOfUnderlying(address who) external view returns (uint256) { return _lvBalances[who]; } function allowance(address owner_, address spender) external view returns (uint256) { return _allowedFragments[owner_][spender]; } function approve(address spender, uint256 value) external returns (bool) { _allowedFragments[msg.sender][spender] = value; emit Approval(msg.sender, spender, value); return true; } function increaseAllowance(address spender, uint256 addedValue) external returns (bool) { _allowedFragments[msg.sender][spender] = _allowedFragments[msg.sender][spender].add(addedValue); emit Approval(msg.sender, spender, _allowedFragments[msg.sender][spender]); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) external returns (bool) { uint256 oldValue = _allowedFragments[msg.sender][spender]; if (subtractedValue >= oldValue) { _allowedFragments[msg.sender][spender] = 0; } else { _allowedFragments[msg.sender][spender] = oldValue.sub(subtractedValue); } emit Approval(msg.sender, spender, _allowedFragments[msg.sender][spender]); return true; } function _setRebaser(address rebaser_) external onlyGov { address oldRebaser = rebaser; rebaser = rebaser_; emit NewRebaser(oldRebaser, rebaser_); } function _setIncentivizer(address incentivizer_) external onlyGov { address oldIncentivizer = incentivizer; incentivizer = incentivizer_; emit NewIncentivizer(oldIncentivizer, incentivizer_); } function _setPendingGov(address pendingGov_) external onlyGov { address oldPendingGov = pendingGov; pendingGov = pendingGov_; emit NewPendingGov(oldPendingGov, pendingGov_); } function _acceptGov() external { require(msg.sender == pendingGov, "!pending"); address oldGov = gov; gov = pendingGov; pendingGov = address(0); emit NewGov(oldGov, gov); } function rebase( uint256 epoch, uint256 indexDelta, bool positive ) external onlyRebaser returns (uint256) { if (indexDelta == 0) { emit Rebase(epoch, lvsScalingFactor, lvsScalingFactor); return totalSupply; } uint256 prevLvsScalingFactor = lvsScalingFactor; if (!positive) { lvsScalingFactor = lvsScalingFactor.mul(BASE.sub(indexDelta)).div(BASE); } else { uint256 newScalingFactor = lvsScalingFactor.mul(BASE.add(indexDelta)).div(BASE); if (newScalingFactor < _maxScalingFactor()) { lvsScalingFactor = newScalingFactor; } else { lvsScalingFactor = _maxScalingFactor(); } } totalSupply = initSupply.mul(lvsScalingFactor); emit Rebase(epoch, prevLvsScalingFactor, lvsScalingFactor); return totalSupply; } } contract LV is LVToken { function initialize( string memory name_, string memory symbol_, uint8 decimals_, address initial_owner, uint256 initSupply_ ) public { require(initSupply_ > 0, "0 init supply"); super.initialize(name_, symbol_, decimals_); initSupply = initSupply_.mul(10**24/ (BASE)); totalSupply = initSupply_; lvsScalingFactor = BASE; _lvBalances[initial_owner] = initSupply_.mul(10**24 / (BASE)); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegator","type":"address"},{"indexed":true,"internalType":"address","name":"fromDelegate","type":"address"},{"indexed":true,"internalType":"address","name":"toDelegate","type":"address"}],"name":"DelegateChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegate","type":"address"},{"indexed":false,"internalType":"uint256","name":"previousBalance","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newBalance","type":"uint256"}],"name":"DelegateVotesChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldGov","type":"address"},{"indexed":false,"internalType":"address","name":"newGov","type":"address"}],"name":"NewGov","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldIncentivizer","type":"address"},{"indexed":false,"internalType":"address","name":"newIncentivizer","type":"address"}],"name":"NewIncentivizer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldPendingGov","type":"address"},{"indexed":false,"internalType":"address","name":"newPendingGov","type":"address"}],"name":"NewPendingGov","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldRebaser","type":"address"},{"indexed":false,"internalType":"address","name":"newRebaser","type":"address"}],"name":"NewRebaser","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"epoch","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"prevLvsScalingFactor","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newLvsScalingFactor","type":"uint256"}],"name":"Rebase","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"constant":true,"inputs":[],"name":"BASE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"DELEGATION_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"DOMAIN_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"_acceptGov","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"incentivizer_","type":"address"}],"name":"_setIncentivizer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"pendingGov_","type":"address"}],"name":"_setPendingGov","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"rebaser_","type":"address"}],"name":"_setRebaser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"owner_","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"who","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"who","type":"address"}],"name":"balanceOfUnderlying","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint32","name":"","type":"uint32"}],"name":"checkpoints","outputs":[{"internalType":"uint32","name":"fromBlock","type":"uint32"},{"internalType":"uint256","name":"votes","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"delegatee","type":"address"}],"name":"delegate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"delegatee","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"expiry","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"delegateBySig","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"delegates","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"getCurrentVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"name":"getPriorVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"gov","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"incentivizer","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"initSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"uint8","name":"decimals_","type":"uint8"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"uint8","name":"decimals_","type":"uint8"},{"internalType":"address","name":"initial_owner","type":"address"},{"internalType":"uint256","name":"initSupply_","type":"uint256"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"internalDecimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lvsScalingFactor","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxScalingFactor","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"numCheckpoints","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"pendingGov","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"epoch","type":"uint256"},{"internalType":"uint256","name":"indexDelta","type":"uint256"},{"internalType":"bool","name":"positive","type":"bool"}],"name":"rebase","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"rebaser","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b50612563806100206000396000f3fe608060405234801561001057600080fd5b506004361061023d5760003560e01c80636fc6407c1161013b578063a457c2d7116100b8578063e7a324dc1161007c578063e7a324dc14610934578063ec342ad01461093c578063ee02a9ef14610944578063f1127ed81461094c578063fa8f34551461099e5761023d565b8063a457c2d714610841578063a9059cbb1461086d578063b4b5ea5714610899578063c3cda520146108bf578063dd62ed3e146109065761023d565b80637af548c1116100ff5780637af548c1146107ba5780637ecebe00146107e557806395d89b411461080b57806397d63f931461081357806398dca2101461081b5761023d565b80636fc6407c146106fb5780636fcfff451461070357806370a082311461074257806373f03dff14610768578063782d6fe11461078e5761023d565b806325240810116101c95780634bda2e201161018d5780634bda2e201461055f578063587cde1e146105675780635c19a95c1461058d57806364dd48f5146105b35780636c945221146105bb5761023d565b806325240810146104bb578063313ce567146104c357806339509351146104e15780633af9e6691461050d57806340c10f19146105335761023d565b806312d43a511161021057806312d43a511461033d5780631624f6c61461034557806318160ddd1461047557806320606b701461047d57806323b872dd146104855761023d565b806306fdde0314610242578063095ea7b3146102bf57806311d3e6c4146102ff57806311fd8a8314610319575b600080fd5b61024a6109c4565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028457818101518382015260200161026c565b50505050905090810190601f1680156102b15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102eb600480360360408110156102d557600080fd5b506001600160a01b038135169060200135610a51565b604080519115158252519081900360200190f35b610307610ab8565b60408051918252519081900360200190f35b610321610ac8565b604080516001600160a01b039092168252519081900360200190f35b610321610ad7565b6104736004803603606081101561035b57600080fd5b810190602081018135600160201b81111561037557600080fd5b82018360208201111561038757600080fd5b803590602001918460018302840111600160201b831117156103a857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156103fa57600080fd5b82018360208201111561040c57600080fd5b803590602001918460018302840111600160201b8311171561042d57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505050903560ff169150610aeb9050565b005b610307610b76565b610307610b7c565b6102eb6004803603606081101561049b57600080fd5b506001600160a01b03813581169160208101359091169060400135610b97565b610321610d41565b6104cb610d50565b6040805160ff9092168252519081900360200190f35b6102eb600480360360408110156104f757600080fd5b506001600160a01b038135169060200135610d59565b6103076004803603602081101561052357600080fd5b50356001600160a01b0316610df2565b6102eb6004803603604081101561054957600080fd5b506001600160a01b038135169060200135610e0d565b610473610e9e565b6103216004803603602081101561057d57600080fd5b50356001600160a01b0316610f69565b610473600480360360208110156105a357600080fd5b50356001600160a01b0316610f87565b610307610f94565b610473600480360360a08110156105d157600080fd5b810190602081018135600160201b8111156105eb57600080fd5b8201836020820111156105fd57600080fd5b803590602001918460018302840111600160201b8311171561061e57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561067057600080fd5b82018360208201111561068257600080fd5b803590602001918460018302840111600160201b831117156106a357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505050813560ff1692505060208101356001600160a01b03169060400135610fa2565b610321611066565b6107296004803603602081101561071957600080fd5b50356001600160a01b0316611075565b6040805163ffffffff9092168252519081900360200190f35b6103076004803603602081101561075857600080fd5b50356001600160a01b031661108d565b6104736004803603602081101561077e57600080fd5b50356001600160a01b03166110cb565b610307600480360360408110156107a457600080fd5b506001600160a01b03813516906020013561114a565b610307600480360360608110156107d057600080fd5b50803590602081013590604001351515611352565b610307600480360360208110156107fb57600080fd5b50356001600160a01b03166114ad565b61024a6114bf565b610307611517565b6104736004803603602081101561083157600080fd5b50356001600160a01b031661151d565b6102eb6004803603604081101561085757600080fd5b506001600160a01b03813516906020013561159c565b6102eb6004803603604081101561088357600080fd5b506001600160a01b03813516906020013561168b565b610307600480360360208110156108af57600080fd5b50356001600160a01b03166117c1565b610473600480360360c08110156108d557600080fd5b506001600160a01b038135169060208101359060408101359060ff6060820135169060808101359060a00135611824565b6103076004803603604081101561091c57600080fd5b506001600160a01b0381358116916020013516611b0b565b610307611b36565b610307611b51565b610307611b5d565b61097e6004803603604081101561096257600080fd5b5080356001600160a01b0316906020013563ffffffff16611b63565b6040805163ffffffff909316835260208301919091528051918290030190f35b610473600480360360208110156109b457600080fd5b50356001600160a01b0316611b90565b60018054604080516020600284861615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610a495780601f10610a1e57610100808354040283529160200191610a49565b820191906000526020600020905b815481529060010190602001808311610a2c57829003601f168201915b505050505081565b336000818152600a602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b6000610ac2611c0f565b90505b90565b6005546001600160a01b031681565b60035461010090046001600160a01b031681565b60085415610b36576040805162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b604482015290519081900360640190fd5b8251610b49906001906020860190612342565b508151610b5d906002906020850190612342565b506003805460ff191660ff929092169190911790555050565b60075481565b60405180604361242482396043019050604051809103902081565b6000826001600160a01b038116610bad57600080fd5b6001600160a01b038116301415610bc357600080fd5b6001600160a01b0385166000908152600a60209081526040808320338452909152902054610bf7908463ffffffff611c2416565b6001600160a01b0386166000908152600a60209081526040808320338452909152812091909155600854610c4b90610c3f8669d3c21bcecceda100000063ffffffff611c6616565b9063ffffffff611cbf16565b6001600160a01b038716600090815260096020526040902054909150610c77908263ffffffff611c2416565b6001600160a01b038088166000908152600960205260408082209390935590871681522054610cac908263ffffffff611d0116565b6001600160a01b0380871660008181526009602090815260409182902094909455805188815290519193928a16927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a36001600160a01b038087166000908152600c6020526040808220548884168352912054610d3592918216911683611d5b565b50600195945050505050565b6004546001600160a01b031681565b60035460ff1681565b336000908152600a602090815260408083206001600160a01b0386168452909152812054610d8d908363ffffffff611d0116565b336000818152600a602090815260408083206001600160a01b0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b6001600160a01b031660009081526009602052604090205490565b6005546000906001600160a01b0316331480610e3357506006546001600160a01b031633145b80610e4d575060035461010090046001600160a01b031633145b610e8b576040805162461bcd60e51b815260206004820152600a6024820152693737ba1036b4b73a32b960b11b604482015290519081900360640190fd5b610e958383611ea9565b50600192915050565b6004546001600160a01b03163314610ee8576040805162461bcd60e51b81526020600482015260086024820152672170656e64696e6760c01b604482015290519081900360640190fd5b60038054600480546001600160a01b03818116610100908102610100600160a81b0319861617958690556001600160a01b031990921690925560408051938290048316808552919094049091166020830152825190927f1f14cfc03e486d23acee577b07bc0b3b23f4888c91fcdba5e0fef5a2549d5523928290030190a150565b6001600160a01b039081166000908152600c60205260409020541690565b610f913382612000565b50565b69d3c21bcecceda100000081565b60008111610fe7576040805162461bcd60e51b815260206004820152600d60248201526c3020696e697420737570706c7960981b604482015290519081900360640190fd5b610ff2858585610aeb565b611019670de0b6b3a764000069d3c21bcecceda10000005b8391900463ffffffff611c6616565b600b556007819055670de0b6b3a764000060088190556110439069d3c21bcecceda100000061100a565b6001600160a01b0390921660009081526009602052604090209190915550505050565b6006546001600160a01b031681565b600e6020526000908152604090205463ffffffff1681565b6008546001600160a01b0382166000908152600960205260408120549091610ab29169d3c21bcecceda100000091610c3f919063ffffffff611c6616565b60035461010090046001600160a01b031633146110e757600080fd5b600480546001600160a01b038381166001600160a01b0319831681179093556040805191909216808252602082019390935281517f6163d5b9efd962645dd649e6e48a61bcb0f9df00997a2398b80d135a9ab0c61e929181900390910190a15050565b600043821061118a5760405162461bcd60e51b81526004018080602001828103825260258152602001806124886025913960400191505060405180910390fd5b6001600160a01b0383166000908152600e602052604090205463ffffffff16806111b8576000915050610ab2565b6001600160a01b0384166000908152600d6020908152604080832063ffffffff600019860181168552925290912054168310611227576001600160a01b0384166000908152600d602090815260408083206000199490940163ffffffff16835292905220600101549050610ab2565b6001600160a01b0384166000908152600d6020908152604080832083805290915290205463ffffffff16831015611262576000915050610ab2565b600060001982015b8163ffffffff168163ffffffff16111561131b57600282820363ffffffff160481036112946123c0565b506001600160a01b0387166000908152600d6020908152604080832063ffffffff8086168552908352928190208151808301909252805490931680825260019093015491810191909152908714156112f657602001519450610ab29350505050565b805163ffffffff1687111561130d57819350611314565b6001820392505b505061126a565b506001600160a01b0385166000908152600d6020908152604080832063ffffffff9094168352929052206001015491505092915050565b6005546000906001600160a01b0316331461136c57600080fd5b826113bd57600854604080518681526020810183905280820192909252517fc6642d24d84e7f3d36ca39f5cce10e75639d9b158d5193aa350e2f900653e4c09181900360600190a1506007546114a6565b600854826113fb576113f3670de0b6b3a7640000610c3f6113e4828863ffffffff611c2416565b6008549063ffffffff611c6616565b600855611445565b600061141c670de0b6b3a7640000610c3f6113e4828963ffffffff611d0116565b9050611426611c0f565b811015611437576008819055611443565b61143f611c0f565b6008555b505b600854600b5461145a9163ffffffff611c6616565b600755600854604080518781526020810184905280820192909252517fc6642d24d84e7f3d36ca39f5cce10e75639d9b158d5193aa350e2f900653e4c09181900360600190a150506007545b9392505050565b600f6020526000908152604090205481565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015610a495780601f10610a1e57610100808354040283529160200191610a49565b600b5481565b60035461010090046001600160a01b0316331461153957600080fd5b600680546001600160a01b038381166001600160a01b0319831681179093556040805191909216808252602082019390935281517f2ee668ca7d17a9122dc00c0bfd73b684f2f7d681f17733cc02b294f69f1b3896929181900390910190a15050565b336000908152600a602090815260408083206001600160a01b03861684529091528120548083106115f057336000908152600a602090815260408083206001600160a01b0388168452909152812055611625565b611600818463ffffffff611c2416565b336000908152600a602090815260408083206001600160a01b03891684529091529020555b336000818152600a602090815260408083206001600160a01b0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6000826001600160a01b0381166116a157600080fd5b6001600160a01b0381163014156116b757600080fd5b6008546000906116db90610c3f8669d3c21bcecceda100000063ffffffff611c6616565b336000908152600960205260409020549091506116fe908263ffffffff611c2416565b33600090815260096020526040808220929092556001600160a01b03871681522054611730908263ffffffff611d0116565b6001600160a01b0386166000818152600960209081526040918290209390935580518781529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3336000908152600c6020526040808220546001600160a01b03888116845291909220546117b6928216911683611d5b565b506001949350505050565b6001600160a01b0381166000908152600e602052604081205463ffffffff16806117ec5760006114a6565b6001600160a01b0383166000908152600d6020908152604080832063ffffffff60001986011684529091529020600101549392505050565b6000604051808061242460439139604301905060405180910390206001604051808280546001816001161561010002031660029004801561189c5780601f1061187a57610100808354040283529182019161189c565b820191906000526020600020905b815481529060010190602001808311611888575b505091505060405180910390206118b1612080565b3060405160200180858152602001848152602001838152602001826001600160a01b03166001600160a01b03168152602001945050505050604051602081830303815290604052805190602001209050600060405180806124d1603a91396040805191829003603a0182206020808401919091526001600160a01b038c1683830152606083018b905260808084018b90528251808503909101815260a08401835280519082012061190160f01b60c085015260c2840187905260e2808501829052835180860390910181526101028501808552815191840191909120600091829052610122860180865281905260ff8c1661014287015261016286018b905261018286018a9052935191965092945091926001926101a28083019392601f198301929081900390910190855afa1580156119ef573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116611a415760405162461bcd60e51b815260040180806020018281038252602481526020018061250b6024913960400191505060405180910390fd5b6001600160a01b0381166000908152600f602052604090208054600181019091558914611ab5576040805162461bcd60e51b815260206004820181905260248201527f4c563a3a64656c656761746542795369673a20696e76616c6964206e6f6e6365604482015290519081900360640190fd5b87421115611af45760405162461bcd60e51b81526004018080602001828103825260248152602001806124ad6024913960400191505060405180910390fd5b611afe818b612000565b505050505b505050505050565b6001600160a01b039182166000908152600a6020908152604080832093909416825291909152205490565b60405180603a6124d18239603a019050604051809103902081565b670de0b6b3a764000081565b60085481565b600d6020908152600092835260408084209091529082529020805460019091015463ffffffff9091169082565b60035461010090046001600160a01b03163314611bac57600080fd5b600580546001600160a01b038381166001600160a01b0319831681179093556040805191909216808252602082019390935281517f51f448520e2183de499e224808a409ee01a1f380edb2e8497572320c15030545929181900390910190a15050565b6000600b5460001981611c1e57fe5b04905090565b60006114a683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612084565b600082611c7557506000610ab2565b82820282848281611c8257fe5b04146114a65760405162461bcd60e51b81526004018080602001828103825260218152602001806124676021913960400191505060405180910390fd5b60006114a683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061211b565b6000828201838110156114a6576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b816001600160a01b0316836001600160a01b031614158015611d7d5750600081115b15611ea4576001600160a01b03831615611e15576001600160a01b0383166000908152600e602052604081205463ffffffff169081611dbd576000611def565b6001600160a01b0385166000908152600d6020908152604080832063ffffffff60001987011684529091529020600101545b90506000611e03828563ffffffff611c2416565b9050611e1186848484612180565b5050505b6001600160a01b03821615611ea4576001600160a01b0382166000908152600e602052604081205463ffffffff169081611e50576000611e82565b6001600160a01b0384166000908152600d6020908152604080832063ffffffff60001987011684529091529020600101545b90506000611e96828563ffffffff611d0116565b9050611b0385848484612180565b505050565b600754611ebc908263ffffffff611d0116565b600755600854600090611ee390610c3f8469d3c21bcecceda100000063ffffffff611c6616565b600b54909150611ef9908263ffffffff611d0116565b600b55611f04611c0f565b6008541115611f5a576040805162461bcd60e51b815260206004820152601a60248201527f6d6178207363616c696e6720666163746f7220746f6f206c6f77000000000000604482015290519081900360640190fd5b6001600160a01b038316600090815260096020526040902054611f83908263ffffffff611d0116565b6001600160a01b03808516600090815260096020908152604080832094909455600c905291822054611fb792911683611d5b565b604080516001600160a01b03851681526020810184905281517f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885929181900390910190a1505050565b6001600160a01b038083166000818152600c6020818152604080842080546009845282862054949093528787166001600160a01b03198416811790915590519190951694919391928592917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a461207a828483611d5b565b50505050565b4690565b600081848411156121135760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156120d85781810151838201526020016120c0565b50505050905090810190601f1680156121055780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000818361216a5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156120d85781810151838201526020016120c0565b50600083858161217657fe5b0495945050505050565b60006121a4436040518060600160405280603281526020016123f2603291396122e5565b905060008463ffffffff161180156121ed57506001600160a01b0385166000908152600d6020908152604080832063ffffffff6000198901811685529252909120548282169116145b1561222a576001600160a01b0385166000908152600d6020908152604080832063ffffffff6000198901168452909152902060010182905561229b565b60408051808201825263ffffffff808416825260208083018681526001600160a01b038a166000818152600d84528681208b8616825284528681209551865490861663ffffffff199182161787559251600196870155908152600e9092529390208054928801909116919092161790555b604080518481526020810184905281516001600160a01b038816927fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724928290030190a25050505050565b600081600160201b841061233a5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156120d85781810151838201526020016120c0565b509192915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061238357805160ff19168380011785556123b0565b828001600101855582156123b0579182015b828111156123b0578251825591602001919060010190612395565b506123bc9291506123d7565b5090565b604080518082019091526000808252602082015290565b610ac591905b808211156123bc57600081556001016123dd56fe4c563a3a5f7772697465436865636b706f696e743a20626c6f636b206e756d62657220657863656564732033322062697473454950373132446f6d61696e28737472696e67206e616d652c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e747261637429536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774c563a3a6765745072696f72566f7465733a206e6f74207965742064657465726d696e65644c563a3a64656c656761746542795369673a207369676e6174757265206578706972656444656c65676174696f6e28616464726573732064656c6567617465652c75696e74323536206e6f6e63652c75696e7432353620657870697279294c563a3a64656c656761746542795369673a20696e76616c6964207369676e6174757265a265627a7a72315820af15ad4a67d2e6dda41fe36488a5b57237e8795146fd96728f535ea458fb1fe064736f6c63430005110032
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061023d5760003560e01c80636fc6407c1161013b578063a457c2d7116100b8578063e7a324dc1161007c578063e7a324dc14610934578063ec342ad01461093c578063ee02a9ef14610944578063f1127ed81461094c578063fa8f34551461099e5761023d565b8063a457c2d714610841578063a9059cbb1461086d578063b4b5ea5714610899578063c3cda520146108bf578063dd62ed3e146109065761023d565b80637af548c1116100ff5780637af548c1146107ba5780637ecebe00146107e557806395d89b411461080b57806397d63f931461081357806398dca2101461081b5761023d565b80636fc6407c146106fb5780636fcfff451461070357806370a082311461074257806373f03dff14610768578063782d6fe11461078e5761023d565b806325240810116101c95780634bda2e201161018d5780634bda2e201461055f578063587cde1e146105675780635c19a95c1461058d57806364dd48f5146105b35780636c945221146105bb5761023d565b806325240810146104bb578063313ce567146104c357806339509351146104e15780633af9e6691461050d57806340c10f19146105335761023d565b806312d43a511161021057806312d43a511461033d5780631624f6c61461034557806318160ddd1461047557806320606b701461047d57806323b872dd146104855761023d565b806306fdde0314610242578063095ea7b3146102bf57806311d3e6c4146102ff57806311fd8a8314610319575b600080fd5b61024a6109c4565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028457818101518382015260200161026c565b50505050905090810190601f1680156102b15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102eb600480360360408110156102d557600080fd5b506001600160a01b038135169060200135610a51565b604080519115158252519081900360200190f35b610307610ab8565b60408051918252519081900360200190f35b610321610ac8565b604080516001600160a01b039092168252519081900360200190f35b610321610ad7565b6104736004803603606081101561035b57600080fd5b810190602081018135600160201b81111561037557600080fd5b82018360208201111561038757600080fd5b803590602001918460018302840111600160201b831117156103a857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156103fa57600080fd5b82018360208201111561040c57600080fd5b803590602001918460018302840111600160201b8311171561042d57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505050903560ff169150610aeb9050565b005b610307610b76565b610307610b7c565b6102eb6004803603606081101561049b57600080fd5b506001600160a01b03813581169160208101359091169060400135610b97565b610321610d41565b6104cb610d50565b6040805160ff9092168252519081900360200190f35b6102eb600480360360408110156104f757600080fd5b506001600160a01b038135169060200135610d59565b6103076004803603602081101561052357600080fd5b50356001600160a01b0316610df2565b6102eb6004803603604081101561054957600080fd5b506001600160a01b038135169060200135610e0d565b610473610e9e565b6103216004803603602081101561057d57600080fd5b50356001600160a01b0316610f69565b610473600480360360208110156105a357600080fd5b50356001600160a01b0316610f87565b610307610f94565b610473600480360360a08110156105d157600080fd5b810190602081018135600160201b8111156105eb57600080fd5b8201836020820111156105fd57600080fd5b803590602001918460018302840111600160201b8311171561061e57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561067057600080fd5b82018360208201111561068257600080fd5b803590602001918460018302840111600160201b831117156106a357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505050813560ff1692505060208101356001600160a01b03169060400135610fa2565b610321611066565b6107296004803603602081101561071957600080fd5b50356001600160a01b0316611075565b6040805163ffffffff9092168252519081900360200190f35b6103076004803603602081101561075857600080fd5b50356001600160a01b031661108d565b6104736004803603602081101561077e57600080fd5b50356001600160a01b03166110cb565b610307600480360360408110156107a457600080fd5b506001600160a01b03813516906020013561114a565b610307600480360360608110156107d057600080fd5b50803590602081013590604001351515611352565b610307600480360360208110156107fb57600080fd5b50356001600160a01b03166114ad565b61024a6114bf565b610307611517565b6104736004803603602081101561083157600080fd5b50356001600160a01b031661151d565b6102eb6004803603604081101561085757600080fd5b506001600160a01b03813516906020013561159c565b6102eb6004803603604081101561088357600080fd5b506001600160a01b03813516906020013561168b565b610307600480360360208110156108af57600080fd5b50356001600160a01b03166117c1565b610473600480360360c08110156108d557600080fd5b506001600160a01b038135169060208101359060408101359060ff6060820135169060808101359060a00135611824565b6103076004803603604081101561091c57600080fd5b506001600160a01b0381358116916020013516611b0b565b610307611b36565b610307611b51565b610307611b5d565b61097e6004803603604081101561096257600080fd5b5080356001600160a01b0316906020013563ffffffff16611b63565b6040805163ffffffff909316835260208301919091528051918290030190f35b610473600480360360208110156109b457600080fd5b50356001600160a01b0316611b90565b60018054604080516020600284861615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610a495780601f10610a1e57610100808354040283529160200191610a49565b820191906000526020600020905b815481529060010190602001808311610a2c57829003601f168201915b505050505081565b336000818152600a602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b6000610ac2611c0f565b90505b90565b6005546001600160a01b031681565b60035461010090046001600160a01b031681565b60085415610b36576040805162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b604482015290519081900360640190fd5b8251610b49906001906020860190612342565b508151610b5d906002906020850190612342565b506003805460ff191660ff929092169190911790555050565b60075481565b60405180604361242482396043019050604051809103902081565b6000826001600160a01b038116610bad57600080fd5b6001600160a01b038116301415610bc357600080fd5b6001600160a01b0385166000908152600a60209081526040808320338452909152902054610bf7908463ffffffff611c2416565b6001600160a01b0386166000908152600a60209081526040808320338452909152812091909155600854610c4b90610c3f8669d3c21bcecceda100000063ffffffff611c6616565b9063ffffffff611cbf16565b6001600160a01b038716600090815260096020526040902054909150610c77908263ffffffff611c2416565b6001600160a01b038088166000908152600960205260408082209390935590871681522054610cac908263ffffffff611d0116565b6001600160a01b0380871660008181526009602090815260409182902094909455805188815290519193928a16927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a36001600160a01b038087166000908152600c6020526040808220548884168352912054610d3592918216911683611d5b565b50600195945050505050565b6004546001600160a01b031681565b60035460ff1681565b336000908152600a602090815260408083206001600160a01b0386168452909152812054610d8d908363ffffffff611d0116565b336000818152600a602090815260408083206001600160a01b0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b6001600160a01b031660009081526009602052604090205490565b6005546000906001600160a01b0316331480610e3357506006546001600160a01b031633145b80610e4d575060035461010090046001600160a01b031633145b610e8b576040805162461bcd60e51b815260206004820152600a6024820152693737ba1036b4b73a32b960b11b604482015290519081900360640190fd5b610e958383611ea9565b50600192915050565b6004546001600160a01b03163314610ee8576040805162461bcd60e51b81526020600482015260086024820152672170656e64696e6760c01b604482015290519081900360640190fd5b60038054600480546001600160a01b03818116610100908102610100600160a81b0319861617958690556001600160a01b031990921690925560408051938290048316808552919094049091166020830152825190927f1f14cfc03e486d23acee577b07bc0b3b23f4888c91fcdba5e0fef5a2549d5523928290030190a150565b6001600160a01b039081166000908152600c60205260409020541690565b610f913382612000565b50565b69d3c21bcecceda100000081565b60008111610fe7576040805162461bcd60e51b815260206004820152600d60248201526c3020696e697420737570706c7960981b604482015290519081900360640190fd5b610ff2858585610aeb565b611019670de0b6b3a764000069d3c21bcecceda10000005b8391900463ffffffff611c6616565b600b556007819055670de0b6b3a764000060088190556110439069d3c21bcecceda100000061100a565b6001600160a01b0390921660009081526009602052604090209190915550505050565b6006546001600160a01b031681565b600e6020526000908152604090205463ffffffff1681565b6008546001600160a01b0382166000908152600960205260408120549091610ab29169d3c21bcecceda100000091610c3f919063ffffffff611c6616565b60035461010090046001600160a01b031633146110e757600080fd5b600480546001600160a01b038381166001600160a01b0319831681179093556040805191909216808252602082019390935281517f6163d5b9efd962645dd649e6e48a61bcb0f9df00997a2398b80d135a9ab0c61e929181900390910190a15050565b600043821061118a5760405162461bcd60e51b81526004018080602001828103825260258152602001806124886025913960400191505060405180910390fd5b6001600160a01b0383166000908152600e602052604090205463ffffffff16806111b8576000915050610ab2565b6001600160a01b0384166000908152600d6020908152604080832063ffffffff600019860181168552925290912054168310611227576001600160a01b0384166000908152600d602090815260408083206000199490940163ffffffff16835292905220600101549050610ab2565b6001600160a01b0384166000908152600d6020908152604080832083805290915290205463ffffffff16831015611262576000915050610ab2565b600060001982015b8163ffffffff168163ffffffff16111561131b57600282820363ffffffff160481036112946123c0565b506001600160a01b0387166000908152600d6020908152604080832063ffffffff8086168552908352928190208151808301909252805490931680825260019093015491810191909152908714156112f657602001519450610ab29350505050565b805163ffffffff1687111561130d57819350611314565b6001820392505b505061126a565b506001600160a01b0385166000908152600d6020908152604080832063ffffffff9094168352929052206001015491505092915050565b6005546000906001600160a01b0316331461136c57600080fd5b826113bd57600854604080518681526020810183905280820192909252517fc6642d24d84e7f3d36ca39f5cce10e75639d9b158d5193aa350e2f900653e4c09181900360600190a1506007546114a6565b600854826113fb576113f3670de0b6b3a7640000610c3f6113e4828863ffffffff611c2416565b6008549063ffffffff611c6616565b600855611445565b600061141c670de0b6b3a7640000610c3f6113e4828963ffffffff611d0116565b9050611426611c0f565b811015611437576008819055611443565b61143f611c0f565b6008555b505b600854600b5461145a9163ffffffff611c6616565b600755600854604080518781526020810184905280820192909252517fc6642d24d84e7f3d36ca39f5cce10e75639d9b158d5193aa350e2f900653e4c09181900360600190a150506007545b9392505050565b600f6020526000908152604090205481565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015610a495780601f10610a1e57610100808354040283529160200191610a49565b600b5481565b60035461010090046001600160a01b0316331461153957600080fd5b600680546001600160a01b038381166001600160a01b0319831681179093556040805191909216808252602082019390935281517f2ee668ca7d17a9122dc00c0bfd73b684f2f7d681f17733cc02b294f69f1b3896929181900390910190a15050565b336000908152600a602090815260408083206001600160a01b03861684529091528120548083106115f057336000908152600a602090815260408083206001600160a01b0388168452909152812055611625565b611600818463ffffffff611c2416565b336000908152600a602090815260408083206001600160a01b03891684529091529020555b336000818152600a602090815260408083206001600160a01b0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6000826001600160a01b0381166116a157600080fd5b6001600160a01b0381163014156116b757600080fd5b6008546000906116db90610c3f8669d3c21bcecceda100000063ffffffff611c6616565b336000908152600960205260409020549091506116fe908263ffffffff611c2416565b33600090815260096020526040808220929092556001600160a01b03871681522054611730908263ffffffff611d0116565b6001600160a01b0386166000818152600960209081526040918290209390935580518781529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3336000908152600c6020526040808220546001600160a01b03888116845291909220546117b6928216911683611d5b565b506001949350505050565b6001600160a01b0381166000908152600e602052604081205463ffffffff16806117ec5760006114a6565b6001600160a01b0383166000908152600d6020908152604080832063ffffffff60001986011684529091529020600101549392505050565b6000604051808061242460439139604301905060405180910390206001604051808280546001816001161561010002031660029004801561189c5780601f1061187a57610100808354040283529182019161189c565b820191906000526020600020905b815481529060010190602001808311611888575b505091505060405180910390206118b1612080565b3060405160200180858152602001848152602001838152602001826001600160a01b03166001600160a01b03168152602001945050505050604051602081830303815290604052805190602001209050600060405180806124d1603a91396040805191829003603a0182206020808401919091526001600160a01b038c1683830152606083018b905260808084018b90528251808503909101815260a08401835280519082012061190160f01b60c085015260c2840187905260e2808501829052835180860390910181526101028501808552815191840191909120600091829052610122860180865281905260ff8c1661014287015261016286018b905261018286018a9052935191965092945091926001926101a28083019392601f198301929081900390910190855afa1580156119ef573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116611a415760405162461bcd60e51b815260040180806020018281038252602481526020018061250b6024913960400191505060405180910390fd5b6001600160a01b0381166000908152600f602052604090208054600181019091558914611ab5576040805162461bcd60e51b815260206004820181905260248201527f4c563a3a64656c656761746542795369673a20696e76616c6964206e6f6e6365604482015290519081900360640190fd5b87421115611af45760405162461bcd60e51b81526004018080602001828103825260248152602001806124ad6024913960400191505060405180910390fd5b611afe818b612000565b505050505b505050505050565b6001600160a01b039182166000908152600a6020908152604080832093909416825291909152205490565b60405180603a6124d18239603a019050604051809103902081565b670de0b6b3a764000081565b60085481565b600d6020908152600092835260408084209091529082529020805460019091015463ffffffff9091169082565b60035461010090046001600160a01b03163314611bac57600080fd5b600580546001600160a01b038381166001600160a01b0319831681179093556040805191909216808252602082019390935281517f51f448520e2183de499e224808a409ee01a1f380edb2e8497572320c15030545929181900390910190a15050565b6000600b5460001981611c1e57fe5b04905090565b60006114a683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612084565b600082611c7557506000610ab2565b82820282848281611c8257fe5b04146114a65760405162461bcd60e51b81526004018080602001828103825260218152602001806124676021913960400191505060405180910390fd5b60006114a683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061211b565b6000828201838110156114a6576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b816001600160a01b0316836001600160a01b031614158015611d7d5750600081115b15611ea4576001600160a01b03831615611e15576001600160a01b0383166000908152600e602052604081205463ffffffff169081611dbd576000611def565b6001600160a01b0385166000908152600d6020908152604080832063ffffffff60001987011684529091529020600101545b90506000611e03828563ffffffff611c2416565b9050611e1186848484612180565b5050505b6001600160a01b03821615611ea4576001600160a01b0382166000908152600e602052604081205463ffffffff169081611e50576000611e82565b6001600160a01b0384166000908152600d6020908152604080832063ffffffff60001987011684529091529020600101545b90506000611e96828563ffffffff611d0116565b9050611b0385848484612180565b505050565b600754611ebc908263ffffffff611d0116565b600755600854600090611ee390610c3f8469d3c21bcecceda100000063ffffffff611c6616565b600b54909150611ef9908263ffffffff611d0116565b600b55611f04611c0f565b6008541115611f5a576040805162461bcd60e51b815260206004820152601a60248201527f6d6178207363616c696e6720666163746f7220746f6f206c6f77000000000000604482015290519081900360640190fd5b6001600160a01b038316600090815260096020526040902054611f83908263ffffffff611d0116565b6001600160a01b03808516600090815260096020908152604080832094909455600c905291822054611fb792911683611d5b565b604080516001600160a01b03851681526020810184905281517f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885929181900390910190a1505050565b6001600160a01b038083166000818152600c6020818152604080842080546009845282862054949093528787166001600160a01b03198416811790915590519190951694919391928592917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a461207a828483611d5b565b50505050565b4690565b600081848411156121135760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156120d85781810151838201526020016120c0565b50505050905090810190601f1680156121055780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000818361216a5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156120d85781810151838201526020016120c0565b50600083858161217657fe5b0495945050505050565b60006121a4436040518060600160405280603281526020016123f2603291396122e5565b905060008463ffffffff161180156121ed57506001600160a01b0385166000908152600d6020908152604080832063ffffffff6000198901811685529252909120548282169116145b1561222a576001600160a01b0385166000908152600d6020908152604080832063ffffffff6000198901168452909152902060010182905561229b565b60408051808201825263ffffffff808416825260208083018681526001600160a01b038a166000818152600d84528681208b8616825284528681209551865490861663ffffffff199182161787559251600196870155908152600e9092529390208054928801909116919092161790555b604080518481526020810184905281516001600160a01b038816927fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724928290030190a25050505050565b600081600160201b841061233a5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156120d85781810151838201526020016120c0565b509192915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061238357805160ff19168380011785556123b0565b828001600101855582156123b0579182015b828111156123b0578251825591602001919060010190612395565b506123bc9291506123d7565b5090565b604080518082019091526000808252602082015290565b610ac591905b808211156123bc57600081556001016123dd56fe4c563a3a5f7772697465436865636b706f696e743a20626c6f636b206e756d62657220657863656564732033322062697473454950373132446f6d61696e28737472696e67206e616d652c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e747261637429536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774c563a3a6765745072696f72566f7465733a206e6f74207965742064657465726d696e65644c563a3a64656c656761746542795369673a207369676e6174757265206578706972656444656c65676174696f6e28616464726573732064656c6567617465652c75696e74323536206e6f6e63652c75696e7432353620657870697279294c563a3a64656c656761746542795369673a20696e76616c6964207369676e6174757265a265627a7a72315820af15ad4a67d2e6dda41fe36488a5b57237e8795146fd96728f535ea458fb1fe064736f6c63430005110032
Deployed Bytecode Sourcemap
17140:546:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17140:546:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1592:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;1592:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14088:235;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;14088:235:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;11560:137;;;:::i;:::-;;;;;;;;;;;;;;;;1739:22;;;:::i;:::-;;;;-1:-1:-1;;;;;1739:22:0;;;;;;;;;;;;;;1678:18;;;:::i;11265:289::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11265:289:0;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;11265:289:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;11265:289:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;11265:289:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;11265:289:0;;;;;;;;-1:-1:-1;11265:289:0;;-1:-1:-1;;;;;5:28;;2:2;;;46:1;43;36:12;2:2;11265:289:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;11265:289:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;11265:289:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;11265:289:0;;-1:-1:-1;;;11265:289:0;;;;;-1:-1:-1;11265:289:0;;-1:-1:-1;11265:289:0:i;:::-;;1806:26;;;:::i;2472:122::-;;;:::i;13002:570::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;13002:570:0;;;;;;;;;;;;;;;;;:::i;1705:25::-;;;:::i;1648:21::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14331:345;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;14331:345:0;;;;;;;;:::i;13758:140::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13758:140:0;-1:-1:-1;;;;;13758:140:0;;:::i;11856:167::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;11856:167:0;;;;;;;;:::i;15911:236::-;;;:::i;5431:149::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5431:149:0;-1:-1:-1;;;;;5431:149:0;;:::i;5588:104::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5588:104:0;-1:-1:-1;;;;;5588:104:0;;:::i;1841:49::-;;;:::i;17170:513::-;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;17170:513:0;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;17170:513:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;17170:513:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;17170:513:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;17170:513:0;;;;;;;;-1:-1:-1;17170:513:0;;-1:-1:-1;;;;;5:28;;2:2;;;46:1;43;36:12;2:2;17170:513:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;17170:513:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;17170:513:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;17170:513:0;;-1:-1:-1;;;17170:513:0;;;;;-1:-1:-1;;17170:513:0;;;;-1:-1:-1;;;;;17170:513:0;;;;;;:::i;1770:27::-;;;:::i;2416:49::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2416:49:0;-1:-1:-1;;;;;2416:49:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;13578:174;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13578:174:0;-1:-1:-1;;;;;13578:174:0;;:::i;15673:230::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15673:230:0;-1:-1:-1;;;;;15673:230:0;;:::i;7137:1162::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;7137:1162:0;;;;;;;;:::i;16155:978::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16155:978:0;;;;;;;;;;;;;;:::i;2725:39::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2725:39:0;-1:-1:-1;;;;;2725:39:0;;:::i;1619:20::-;;;:::i;2128:25::-;;;:::i;15417:248::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15417:248:0;-1:-1:-1;;;;;15417:248:0;;:::i;14684:514::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;14684:514:0;;;;;;;;:::i;12513:481::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;12513:481:0;;;;;;;;:::i;6876:255::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6876:255:0;-1:-1:-1;;;;;6876:255:0;;:::i;5700:1170::-;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;;;;;;5700:1170:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;13904:176::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;13904:176:0;;;;;;;;;;:::i;2601:117::-;;;:::i;1899:37::-;;;:::i;1945:31::-;;;:::i;2339:70::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2339:70:0;;-1:-1:-1;;;;;2339:70:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;15206:203;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15206:203:0;-1:-1:-1;;;;;15206:203:0;;:::i;1592:18::-;;;;;;;;;;;;;;;-1:-1:-1;;1592:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14088:235::-;14213:10;14173:4;14195:29;;;:17;:29;;;;;;;;-1:-1:-1;;;;;14195:38:0;;;;;;;;;;;:46;;;14257:36;;;;;;;14173:4;;14195:38;;14213:10;;14257:36;;;;;;;;-1:-1:-1;14311:4:0;14088:235;;;;;:::o;11560:137::-;11638:7;11670:19;:17;:19::i;:::-;11663:26;;11560:137;;:::o;1739:22::-;;;-1:-1:-1;;;;;1739:22:0;;:::o;1678:18::-;;;;;;-1:-1:-1;;;;;1678:18:0;;:::o;11265:289::-;11420:16;;:21;11412:53;;;;;-1:-1:-1;;;11412:53:0;;;;;;;;;;;;-1:-1:-1;;;11412:53:0;;;;;;;;;;;;;;;11476:12;;;;:4;;:12;;;;;:::i;:::-;-1:-1:-1;11499:16:0;;;;:6;;:16;;;;;:::i;:::-;-1:-1:-1;11526:8:0;:20;;-1:-1:-1;;11526:20:0;;;;;;;;;;;;-1:-1:-1;;11265:289:0:o;1806:26::-;;;;:::o;2472:122::-;2514:80;;;;;;;;;;;;;;;;;;2472:122;:::o;13002:570::-;13129:4;13107:2;-1:-1:-1;;;;;11179:18:0;;11171:27;;;;;;-1:-1:-1;;;;;11217:19:0;;11231:4;11217:19;;11209:28;;;;;;-1:-1:-1;;;;;13189:23:0;;;;;;:17;:23;;;;;;;;13213:10;13189:35;;;;;;;;:46;;13229:5;13189:46;:39;:46;:::i;:::-;-1:-1:-1;;;;;13151:23:0;;;;;;:17;:23;;;;;;;;13175:10;13151:35;;;;;;;:84;;;;13296:16;;13264:49;;:27;:5;1884:6;13264:27;:9;:27;:::i;:::-;:31;:49;:31;:49;:::i;:::-;-1:-1:-1;;;;;13344:17:0;;;;;;:11;:17;;;;;;13246:67;;-1:-1:-1;13344:30:0;;13246:67;13344:30;:21;:30;:::i;:::-;-1:-1:-1;;;;;13324:17:0;;;;;;;:11;:17;;;;;;:50;;;;13403:15;;;;;;;:28;;13423:7;13403:28;:19;:28;:::i;:::-;-1:-1:-1;;;;;13385:15:0;;;;;;;:11;:15;;;;;;;;;:46;;;;13447:25;;;;;;;13385:15;;13447:25;;;;;;;;;;;;;-1:-1:-1;;;;;13500:16:0;;;;;;;:10;:16;;;;;;;13518:14;;;;;;;;13485:57;;13500:16;;;;13518:14;13534:7;13485:14;:57::i;:::-;-1:-1:-1;13560:4:0;;13002:570;-1:-1:-1;;;;;13002:570:0:o;1705:25::-;;;-1:-1:-1;;;;;1705:25:0;;:::o;1648:21::-;;;;;;:::o;14331:345::-;14525:10;14431:4;14507:29;;;:17;:29;;;;;;;;-1:-1:-1;;;;;14507:38:0;;;;;;;;;;:54;;14550:10;14507:54;:42;:54;:::i;:::-;14471:10;14453:29;;;;:17;:29;;;;;;;;-1:-1:-1;;;;;14453:38:0;;;;;;;;;;;;:108;;;14577:69;;;;;;14453:38;;14577:69;;;;;;;;;;;-1:-1:-1;14664:4:0;14331:345;;;;:::o;13758:140::-;-1:-1:-1;;;;;13874:16:0;13844:7;13874:16;;;:11;:16;;;;;;;13758:140::o;11856:167::-;11023:7;;11954:4;;-1:-1:-1;;;;;11023:7:0;11009:10;:21;;:51;;-1:-1:-1;11048:12:0;;-1:-1:-1;;;;;11048:12:0;11034:10;:26;11009:51;:72;;;-1:-1:-1;11078:3:0;;;;;-1:-1:-1;;;;;11078:3:0;11064:10;:17;11009:72;11001:95;;;;;-1:-1:-1;;;11001:95:0;;;;;;;;;;;;-1:-1:-1;;;11001:95:0;;;;;;;;;;;;;;;11976:17;11982:2;11986:6;11976:5;:17::i;:::-;-1:-1:-1;12011:4:0;11856:167;;;;:::o;15911:236::-;15989:10;;-1:-1:-1;;;;;15989:10:0;15975;:24;15967:45;;;;;-1:-1:-1;;;15967:45:0;;;;;;;;;;;;-1:-1:-1;;;15967:45:0;;;;;;;;;;;;;;;16040:3;;;16060:10;;;-1:-1:-1;;;;;16060:10:0;;;16040:3;16054:16;;;-1:-1:-1;;;;;;16054:16:0;;;;;;;-1:-1:-1;;;;;;16081:23:0;;;;;;16120:19;;;16040:3;;;;;;16120:19;;;16135:3;;;;;;;16120:19;;;;;;16040:3;;16120:19;;;;;;;;15911:236;:::o;5431:149::-;-1:-1:-1;;;;;5551:21:0;;;5519:7;5551:21;;;:10;:21;;;;;;;;5431:149::o;5588:104::-;5652:32;5662:10;5674:9;5652;:32::i;:::-;5588:104;:::o;1841:49::-;1884:6;1841:49;:::o;17170:513::-;17401:1;17387:11;:15;17379:41;;;;;-1:-1:-1;;;17379:41:0;;;;;;;;;;;;-1:-1:-1;;;17379:41:0;;;;;;;;;;;;;;;17433:43;17450:5;17457:7;17466:9;17433:16;:43::i;:::-;17502:31;1930:6;17518;:14;17502:11;;17518:14;;17502:31;:15;:31;:::i;:::-;17489:10;:44;17544:11;:25;;;1930:6;17580:16;:23;;;17643:32;;17659:6;:15;;17643:32;-1:-1:-1;;;;;17614:26:0;;;;;;;:11;:26;;;;;:61;;;;-1:-1:-1;;;;17170:513:0:o;1770:27::-;;;-1:-1:-1;;;;;1770:27:0;;:::o;2416:49::-;;;;;;;;;;;;;;;:::o;13578:174::-;13705:16;;-1:-1:-1;;;;;13684:16:0;;13654:7;13684:16;;;:11;:16;;;;;;13654:7;;13684:60;;1884:6;;13684:38;;:16;:38;:20;:38;:::i;15673:230::-;10844:3;;;;;-1:-1:-1;;;;;10844:3:0;10830:10;:17;10822:26;;;;;;15793:10;;;-1:-1:-1;;;;;15814:24:0;;;-1:-1:-1;;;;;;15814:24:0;;;;;;;15854:41;;;15793:10;;;;15854:41;;;;;;;;;;;;;;;;;;;;;;;10859:1;15673:230;:::o;7137:1162::-;7245:7;7292:12;7278:11;:26;7270:76;;;;-1:-1:-1;;;7270:76:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7381:23:0;;7359:19;7381:23;;;:14;:23;;;;;;;;7419:17;7415:58;;7460:1;7453:8;;;;;7415:58;-1:-1:-1;;;;;7489:20:0;;;;;;:11;:20;;;;;;;;:38;-1:-1:-1;;7510:16:0;;7489:38;;;;;;;;;:48;;:63;-1:-1:-1;7485:147:0;;-1:-1:-1;;;;;7576:20:0;;;;;;:11;:20;;;;;;;;-1:-1:-1;;7597:16:0;;;;7576:38;;;;;;;;7612:1;7576:44;;;-1:-1:-1;7569:51:0;;7485:147;-1:-1:-1;;;;;7648:20:0;;;;;;:11;:20;;;;;;;;:23;;;;;;;;:33;:23;:33;:47;-1:-1:-1;7644:88:0;;;7719:1;7712:8;;;;;7644:88;7744:12;-1:-1:-1;;7786:16:0;;7813:428;7828:5;7820:13;;:5;:13;;;7813:428;;;7892:1;7875:13;;;7874:19;;;7866:27;;7935:20;;:::i;:::-;-1:-1:-1;;;;;;7958:20:0;;;;;;:11;:20;;;;;;;;:28;;;;;;;;;;;;;7935:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8005:27;;8001:229;;;8060:8;;;;-1:-1:-1;8053:15:0;;-1:-1:-1;;;;8053:15:0;8001:229;8094:12;;:26;;;-1:-1:-1;8090:140:0;;;8149:6;8141:14;;8090:140;;;8213:1;8204:6;:10;8196:18;;8090:140;7813:428;;;;;-1:-1:-1;;;;;;8258:20:0;;;;;;:11;:20;;;;;;;;:27;;;;;;;;;;:33;;;;-1:-1:-1;;7137:1162:0;;;;:::o;16155:978::-;10932:7;;16312;;-1:-1:-1;;;;;10932:7:0;10918:10;:21;10910:30;;;;;;16341:15;16337:131;;16390:16;;16376:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16445:11:0;;16438:18;;16337:131;16511:16;;16545:8;16540:429;;16588:52;1930:6;16588:42;16609:20;1930:6;16618:10;16609:20;:8;:20;:::i;:::-;16588:16;;;:42;:20;:42;:::i;:52::-;16569:16;:71;16540:429;;;16673:24;16700:52;1930:6;16700:42;16721:20;1930:6;16730:10;16721:20;:8;:20;:::i;16700:52::-;16673:79;;16790:19;:17;:19::i;:::-;16771:16;:38;16767:191;;;16830:16;:35;;;16767:191;;;16923:19;:17;:19::i;:::-;16904:16;:38;16767:191;16540:429;;17010:16;;16995:10;;:32;;;:14;:32;:::i;:::-;16981:11;:46;17079:16;;17043:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;17114:11:0;;10951:1;16155:978;;;;;:::o;2725:39::-;;;;;;;;;;;;;:::o;1619:20::-;;;;;;;;;;;;;;-1:-1:-1;;1619:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2128:25;;;;:::o;15417:248::-;10844:3;;;;;-1:-1:-1;;;;;10844:3:0;10830:10;:17;10822:26;;;;;;15543:12;;;-1:-1:-1;;;;;15566:28:0;;;-1:-1:-1;;;;;;15566:28:0;;;;;;;15610:47;;;15543:12;;;;15610:47;;;;;;;;;;;;;;;;;;;;;;;10859:1;15417:248;:::o;14684:514::-;14848:10;14789:4;14830:29;;;:17;:29;;;;;;;;-1:-1:-1;;;;;14830:38:0;;;;;;;;;;14883:27;;;14879:205;;14945:10;14968:1;14927:29;;;:17;:29;;;;;;;;-1:-1:-1;;;;;14927:38:0;;;;;;;;;:42;14879:205;;;15043:29;:8;15056:15;15043:29;:12;:29;:::i;:::-;15020:10;15002:29;;;;:17;:29;;;;;;;;-1:-1:-1;;;;;15002:38:0;;;;;;;;;:70;14879:205;15108:10;15129:29;;;;:17;:29;;;;;;;;-1:-1:-1;;;;;15099:69:0;;15129:38;;;;;;;;;;;15099:69;;;;;;;;;15108:10;15099:69;;;;;;;;;;;-1:-1:-1;15186:4:0;;14684:514;-1:-1:-1;;;14684:514:0:o;12513:481::-;12622:4;12600:2;-1:-1:-1;;;;;11179:18:0;;11171:27;;;;;;-1:-1:-1;;;;;11217:19:0;;11231:4;11217:19;;11209:28;;;;;;12694:16;;12644:15;;12662:49;;:27;:5;1884:6;12662:27;:9;:27;:::i;:49::-;12760:10;12748:23;;;;:11;:23;;;;;;12644:67;;-1:-1:-1;12748:36:0;;12644:67;12748:36;:27;:36;:::i;:::-;12734:10;12722:23;;;;:11;:23;;;;;;:62;;;;-1:-1:-1;;;;;12813:15:0;;;;;;:28;;12833:7;12813:28;:19;:28;:::i;:::-;-1:-1:-1;;;;;12795:15:0;;;;;;:11;:15;;;;;;;;;:46;;;;12857:31;;;;;;;12795:15;;12866:10;;12857:31;;;;;;;;;;12927:10;12916:22;;;;:10;:22;;;;;;;-1:-1:-1;;;;;12940:14:0;;;;;;;;;;12901:63;;12916:22;;;12940:14;12956:7;12901:14;:63::i;:::-;-1:-1:-1;12982:4:0;;12513:481;-1:-1:-1;;;;12513:481:0:o;6876:255::-;-1:-1:-1;;;;;7015:23:0;;6968:7;7015:23;;;:14;:23;;;;;;;;7056:16;:67;;7122:1;7056:67;;;-1:-1:-1;;;;;7075:20:0;;;;;;:11;:20;;;;;;;;:38;-1:-1:-1;;7096:16:0;;7075:38;;;;;;;;7111:1;7075:44;;7049:74;6876:255;-1:-1:-1;;;6876:255:0:o;5700:1170::-;5893:23;2514:80;;;;;;;;;;;;;;;;;;;6022:4;6006:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6047:12;:10;:12::i;:::-;6086:4;5943:163;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5943:163:0;-1:-1:-1;;;;;5943:163:0;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;5943:163:0;;;5919:198;;;;;;5893:224;;6130:18;2647:71;;;;;;;;;;;;;;;;;;;6175:140;;;;;;;;-1:-1:-1;;;;;6175:140:0;;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;6175:140:0;;;;;6151:175;;;;;;-1:-1:-1;;;6380:123:0;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;6380:123:0;;;;;;6356:158;;;;;;;;;-1:-1:-1;6547:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6151:175;;-1:-1:-1;6356:158:0;;-1:-1:-1;;;6547:26:0;;;;;;;6175:140;-1:-1:-1;;6547:26:0;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;6547:26:0;;-1:-1:-1;;6547:26:0;;;-1:-1:-1;;;;;;;6592:23:0;;6584:72;;;;-1:-1:-1;;;6584:72:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6684:17:0;;;;;;:6;:17;;;;;:19;;;;;;;;6675:28;;6667:73;;;;;-1:-1:-1;;;6667:73:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6766:6;6759:3;:13;;6751:62;;;;-1:-1:-1;;;6751:62:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6831:31;6841:9;6852;6831;:31::i;:::-;6824:38;;;;5700:1170;;;;;;;:::o;13904:176::-;-1:-1:-1;;;;;14038:25:0;;;14006:7;14038:25;;;:17;:25;;;;;;;;:34;;;;;;;;;;;;;13904:176::o;2601:117::-;2647:71;;;;;;;;;;;;;;;;;;2601:117;:::o;1899:37::-;1930:6;1899:37;:::o;1945:31::-;;;;:::o;2339:70::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;15206:203::-;10844:3;;;;;-1:-1:-1;;;;;10844:3:0;10830:10;:17;10822:26;;;;;;15317:7;;;-1:-1:-1;;;;;15335:18:0;;;-1:-1:-1;;;;;;15335:18:0;;;;;;;15369:32;;;15317:7;;;;15369:32;;;;;;;;;;;;;;;;;;;;;;;10859:1;15206:203;:::o;11705:143::-;11784:7;11830:10;;-1:-1:-1;;11816:24:0;;;;;;11809:31;;11705:143;:::o;242:136::-;300:7;327:43;331:1;334;327:43;;;;;;;;;;;;;;;;;:3;:43::i;584:250::-;642:7;666:6;662:47;;-1:-1:-1;696:1:0;689:8;;662:47;733:5;;;737:1;733;:5;:1;757:5;;;;;:10;749:56;;;;-1:-1:-1;;;749:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;842:132;900:7;927:39;931:1;934;927:39;;;;;;;;;;;;;;;;;:3;:39::i;53:181::-;111:7;143:5;;;167:6;;;;159:46;;;;;-1:-1:-1;;;159:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;8753:947;8859:6;-1:-1:-1;;;;;8849:16:0;:6;-1:-1:-1;;;;;8849:16:0;;;:30;;;;;8878:1;8869:6;:10;8849:30;8845:848;;;-1:-1:-1;;;;;8900:20:0;;;8896:385;;-1:-1:-1;;;;;9008:22:0;;8989:16;9008:22;;;:14;:22;;;;;;;;;9069:13;:60;;9128:1;9069:60;;;-1:-1:-1;;;;;9085:19:0;;;;;;:11;:19;;;;;;;;:34;-1:-1:-1;;9105:13:0;;9085:34;;;;;;;;9117:1;9085:40;;9069:60;9049:80;-1:-1:-1;9148:17:0;9168:21;9049:80;9182:6;9168:21;:13;:21;:::i;:::-;9148:41;;9208:57;9225:6;9233:9;9244;9255;9208:16;:57::i;:::-;8896:385;;;;-1:-1:-1;;;;;9301:20:0;;;9297:385;;-1:-1:-1;;;;;9409:22:0;;9390:16;9409:22;;;:14;:22;;;;;;;;;9470:13;:60;;9529:1;9470:60;;;-1:-1:-1;;;;;9486:19:0;;;;;;:11;:19;;;;;;;;:34;-1:-1:-1;;9506:13:0;;9486:34;;;;;;;;9518:1;9486:40;;9470:60;9450:80;-1:-1:-1;9549:17:0;9569:21;9450:80;9583:6;9569:21;:13;:21;:::i;:::-;9549:41;;9609:57;9626:6;9634:9;9645;9656;9609:16;:57::i;9297:385::-;8753:947;;;:::o;12031:474::-;12120:11;;:23;;12136:6;12120:23;:15;:23;:::i;:::-;12106:11;:37;12203:16;;12152:15;;12170:50;;:28;:6;1884;12170:28;:10;:28;:::i;:50::-;12242:10;;12152:68;;-1:-1:-1;12242:23:0;;12152:68;12242:23;:14;:23;:::i;:::-;12229:10;:36;12302:19;:17;:19::i;:::-;12282:16;;:39;;12274:78;;;;;-1:-1:-1;;;12274:78:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;12379:15:0;;;;;;:11;:15;;;;;;:28;;12399:7;12379:28;:19;:28;:::i;:::-;-1:-1:-1;;;;;12361:15:0;;;;;;;:11;:15;;;;;;;;:46;;;;12443:10;:14;;;;;;12416:51;;12361:15;12443:14;12459:7;12416:14;:51::i;:::-;12481:16;;;-1:-1:-1;;;;;12481:16:0;;;;;;;;;;;;;;;;;;;;;;;12031:474;;;:::o;8307:438::-;-1:-1:-1;;;;;8424:21:0;;;8398:23;8424:21;;;:10;:21;;;;;;;;;;8483:11;:22;;;;;;8559:21;;;;:33;;;-1:-1:-1;;;;;;8559:33:0;;;;;;;8610:54;;8424:21;;;;;8483:22;;8559:33;;8424:21;;;8610:54;;8398:23;8610:54;8677:60;8692:15;8709:9;8720:16;8677:14;:60::i;:::-;8307:438;;;;:::o;10587:153::-;10697:9;10587:153;:::o;384:192::-;470:7;506:12;498:6;;;;490:29;;;;-1:-1:-1;;;490:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;490:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;542:5:0;;;384:192::o;982:189::-;1068:7;1103:12;1096:5;1088:28;;;;-1:-1:-1;;;1088:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27:10:-1;;8:100;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;1088:28:0;;1127:9;1143:1;1139;:5;;;;;;;982:189;-1:-1:-1;;;;;982:189:0:o;9708:702::-;9887:18;9908:74;9915:12;9908:74;;;;;;;;;;;;;;;;;:6;:74::i;:::-;9887:95;;10014:1;9999:12;:16;;;:85;;;;-1:-1:-1;;;;;;10019:22:0;;;;;;:11;:22;;;;;;;;:65;-1:-1:-1;;10042:16:0;;10019:40;;;;;;;;;:50;:65;;;:50;;:65;9999:85;9995:339;;;-1:-1:-1;;;;;10101:22:0;;;;;;:11;:22;;;;;;;;:40;-1:-1:-1;;10124:16:0;;10101:40;;;;;;;;10139:1;10101:46;:57;;;9995:339;;;10230:33;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10191:22:0;;-1:-1:-1;10191:22:0;;;:11;:22;;;;;:36;;;;;;;;;;:72;;;;;;;-1:-1:-1;;10191:72:0;;;;;;;;;;;;;10278:25;;;:14;:25;;;;;;:44;;10306:16;;;10278:44;;;;;;;;;;9995:339;10351:51;;;;;;;;;;;;;;-1:-1:-1;;;;;10351:51:0;;;;;;;;;;;9708:702;;;;;:::o;10418:161::-;10493:6;10531:12;-1:-1:-1;;;10520:9:0;;10512:32;;;;-1:-1:-1;;;10512:32:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27:10:-1;;8:100;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;10512:32:0;-1:-1:-1;10569:1:0;;10418:161;-1:-1:-1;;10418:161:0:o;17140:546::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17140:546:0;;;-1:-1:-1;17140:546:0;:::i;:::-;;;:::o;:::-;;;;;;;;;;-1:-1:-1;17140:546:0;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;
Swarm Source
bzzr://af15ad4a67d2e6dda41fe36488a5b57237e8795146fd96728f535ea458fb1fe0
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.