More Info
Private Name Tags
ContractCreator
TokenTracker
Multi Chain
Multichain Addresses
0 address found via
Latest 25 from a total of 630 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
Value | ||||
---|---|---|---|---|---|---|---|---|---|
Transfer | 9621688 | 1190 days 17 hrs ago | IN | 0.000777 ETH | 0.00002687 | ||||
Transfer | 9621685 | 1190 days 17 hrs ago | IN | 0 ETH | 0.00033969 | ||||
Transfer | 9621675 | 1190 days 17 hrs ago | IN | 0.000777 ETH | 0.0005919 | ||||
Transfer | 9621631 | 1190 days 17 hrs ago | IN | 0.000333 ETH | 0.00034339 | ||||
Transfer | 9621532 | 1190 days 17 hrs ago | IN | 0 ETH | 0.00002208 | ||||
Transfer | 9621528 | 1190 days 17 hrs ago | IN | 0.000333 ETH | 0.00034339 | ||||
Transfer | 9621512 | 1190 days 17 hrs ago | IN | 0 ETH | 0.00013734 | ||||
Transfer | 9621434 | 1190 days 18 hrs ago | IN | 0.000333 ETH | 0.00002492 | ||||
Transfer | 9621375 | 1190 days 18 hrs ago | IN | 0.000333 ETH | 0.00027799 | ||||
Transfer | 9621354 | 1190 days 18 hrs ago | IN | 0.000333 ETH | 0.00027799 | ||||
Transfer | 9621345 | 1190 days 18 hrs ago | IN | 0.000777 ETH | 0.000042 | ||||
Transfer | 9621301 | 1190 days 18 hrs ago | IN | 0.000333 ETH | 0.00027799 | ||||
Transfer | 9621198 | 1190 days 19 hrs ago | IN | 0.000333 ETH | 0.00027799 | ||||
Transfer | 9621180 | 1190 days 19 hrs ago | IN | 0.000333 ETH | 0.00004985 | ||||
Transfer | 9621170 | 1190 days 19 hrs ago | IN | 0.000777 ETH | 0.00005375 | ||||
Transfer | 9621160 | 1190 days 19 hrs ago | IN | 0.000333 ETH | 0.00027799 | ||||
Transfer | 9621088 | 1190 days 19 hrs ago | IN | 0.000777 ETH | 0.0000645 | ||||
Transfer | 9621081 | 1190 days 19 hrs ago | IN | 0.000777 ETH | 0.00005375 | ||||
Transfer | 9621070 | 1190 days 19 hrs ago | IN | 0.000777 ETH | 0.000042 | ||||
Transfer | 9621064 | 1190 days 19 hrs ago | IN | 0.000777 ETH | 0.000042 | ||||
Transfer | 9621027 | 1190 days 19 hrs ago | IN | 0.000777 ETH | 0.000042 | ||||
Transfer | 9621006 | 1190 days 19 hrs ago | IN | 0.000777 ETH | 0.0005059 | ||||
Transfer | 9621004 | 1190 days 19 hrs ago | IN | 0.000777 ETH | 0.00058239 | ||||
Transfer | 9621004 | 1190 days 19 hrs ago | IN | 0.000333 ETH | 0.00078764 | ||||
Transfer | 9620997 | 1190 days 19 hrs ago | IN | 0 ETH | 0.00033937 |
Latest 25 internal transactions (View All)
Parent Txn Hash | Block | From | To | Value | ||
---|---|---|---|---|---|---|
9621685 | 1190 days 17 hrs ago | 23.19551901 ETH | ||||
9621685 | 1190 days 17 hrs ago | 0.03270207 ETH | ||||
9621675 | 1190 days 17 hrs ago | 0.03425607 ETH | ||||
9621631 | 1190 days 17 hrs ago | 0.03336807 ETH | ||||
9621528 | 1190 days 17 hrs ago | 0.03336807 ETH | ||||
9621512 | 1190 days 17 hrs ago | 0.02986869 ETH | ||||
9621375 | 1190 days 18 hrs ago | 0.04406336 ETH | ||||
9621354 | 1190 days 18 hrs ago | 0.02816589 ETH | ||||
9621301 | 1190 days 18 hrs ago | 0.03344467 ETH | ||||
9621198 | 1190 days 19 hrs ago | 0.00420452 ETH | ||||
9621160 | 1190 days 19 hrs ago | 0.02245441 ETH | ||||
9621004 | 1190 days 19 hrs ago | 3.97960916 ETH | ||||
9620990 | 1190 days 19 hrs ago | 0.01 ETH | ||||
9620968 | 1190 days 20 hrs ago | 3.93470842 ETH | ||||
9620951 | 1190 days 20 hrs ago | 0.01 ETH | ||||
9620939 | 1190 days 20 hrs ago | 1.42524661 ETH | ||||
9620935 | 1190 days 20 hrs ago | 3.88981191 ETH | ||||
9620930 | 1190 days 20 hrs ago | 3.62535733 ETH | ||||
9620918 | 1190 days 20 hrs ago | 0.01 ETH | ||||
9620908 | 1190 days 20 hrs ago | 0.34113279 ETH | ||||
9620907 | 1190 days 20 hrs ago | 0.04522319 ETH | ||||
9620905 | 1190 days 20 hrs ago | 5.7609224 ETH | ||||
9620902 | 1190 days 20 hrs ago | 3.4349293 ETH | ||||
9620897 | 1190 days 20 hrs ago | 3.84491963 ETH | ||||
9620896 | 1190 days 20 hrs ago | 2.51075802 ETH |
Loading...
Loading
Contract Name:
MORIART
Compiler Version
v0.5.10+commit.5a6ea5b1
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-11-14 */ /** * @title The MORIART contracts concept. * @author www.grox.solutions */ pragma solidity 0.5.10; library SafeMath { function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { require(b > 0); uint256 c = a / b; return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a); uint256 c = a - b; return c; } function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a); return c; } } interface IERC20 { function totalSupply() external view returns (uint256); 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 transferFrom(address from, address to, uint256 value) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } contract ERC20 is IERC20 { using SafeMath for uint256; mapping (address => uint256) internal _balances; mapping (address => mapping (address => uint256)) internal _allowed; uint256 internal _totalSupply; function totalSupply() public view returns (uint256) { return _totalSupply; } function balanceOf(address addr) public view returns (uint256) { return _balances[addr]; } function allowance(address addr, address spender) public view returns (uint256) { return _allowed[addr][spender]; } function approve(address spender, uint256 value) public returns (bool) { require(spender != address(0)); _allowed[msg.sender][spender] = value; emit Approval(msg.sender, spender, value); return true; } function increaseAllowance(address spender, uint256 addedValue) public returns (bool) { require(spender != address(0)); _allowed[msg.sender][spender] = ( _allowed[msg.sender][spender].add(addedValue)); emit Approval(msg.sender, spender, _allowed[msg.sender][spender]); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) { require(spender != address(0)); _allowed[msg.sender][spender] = ( _allowed[msg.sender][spender].sub(subtractedValue)); emit Approval(msg.sender, spender, _allowed[msg.sender][spender]); return true; } function transfer(address to, uint256 value) public returns (bool) { _transfer(msg.sender, to, value); return true; } function transferFrom(address from, address to, uint256 value) public returns (bool) { _allowed[from][msg.sender] = _allowed[from][msg.sender].sub(value); _transfer(from, to, value); return true; } function _transfer(address from, address to, uint256 value) internal { require(to != address(0)); _balances[from] = _balances[from].sub(value); _balances[to] = _balances[to].add(value); emit Transfer(from, to, value); } } contract DetailedToken is ERC20 { string private _name = "Moriartio"; string private _symbol = "MIO"; uint8 private _decimals = 18; function name() public view returns(string memory) { return _name; } function symbol() public view returns(string memory) { return _symbol; } function decimals() public view returns(uint8) { return _decimals; } } contract TOKEN is DetailedToken { mapping (address => uint256) internal _payoutsTo; uint256 internal magnitude = 1e18; uint256 internal profitPerShare = 1e18; uint256 constant public DIV_TRIGGER = 0.000333 ether; event DividendsPayed(address indexed addr, uint256 amount); function _transfer(address payable from, address to, uint256 value) internal { require(to != address(0)); if (dividendsOf(from) > 0) { _withdrawDividends(from); } _balances[from] = _balances[from].sub(value); _balances[to] = _balances[to].add(value); _payoutsTo[from] -= profitPerShare * value; _payoutsTo[to] += profitPerShare * value; emit Transfer(from, to, value); } function _purchase(address recipient, uint256 value) internal { if (totalSupply() > 0) { profitPerShare = profitPerShare.add(value * magnitude / totalSupply()); _payoutsTo[recipient] = _payoutsTo[recipient].add(profitPerShare * value); } _totalSupply = _totalSupply.add(value); _balances[recipient] = _balances[recipient].add(value); emit Transfer(address(0), recipient, value); } function _withdrawDividends(address payable addr) internal { uint256 payout = dividendsOf(addr); if (payout > 0) { _payoutsTo[addr] = _payoutsTo[addr].add(dividendsOf(addr) * magnitude); uint256 value; if (msg.value == DIV_TRIGGER) { value = DIV_TRIGGER; } addr.transfer(payout + value); emit DividendsPayed(addr, payout); } } function dividendsOf(address addr) public view returns(uint256) { return (profitPerShare.mul(balanceOf(addr)).sub(_payoutsTo[addr])) / magnitude; } function myDividends() public view returns(uint256) { return dividendsOf(msg.sender); } } contract MORIART is TOKEN { using SafeMath for uint256; uint256 constant public ONE_HUNDRED = 10000; uint256 constant public ADMIN_FEE = 1000; uint256 constant public TOKENIZATION = 500; uint256 constant public ONE_DAY = 1 days; uint256 constant public MINIMUM = 0.1 ether; uint16[3] public refPercent = [300, 200, 100]; uint256 constant public REF_TRIGGER = 0 ether; uint256 constant public EXIT_TRIGGER = 0.000777 ether; struct Deposit { uint256 amount; uint256 time; } struct User { Deposit[] deposits; address referrer; uint256 bonus; } mapping (address => User) public users; address payable public admin = 0x9C14a7882f635acebbC7f0EfFC0E2b78B9Aa4858; uint256 public maxBalance; uint256 public start = 1574035200; bool public finalized; event InvestorAdded(address indexed investor); event ReferrerAdded(address indexed investor, address indexed referrer); event DepositAdded(address indexed investor, uint256 amount); event Withdrawn(address indexed investor, uint256 amount); event RefBonusAdded(address indexed investor, address indexed referrer, uint256 amount, uint256 indexed level); event RefBonusPayed(address indexed investor, uint256 amount); event Finalized(uint256 amount); modifier notOnPause() { require(block.timestamp >= start && !finalized); _; } function() external payable { if (msg.value == REF_TRIGGER) { _withdrawBonus(msg.sender); } else if (msg.value == DIV_TRIGGER) { _withdrawDividends(msg.sender); } else if (msg.value == EXIT_TRIGGER) { _exit(msg.sender); } else { _invest(msg.sender); } } function _invest(address addr) internal notOnPause { require(msg.value >= MINIMUM); admin.transfer(msg.value * ADMIN_FEE / ONE_HUNDRED); users[addr].deposits.push(Deposit(msg.value, block.timestamp)); if (users[addr].referrer != address(0)) { _refSystem(addr); } else if (msg.data.length == 20) { _addReferrer(addr, _bytesToAddress(bytes(msg.data))); } if (users[addr].deposits.length == 1) { emit InvestorAdded(addr); } _purchase(addr, msg.value * TOKENIZATION / ONE_HUNDRED); maxBalance += msg.value; emit DepositAdded(addr, msg.value); } function _withdrawBonus(address payable addr) internal { uint256 payout = getRefBonus(addr); if (payout > 0) { users[addr].bonus = 0; bool onFinalizing; if (payout + REF_TRIGGER > address(this).balance.sub(getFinalWave())) { payout = address(this).balance.sub(getFinalWave()); onFinalizing = true; } addr.transfer(payout + REF_TRIGGER); emit RefBonusPayed(addr, payout); if (onFinalizing) { _finalize(); } } } function _withdrawDividends(address payable addr) internal { uint256 payout = dividendsOf(addr); if (payout > 0) { _payoutsTo[addr] = _payoutsTo[addr].add(dividendsOf(addr) * magnitude); uint256 value; if (msg.value == DIV_TRIGGER) { value = DIV_TRIGGER; } bool onFinalizing; if (payout + value > address(this).balance.sub(getFinalWave())) { payout = address(this).balance.sub(getFinalWave()); onFinalizing = true; } addr.transfer(payout + value); emit DividendsPayed(addr, payout); if (onFinalizing) { _finalize(); } } } function _exit(address payable addr) internal { uint256 payout = getProfit(addr); if (getRefBonus(addr) != 0) { payout = payout.add(getRefBonus(addr)); emit RefBonusPayed(addr, getRefBonus(addr)); users[addr].bonus = 0; } if (dividendsOf(addr) != 0) { payout = payout.add(dividendsOf(addr)); emit DividendsPayed(addr, dividendsOf(addr)); _payoutsTo[addr] = _payoutsTo[addr].add(dividendsOf(addr) * magnitude); } require(payout >= MINIMUM); bool onFinalizing; if (payout + EXIT_TRIGGER > address(this).balance.sub(getFinalWave())) { payout = address(this).balance.sub(getFinalWave()); onFinalizing = true; } delete users[addr]; addr.transfer(payout + EXIT_TRIGGER); emit Withdrawn(addr, payout); if (onFinalizing) { _finalize(); } } function _bytesToAddress(bytes memory source) internal pure returns(address parsedReferrer) { assembly { parsedReferrer := mload(add(source,0x14)) } return parsedReferrer; } function _addReferrer(address addr, address refAddr) internal { if (refAddr != addr) { users[addr].referrer = refAddr; _refSystem(addr); emit ReferrerAdded(addr, refAddr); } } function _refSystem(address addr) internal { address referrer = users[addr].referrer; for (uint256 i = 0; i < 3; i++) { if (referrer != address(0)) { uint256 amount = msg.value * refPercent[i] / ONE_HUNDRED; users[referrer].bonus += amount; emit RefBonusAdded(addr, referrer, amount, i + 1); referrer = users[referrer].referrer; } else break; } } function _finalize() internal { admin.transfer(getFinalWave()); finalized = true; emit Finalized(getFinalWave()); } function setRefPercent(uint16[3] memory newRefPercents) public { require(msg.sender == admin); for (uint256 i = 0; i < 3; i++) { require(newRefPercents[i] <= 1000); } refPercent = newRefPercents; } function getPercent() public view returns(uint256) { if (block.timestamp >= start) { uint256 time = block.timestamp.sub(start); if (time < 60 * ONE_DAY) { return 10e18 + time * 1e18 * 10 / 60 / ONE_DAY; } if (time < 120 * ONE_DAY) { return 20e18 + (time - 60 * ONE_DAY) * 1e18 * 15 / 60 / ONE_DAY; } if (time < 180 * ONE_DAY) { return 35e18 + (time - 120 * ONE_DAY) * 1e18 * 20 / 60 / ONE_DAY; } if (time < 300 * ONE_DAY) { return 55e18 + (time - 180 * ONE_DAY) * 1e18 * 45 / 120 / ONE_DAY; } if (time >= 300 * ONE_DAY) { return 100e18 + (time - 300 * ONE_DAY) * 1e18 * 10 / 30 / ONE_DAY; } } } function getDeposits(address addr) public view returns(uint256) { uint256 sum; for (uint256 i = 0; i < users[addr].deposits.length; i++) { sum += users[addr].deposits[i].amount; } return sum; } function getDeposit(address addr, uint256 index) public view returns(uint256) { return users[addr].deposits[index].amount; } function getProfit(address addr) public view returns(uint256) { if (users[addr].deposits.length != 0) { uint256 payout; uint256 percent = getPercent(); for (uint256 i = 0; i < users[addr].deposits.length; i++) { payout += (users[addr].deposits[i].amount * percent / 1e21) * (block.timestamp - users[addr].deposits[i].time) / ONE_DAY; } return payout; } } function getRefBonus(address addr) public view returns(uint256) { return users[addr].bonus; } function getFinalWave() internal view returns(uint256) { return maxBalance * ADMIN_FEE / ONE_HUNDRED; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"dividendsOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"},{"name":"index","type":"uint256"}],"name":"getDeposit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getPercent","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"myDividends","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ADMIN_FEE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newRefPercents","type":"uint16[3]"}],"name":"setRefPercent","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ONE_DAY","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"DIV_TRIGGER","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getRefBonus","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"refPercent","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getDeposits","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"MINIMUM","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"users","outputs":[{"name":"referrer","type":"address"},{"name":"bonus","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"finalized","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"start","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ONE_HUNDRED","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getProfit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TOKENIZATION","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EXIT_TRIGGER","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"REF_TRIGGER","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"admin","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"investor","type":"address"}],"name":"InvestorAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"investor","type":"address"},{"indexed":true,"name":"referrer","type":"address"}],"name":"ReferrerAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"investor","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"DepositAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"investor","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Withdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"investor","type":"address"},{"indexed":true,"name":"referrer","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":true,"name":"level","type":"uint256"}],"name":"RefBonusAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"investor","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"RefBonusPayed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"amount","type":"uint256"}],"name":"Finalized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"DividendsPayed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"}]
Contract Creation Code
60806040526040518060400160405280600981526020017f4d6f7269617274696f0000000000000000000000000000000000000000000000815250600390805190602001906200005192919062000183565b506040518060400160405280600381526020017f4d494f0000000000000000000000000000000000000000000000000000000000815250600490805190602001906200009f92919062000183565b506012600560006101000a81548160ff021916908360ff160217905550670de0b6b3a7640000600755670de0b6b3a7640000600855604051806060016040528061012c61ffff16815260200160c861ffff168152602001606461ffff168152506009906003620001119291906200020a565b50739c14a7882f635acebbc7f0effc0e2b78b9aa4858600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550635dd1df00600d553480156200017c57600080fd5b506200030a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001c657805160ff1916838001178555620001f7565b82800160010185558215620001f7579182015b82811115620001f6578251825591602001919060010190620001d9565b5b509050620002069190620002ae565b5090565b826003600f016010900481019282156200029b5791602002820160005b838211156200026957835183826101000a81548161ffff021916908361ffff160217905550926020019260020160208160010104928301926001030262000227565b8015620002995782816101000a81549061ffff021916905560020160208160010104928301926001030262000269565b505b509050620002aa9190620002d6565b5090565b620002d391905b80821115620002cf576000816000905550600101620002b5565b5090565b90565b6200030791905b808211156200030357600081816101000a81549061ffff021916905550600101620002dd565b5090565b90565b613168806200031a6000396000f3fe6080604052600436106101ed5760003560e01c80638c273a981161010d578063b3f05b97116100a0578063d483b18a1161006f578063d483b18a14610ba2578063daff31b214610bcd578063dd62ed3e14610bf8578063f377d7ab14610c7d578063f851a44014610ca8576101ed565b8063b3f05b9714610ab8578063be9a655514610ae7578063bfaa8cca14610b12578063c600e1dc14610b3d576101ed565b80639c484b5c116100dc5780639c484b5c1461090f578063a457c2d71461093a578063a87430ba146109ad578063a9059cbb14610a45576101ed565b80638c273a981461075e57806390c0bfa7146107c357806394f649dd1461081a57806395d89b411461087f576101ed565b80633151ecfc1161018557806370a082311161015457806370a082311461067857806373ad468a146106dd578063863e76db1461070857806387e7092814610733576101ed565b80633151ecfc1461053d57806339509351146105685780634469ed14146105db5780635bcdff0714610606576101ed565b806323b872dd116101c157806323b872dd146103df5780632726b506146104725780632a6dd8c9146104e1578063313ce5671461050c576101ed565b806265318b1461024c57806306fdde03146102b1578063095ea7b31461034157806318160ddd146103b4575b6000341415610204576101ff33610cff565b61024a565b66012edc9ab5d0003414156102215761021c33610e7e565b610249565b6602c2ad68fd900034141561023e5761023933611072565b610248565b61024733611432565b5b5b5b005b34801561025857600080fd5b5061029b6004803603602081101561026f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611796565b6040518082815260200191505060405180910390f35b3480156102bd57600080fd5b506102c6611818565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103065780820151818401526020810190506102eb565b50505050905090810190601f1680156103335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561034d57600080fd5b5061039a6004803603604081101561036457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506118ba565b604051808215151515815260200191505060405180910390f35b3480156103c057600080fd5b506103c96119e5565b6040518082815260200191505060405180910390f35b3480156103eb57600080fd5b506104586004803603606081101561040257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506119ef565b604051808215151515815260200191505060405180910390f35b34801561047e57600080fd5b506104cb6004803603604081101561049557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b16565b6040518082815260200191505060405180910390f35b3480156104ed57600080fd5b506104f6611b7f565b6040518082815260200191505060405180910390f35b34801561051857600080fd5b50610521611d23565b604051808260ff1660ff16815260200191505060405180910390f35b34801561054957600080fd5b50610552611d3a565b6040518082815260200191505060405180910390f35b34801561057457600080fd5b506105c16004803603604081101561058b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611d4a565b604051808215151515815260200191505060405180910390f35b3480156105e757600080fd5b506105f0611f7f565b6040518082815260200191505060405180910390f35b34801561061257600080fd5b506106766004803603606081101561062957600080fd5b8101908080606001906003806020026040519081016040528092919082600360200280828437600081840152601f19601f8201169050808301925050505050509192919290505050611f85565b005b34801561068457600080fd5b506106c76004803603602081101561069b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612034565b6040518082815260200191505060405180910390f35b3480156106e957600080fd5b506106f261207c565b6040518082815260200191505060405180910390f35b34801561071457600080fd5b5061071d612082565b6040518082815260200191505060405180910390f35b34801561073f57600080fd5b50610748612089565b6040518082815260200191505060405180910390f35b34801561076a57600080fd5b506107ad6004803603602081101561078157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612094565b6040518082815260200191505060405180910390f35b3480156107cf57600080fd5b506107fc600480360360208110156107e657600080fd5b81019080803590602001909291905050506120e0565b604051808261ffff1661ffff16815260200191505060405180910390f35b34801561082657600080fd5b506108696004803603602081101561083d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061210b565b6040518082815260200191505060405180910390f35b34801561088b57600080fd5b506108946121db565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108d45780820151818401526020810190506108b9565b50505050905090810190601f1680156109015780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561091b57600080fd5b5061092461227d565b6040518082815260200191505060405180910390f35b34801561094657600080fd5b506109936004803603604081101561095d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612289565b604051808215151515815260200191505060405180910390f35b3480156109b957600080fd5b506109fc600480360360208110156109d057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506124be565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b348015610a5157600080fd5b50610a9e60048036036040811015610a6857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612502565b604051808215151515815260200191505060405180910390f35b348015610ac457600080fd5b50610acd612519565b604051808215151515815260200191505060405180910390f35b348015610af357600080fd5b50610afc61252c565b6040518082815260200191505060405180910390f35b348015610b1e57600080fd5b50610b27612532565b6040518082815260200191505060405180910390f35b348015610b4957600080fd5b50610b8c60048036036020811015610b6057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612538565b6040518082815260200191505060405180910390f35b348015610bae57600080fd5b50610bb76126e9565b6040518082815260200191505060405180910390f35b348015610bd957600080fd5b50610be26126ef565b6040518082815260200191505060405180910390f35b348015610c0457600080fd5b50610c6760048036036040811015610c1b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506126fa565b6040518082815260200191505060405180910390f35b348015610c8957600080fd5b50610c92612781565b6040518082815260200191505060405180910390f35b348015610cb457600080fd5b50610cbd612786565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000610d0a82612094565b90506000811115610e7a576000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201819055506000610d90610d6a6127ac565b3073ffffffffffffffffffffffffffffffffffffffff16316127c590919063ffffffff16565b600083011115610dd257610dcb610da56127ac565b3073ffffffffffffffffffffffffffffffffffffffff16316127c590919063ffffffff16565b9150600190505b8273ffffffffffffffffffffffffffffffffffffffff166108fc600084019081150290604051600060405180830381858888f19350505050158015610e1b573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff167e8df571866292bc855f72a72bfe4a42ff43cfb71b1978861d64c6bd951c72f0836040518082815260200191505060405180910390a28015610e7857610e776127e5565b5b505b5050565b6000610e8982611796565b9050600081111561106e57610ef2600754610ea384611796565b02600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128b090919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600066012edc9ab5d000341415610f515766012edc9ab5d00090505b6000610f84610f5e6127ac565b3073ffffffffffffffffffffffffffffffffffffffff16316127c590919063ffffffff16565b8284011115610fc557610fbe610f986127ac565b3073ffffffffffffffffffffffffffffffffffffffff16316127c590919063ffffffff16565b9250600190505b8373ffffffffffffffffffffffffffffffffffffffff166108fc8385019081150290604051600060405180830381858888f1935050505015801561100d573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff167f14140e69fe881ca2e2ee23b76630d05bceb12cc87d668d98214bad4d94f2ad80846040518082815260200191505060405180910390a2801561106b5761106a6127e5565b5b50505b5050565b600061107d82612538565b9050600061108a83612094565b1461114a576110aa61109b83612094565b826128b090919063ffffffff16565b90508173ffffffffffffffffffffffffffffffffffffffff167e8df571866292bc855f72a72bfe4a42ff43cfb71b1978861d64c6bd951c72f06110ec84612094565b6040518082815260200191505060405180910390a26000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201819055505b600061115583611796565b1461126f5761117561116683611796565b826128b090919063ffffffff16565b90508173ffffffffffffffffffffffffffffffffffffffff167f14140e69fe881ca2e2ee23b76630d05bceb12cc87d668d98214bad4d94f2ad806111b884611796565b6040518082815260200191505060405180910390a261122b6007546111dc84611796565b02600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128b090919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b67016345785d8a000081101561128457600080fd5b60006112b76112916127ac565b3073ffffffffffffffffffffffffffffffffffffffff16316127c590919063ffffffff16565b6602c2ad68fd9000830111156112ff576112f86112d26127ac565b3073ffffffffffffffffffffffffffffffffffffffff16316127c590919063ffffffff16565b9150600190505b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000808201600061134f9190613012565b6001820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600282016000905550508273ffffffffffffffffffffffffffffffffffffffff166108fc6602c2ad68fd900084019081150290604051600060405180830381858888f193505050501580156113cf573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5836040518082815260200191505060405180910390a2801561142d5761142c6127e5565b5b505050565b600d5442101580156114515750600e60009054906101000a900460ff16155b61145a57600080fd5b67016345785d8a000034101561146f57600080fd5b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6127106103e83402816114ba57fe5b049081150290604051600060405180830381858888f193505050501580156114e6573d6000803e3d6000fd5b50600a60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001604051806040016040528034815260200142815250908060018154018082558091505090600182039060005260206000209060020201600090919290919091506000820151816000015560208201518160010155505050600073ffffffffffffffffffffffffffffffffffffffff16600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116245761161f816128cf565b61168a565b60146000369050141561168957611688816116836000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050612af0565b612b01565b5b5b6001600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180549050141561171c578073ffffffffffffffffffffffffffffffffffffffff167f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f60405160405180910390a25b611735816127106101f434028161172f57fe5b04612c1d565b34600c600082825401925050819055508073ffffffffffffffffffffffffffffffffffffffff167fa2a2db73af12c9f5bef6303364d44e78f97e992c353cd8659f3474c471427e9b346040518082815260200191505060405180910390a250565b6000600754611809600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546117fb6117ea86612034565b600854612e0e90919063ffffffff16565b6127c590919063ffffffff16565b8161181057fe5b049050919050565b606060038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156118b05780601f10611885576101008083540402835291602001916118b0565b820191906000526020600020905b81548152906001019060200180831161189357829003601f168201915b5050505050905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156118f557600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600254905090565b6000611a8082600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127c590919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611b0b848484612e48565b600190509392505050565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018281548110611b6557fe5b906000526020600020906002020160000154905092915050565b6000600d544210611d1f576000611ba1600d54426127c590919063ffffffff16565b905062015180603c02811015611be75762015180603c600a670de0b6b3a764000084020281611bcc57fe5b0481611bd457fe5b04678ac7230489e8000001915050611d20565b62015180607802811015611c345762015180603c600f670de0b6b3a764000062015180603c028503020281611c1857fe5b0481611c2057fe5b046801158e460913d0000001915050611d20565b6201518060b402811015611c815762015180603c6014670de0b6b3a7640000620151806078028503020281611c6557fe5b0481611c6d57fe5b046801e5b8fa8fe2ac000001915050611d20565b6201518061012c02811015611ccf57620151806078602d670de0b6b3a76400006201518060b4028503020281611cb357fe5b0481611cbb57fe5b046802fb474098f67c000001915050611d20565b6201518061012c028110611d1d5762015180601e600a670de0b6b3a76400006201518061012c028503020281611d0157fe5b0481611d0957fe5b0468056bc75e2d6310000001915050611d20565b505b5b90565b6000600560009054906101000a900460ff16905090565b6000611d4533611796565b905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611d8557600080fd5b611e1482600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128b090919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6103e881565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611fdf57600080fd5b60008090505b600381101561201e576103e8828260038110611ffd57fe5b602002015161ffff16111561201157600080fd5b8080600101915050611fe5565b50806009906003612030929190613036565b5050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600c5481565b6201518081565b66012edc9ab5d00081565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201549050919050565b600981600381106120ed57fe5b60109182820401919006600202915054906101000a900461ffff1681565b60008060008090505b600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805490508110156121d157600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181815481106121ae57fe5b906000526020600020906002020160000154820191508080600101915050612114565b5080915050919050565b606060048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122735780601f1061224857610100808354040283529160200191612273565b820191906000526020600020905b81548152906001019060200180831161225657829003601f168201915b5050505050905090565b67016345785d8a000081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156122c457600080fd5b61235382600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127c590919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b600a6020528060005260406000206000915090508060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154905082565b600061250f338484612e48565b6001905092915050565b600e60009054906101000a900460ff1681565b600d5481565b61271081565b600080600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180549050146126e357600080612591611b7f565b905060008090505b600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805490508110156126d85762015180600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001828154811061263757fe5b9060005260206000209060020201600101544203683635c9adc5dea0000084600a60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000185815481106126a357fe5b90600052602060002090600202016000015402816126bd57fe5b0402816126c657fe5b04830192508080600101915050612599565b5081925050506126e4565b5b919050565b6101f481565b6602c2ad68fd900081565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600081565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006127106103e8600c5402816127bf57fe5b04905090565b6000828211156127d457600080fd5b600082840390508091505092915050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6128296127ac565b9081150290604051600060405180830381858888f19350505050158015612854573d6000803e3d6000fd5b506001600e60006101000a81548160ff0219169083151502179055507f839cf22e1ba87ce2f5b9bbf46cf0175a09eed52febdfaac8852478e68203c7636128996127ac565b6040518082815260200191505060405180910390a1565b6000808284019050838110156128c557600080fd5b8091505092915050565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060008090505b6003811015612aeb57600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614612ad95760006127106009836003811061298b57fe5b601091828204019190066002029054906101000a900461ffff1661ffff163402816129b257fe5b04905080600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008282540192505081905550600182018373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167f68fb88ff670007867d2f1ffddbc3814fa7b2d5e4a533dce309f1caabaef74470846040518082815260200191505060405180910390a4600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16925050612ade565b612aeb565b808060010191505061293c565b505050565b600060148201519050809050919050565b8173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614612c195780600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550612bbe826128cf565b8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fec49a3c8c4ae06c18160fe86119c381c9d213ac3e052ff35b594da8687b193c760405160405180910390a35b5050565b6000612c276119e5565b1115612cf657612c56612c386119e5565b600754830281612c4457fe5b046008546128b090919063ffffffff16565b600881905550612cb28160085402600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128b090919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b612d0b816002546128b090919063ffffffff16565b600281905550612d62816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128b090919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600080831415612e215760009050612e42565b6000828402905082848281612e3257fe5b0414612e3d57600080fd5b809150505b92915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612e8257600080fd5b612ed3816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127c590919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612f66816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128b090919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b508054600082556002029060005260206000209081019061303391906130d3565b50565b826003600f016010900481019282156130c25791602002820160005b8382111561309257835183826101000a81548161ffff021916908361ffff1602179055509260200192600201602081600101049283019260010302613052565b80156130c05782816101000a81549061ffff0219169055600201602081600101049283019260010302613092565b505b5090506130cf9190613102565b5090565b6130ff91905b808211156130fb576000808201600090556001820160009055506002016130d9565b5090565b90565b61313091905b8082111561312c57600081816101000a81549061ffff021916905550600101613108565b5090565b9056fea265627a7a72305820d84ce88f2ba981f84c7f34c6bb547a8a5eb4577eb9d45cb0da52c179122bfa7f64736f6c634300050a0032
Deployed ByteCode Sourcemap
6100:8325:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6534:7;7668:9;:24;7664:309;;;7709:26;7724:10;7709:14;:26::i;:::-;7664:309;;;4326:14;7757:9;:24;7753:220;;;7798:30;7817:10;7798:18;:30::i;:::-;7753:220;;;6588:14;7850:9;:25;7846:127;;;7892:17;7898:10;7892:5;:17::i;:::-;7846:127;;;7942:19;7950:10;7942:7;:19::i;:::-;7846:127;7753:220;7664:309;6100:8325;5821:161;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5821:161:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5821:161:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3830:82;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3830:82:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3830:82:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2070:244;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2070:244:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2070:244:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1722:91;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1722:91:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3166:229;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3166:229:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3166:229:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;13571:138;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13571:138:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13571:138:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12459:845;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12459:845:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4014:80;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4014:80:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5990:101;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5990:101:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2322:335;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2322:335:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2322:335:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6220:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6220:44:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12200:251;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12200:251:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12200:251:0;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;12200:251:0;;;;;;;;;;;;;;:::i;:::-;;1821:104;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1821:104:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1821:104:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6927:25;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6927:25:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6321:46;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6321:46:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4288:52;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4288:52:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14188:107;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14188:107:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14188:107:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6430:55;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6430:55:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6430:55:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;13312:251;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13312:251:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13312:251:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3920:86;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3920:86:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3920:86:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6374:49;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6374:49:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2665:345;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2665:345:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2665:345:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6798:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6798:38:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6798:38:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3018:140;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3018:140:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3018:140:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7001:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7001:21:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6961:33;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6961:33:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6168:45;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6168:45:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13717:463;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13717:463:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13717:463:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6271:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6271:43:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6548:54;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6548:54:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1933:129;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1933:129:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1933:129:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6494:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6494:47:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6845:73;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6845:73:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;8691:604;8757:14;8774:17;8786:4;8774:11;:17::i;:::-;8757:34;;8815:1;8806:6;:10;8802:486;;;8853:1;8833:5;:11;8839:4;8833:11;;;;;;;;;;;;;;;:17;;:21;;;;8871:17;8930:41;8956:14;:12;:14::i;:::-;8938:4;8930:21;;;:25;;:41;;;;:::i;:::-;6534:7;8907:6;:20;:64;8903:193;;;9001:41;9027:14;:12;:14::i;:::-;9009:4;9001:21;;;:25;;:41;;;;:::i;:::-;8992:50;;9076:4;9061:19;;8903:193;9112:4;:13;;:35;6534:7;9126:6;:20;9112:35;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9112:35:0;9183:4;9169:27;;;9189:6;9169:27;;;;;;;;;;;;;;;;;;9217:12;9213:64;;;9250:11;:9;:11::i;:::-;9213:64;8802:486;;8691:604;;:::o;9303:774::-;9373:14;9390:17;9402:4;9390:11;:17::i;:::-;9373:34;;9431:1;9422:6;:10;9418:652;;;9468:51;9509:9;;9489:17;9501:4;9489:11;:17::i;:::-;:29;9468:10;:16;9479:4;9468:16;;;;;;;;;;;;;;;;:20;;:51;;;;:::i;:::-;9449:10;:16;9460:4;9449:16;;;;;;;;;;;;;;;:70;;;;9536:13;4326:14;9568:9;:24;9564:84;;;4326:14;9613:19;;9564:84;9664:17;9717:41;9743:14;:12;:14::i;:::-;9725:4;9717:21;;;:25;;:41;;;;:::i;:::-;9709:5;9700:6;:14;:58;9696:187;;;9788:41;9814:14;:12;:14::i;:::-;9796:4;9788:21;;;:25;;:41;;;;:::i;:::-;9779:50;;9863:4;9848:19;;9696:187;9899:4;:13;;:29;9922:5;9913:6;:14;9899:29;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9899:29:0;9965:4;9950:28;;;9971:6;9950:28;;;;;;;;;;;;;;;;;;9999:12;9995:64;;;10032:11;:9;:11::i;:::-;9995:64;9418:652;;;9303:774;;:::o;10085:997::-;10144:14;10161:15;10171:4;10161:9;:15::i;:::-;10144:32;;10214:1;10193:17;10205:4;10193:11;:17::i;:::-;:22;10189:187;;10241:29;10252:17;10264:4;10252:11;:17::i;:::-;10241:6;:10;;:29;;;;:::i;:::-;10232:38;;10304:4;10290:38;;;10310:17;10322:4;10310:11;:17::i;:::-;10290:38;;;;;;;;;;;;;;;;;;10363:1;10343:5;:11;10349:4;10343:11;;;;;;;;;;;;;;;:17;;:21;;;;10189:187;10413:1;10392:17;10404:4;10392:11;:17::i;:::-;:22;10388:237;;10440:29;10451:17;10463:4;10451:11;:17::i;:::-;10440:6;:10;;:29;;;;:::i;:::-;10431:38;;10504:4;10489:39;;;10510:17;10522:4;10510:11;:17::i;:::-;10489:39;;;;;;;;;;;;;;;;;;10562:51;10603:9;;10583:17;10595:4;10583:11;:17::i;:::-;:29;10562:10;:16;10573:4;10562:16;;;;;;;;;;;;;;;;:20;;:51;;;;:::i;:::-;10543:10;:16;10554:4;10543:16;;;;;;;;;;;;;;;:70;;;;10388:237;6414:9;10645:6;:17;;10637:26;;;;;;10676:17;10732:41;10758:14;:12;:14::i;:::-;10740:4;10732:21;;;:25;;:41;;;;:::i;:::-;6588:14;10708:6;:21;:65;10704:182;;;10799:41;10825:14;:12;:14::i;:::-;10807:4;10799:21;;;:25;;:41;;;;:::i;:::-;10790:50;;10870:4;10855:19;;10704:182;10905:5;:11;10911:4;10905:11;;;;;;;;;;;;;;;;10898:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;10929:4;:13;;:36;6588:14;10943:6;:21;10929:36;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10929:36:0;10993:4;10983:23;;;10999:6;10983:23;;;;;;;;;;;;;;;;;;11023:12;11019:56;;;11052:11;:9;:11::i;:::-;11019:56;10085:997;;;:::o;7988:695::-;7577:5;;7558:15;:24;;:38;;;;;7587:9;;;;;;;;;;;7586:10;7558:38;7550:47;;;;;;6414:9;8058;:20;;8050:29;;;;;;8090:5;;;;;;;;;;;:14;;:51;6208:5;6260:4;8105:9;:21;:35;;;;;;8090:51;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8090:51:0;8154:5;:11;8160:4;8154:11;;;;;;;;;;;;;;;:20;;8180:35;;;;;;;;8188:9;8180:35;;;;8199:15;8180:35;;;8154:62;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;8154:62:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8265:1;8233:34;;:5;:11;8239:4;8233:11;;;;;;;;;;;;;;;:20;;;;;;;;;;;;:34;;;8229:195;;8284:16;8295:4;8284:10;:16::i;:::-;8229:195;;;8341:2;8322:8;;:15;;:21;8318:106;;;8360:52;8373:4;8379:32;8401:8;;8379:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;8379:32:0;;;;;;:15;:32::i;:::-;8360:12;:52::i;:::-;8318:106;8229:195;8471:1;8440:5;:11;8446:4;8440:11;;;;;;;;;;;;;;;:20;;:27;;;;:32;8436:89;;;8508:4;8494:19;;;;;;;;;;;;8436:89;8537:55;8547:4;6208:5;6311:3;8553:9;:24;:38;;;;;;8537:9;:55::i;:::-;8619:9;8605:10;;:23;;;;;;;;;;;8659:4;8646:29;;;8665:9;8646:29;;;;;;;;;;;;;;;;;;7988:695;:::o;5821:161::-;5876:7;5965:9;;5904:57;5944:10;:16;5955:4;5944:16;;;;;;;;;;;;;;;;5904:35;5923:15;5933:4;5923:9;:15::i;:::-;5904:14;;:18;;:35;;;;:::i;:::-;:39;;:57;;;;:::i;:::-;5903:71;;;;;;5896:78;;5821:161;;;:::o;3830:82::-;3866:13;3899:5;3892:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3830:82;:::o;2070:244::-;2135:4;2179:1;2160:21;;:7;:21;;;;2152:30;;;;;;2227:5;2195:8;:20;2204:10;2195:20;;;;;;;;;;;;;;;:29;2216:7;2195:29;;;;;;;;;;;;;;;:37;;;;2269:7;2248:36;;2257:10;2248:36;;;2278:5;2248:36;;;;;;;;;;;;;;;;;;2302:4;2295:11;;2070:244;;;;:::o;1722:91::-;1766:7;1793:12;;1786:19;;1722:91;:::o;3166:229::-;3245:4;3291:37;3322:5;3291:8;:14;3300:4;3291:14;;;;;;;;;;;;;;;:26;3306:10;3291:26;;;;;;;;;;;;;;;;:30;;:37;;;;:::i;:::-;3262:8;:14;3271:4;3262:14;;;;;;;;;;;;;;;:26;3277:10;3262:26;;;;;;;;;;;;;;;:66;;;;3339:26;3349:4;3355:2;3359:5;3339:9;:26::i;:::-;3383:4;3376:11;;3166:229;;;;;:::o;13571:138::-;13640:7;13667:5;:11;13673:4;13667:11;;;;;;;;;;;;;;;:20;;13688:5;13667:27;;;;;;;;;;;;;;;;;;:34;;;13660:41;;13571:138;;;;:::o;12459:845::-;12501:7;12544:5;;12525:15;:24;12521:776;;12566:12;12581:26;12601:5;;12581:15;:19;;:26;;;;:::i;:::-;12566:41;;6361:6;12633:2;:12;12626:4;:19;12622:106;;;6361:6;12700:2;12695;12688:4;12681;:11;:16;:21;;;;;;:31;;;;;;12673:5;:39;12666:46;;;;;12622:106;6361:6;12753:3;:13;12746:4;:20;12742:124;;;6361:6;12838:2;12833;12826:4;6361:6;12810:2;:12;12803:4;:19;12802:28;:33;:38;;;;;;:48;;;;;;12794:5;:56;12787:63;;;;;12742:124;6361:6;12891:3;:13;12884:4;:20;12880:125;;;6361:6;12977:2;12972;12965:4;6361:6;12948:3;:13;12941:4;:20;12940:29;:34;:39;;;;;;:49;;;;;;12932:5;:57;12925:64;;;;;12880:125;6361:6;13030:3;:13;13023:4;:20;13019:126;;;6361:6;13116:3;13111:2;13104:4;6361:6;13087:3;:13;13080:4;:20;13079:29;:34;:40;;;;;;:50;;;;;;13071:5;:58;13064:65;;;;;13019:126;6361:6;13171:3;:13;13163:4;:21;13159:127;;6361:6;13258:2;13253;13246:4;6361:6;13229:3;:13;13222:4;:20;13221:29;:34;:39;;;;;;:49;;;;;;13212:6;:58;13205:65;;;;;13159:127;12521:776;;12459:845;;:::o;4014:80::-;4054:5;4077:9;;;;;;;;;;;4070:16;;4014:80;:::o;5990:101::-;6033:7;6060:23;6072:10;6060:11;:23::i;:::-;6053:30;;5990:101;:::o;2322:335::-;2402:4;2446:1;2427:21;;:7;:21;;;;2419:30;;;;;;2505:45;2539:10;2505:8;:20;2514:10;2505:20;;;;;;;;;;;;;;;:29;2526:7;2505:29;;;;;;;;;;;;;;;;:33;;:45;;;;:::i;:::-;2462:8;:20;2471:10;2462:20;;;;;;;;;;;;;;;:29;2483:7;2462:29;;;;;;;;;;;;;;;:89;;;;2588:7;2567:60;;2576:10;2567:60;;;2597:8;:20;2606:10;2597:20;;;;;;;;;;;;;;;:29;2618:7;2597:29;;;;;;;;;;;;;;;;2567:60;;;;;;;;;;;;;;;;;;2645:4;2638:11;;2322:335;;;;:::o;6220:44::-;6260:4;6220:44;:::o;12200:251::-;12296:5;;;;;;;;;;;12282:19;;:10;:19;;;12274:28;;;;;;12318:9;12330:1;12318:13;;12313:93;12337:1;12333;:5;12313:93;;;12389:4;12368:14;12383:1;12368:17;;;;;;;;;;;:25;;;;12360:34;;;;;;12340:3;;;;;;;12313:93;;;;12429:14;12416:10;:27;;;;;;;:::i;:::-;;12200:251;:::o;1821:104::-;1875:7;1902:9;:15;1912:4;1902:15;;;;;;;;;;;;;;;;1895:22;;1821:104;;;:::o;6927:25::-;;;;:::o;6321:46::-;6361:6;6321:46;:::o;4288:52::-;4326:14;4288:52;:::o;14188:107::-;14243:7;14270:5;:11;14276:4;14270:11;;;;;;;;;;;;;;;:17;;;14263:24;;14188:107;;;:::o;6430:55::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;13312:251::-;13367:7;13387:11;13416:9;13428:1;13416:13;;13411:122;13435:5;:11;13441:4;13435:11;;;;;;;;;;;;;;;:20;;:27;;;;13431:1;:31;13411:122;;;13491:5;:11;13497:4;13491:11;;;;;;;;;;;;;;;:20;;13512:1;13491:23;;;;;;;;;;;;;;;;;;:30;;;13484:37;;;;13464:3;;;;;;;13411:122;;;;13552:3;13545:10;;;13312:251;;;:::o;3920:86::-;3958:13;3991:7;3984:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3920:86;:::o;6374:49::-;6414:9;6374:49;:::o;2665:345::-;2750:4;2794:1;2775:21;;:7;:21;;;;2767:30;;;;;;2853:50;2887:15;2853:8;:20;2862:10;2853:20;;;;;;;;;;;;;;;:29;2874:7;2853:29;;;;;;;;;;;;;;;;:33;;:50;;;;:::i;:::-;2810:8;:20;2819:10;2810:20;;;;;;;;;;;;;;;:29;2831:7;2810:29;;;;;;;;;;;;;;;:94;;;;2941:7;2920:60;;2929:10;2920:60;;;2950:8;:20;2959:10;2950:20;;;;;;;;;;;;;;;:29;2971:7;2950:29;;;;;;;;;;;;;;;;2920:60;;;;;;;;;;;;;;;;;;2998:4;2991:11;;2665:345;;;;:::o;6798:38::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;3018:140::-;3079:4;3096:32;3106:10;3118:2;3122:5;3096:9;:32::i;:::-;3146:4;3139:11;;3018:140;;;;:::o;7001:21::-;;;;;;;;;;;;;:::o;6961:33::-;;;;:::o;6168:45::-;6208:5;6168:45;:::o;13717:463::-;13770:7;13825:1;13794:5;:11;13800:4;13794:11;;;;;;;;;;;;;;;:20;;:27;;;;:32;13790:383;;13843:14;13872:15;13890:12;:10;:12::i;:::-;13872:30;;13924:9;13936:1;13924:13;;13919:213;13943:5;:11;13949:4;13943:11;;;;;;;;;;;;;;;:20;;:27;;;;13939:1;:31;13919:213;;;6361:6;14077:5;:11;14083:4;14077:11;;;;;;;;;;;;;;;:20;;14098:1;14077:23;;;;;;;;;;;;;;;;;;:28;;;14059:15;:46;14050:4;14040:7;14007:5;:11;14013:4;14007:11;;;;;;;;;;;;;;;:20;;14028:1;14007:23;;;;;;;;;;;;;;;;;;:30;;;:40;:47;;;;;;14006:100;:110;;;;;;13996:120;;;;13972:3;;;;;;;13919:213;;;;14155:6;14148:13;;;;;;13790:383;13717:463;;;;:::o;6271:43::-;6311:3;6271:43;:::o;6548:54::-;6588:14;6548:54;:::o;1933:129::-;2004:7;2031:8;:14;2040:4;2031:14;;;;;;;;;;;;;;;:23;2046:7;2031:23;;;;;;;;;;;;;;;;2024:30;;1933:129;;;;:::o;6494:47::-;6534:7;6494:47;:::o;6845:73::-;;;;;;;;;;;;;:::o;14303:117::-;14349:7;6208:5;6260:4;14376:10;;:22;:36;;;;;;14369:43;;14303:117;:::o;516:150::-;574:7;607:1;602;:6;;594:15;;;;;;620:9;636:1;632;:5;620:17;;657:1;650:8;;;516:150;;;;:::o;12045:147::-;12086:5;;;;;;;;;;;:14;;:30;12101:14;:12;:14::i;:::-;12086:30;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12086:30:0;12139:4;12127:9;;:16;;;;;;;;;;;;;;;;;;12159:25;12169:14;:12;:14::i;:::-;12159:25;;;;;;;;;;;;;;;;;;12045:147::o;674:150::-;732:7;752:9;768:1;764;:5;752:17;;793:1;788;:6;;780:15;;;;;;815:1;808:8;;;674:150;;;;:::o;11563:474::-;11617:16;11636:5;:11;11642:4;11636:11;;;;;;;;;;;;;;;:20;;;;;;;;;;;;11617:39;;11674:9;11686:1;11674:13;;11669:361;11693:1;11689;:5;11669:361;;;11740:1;11720:22;;:8;:22;;;11716:302;;11763:14;6208:5;11792:10;11803:1;11792:13;;;;;;;;;;;;;;;;;;;;;;;;;;;11780:25;;:9;:25;:39;;;;;;11763:56;;11863:6;11838:5;:15;11844:8;11838:15;;;;;;;;;;;;;;;:21;;;:31;;;;;;;;;;;11935:1;11931;:5;11913:8;11893:44;;11907:4;11893:44;;;11923:6;11893:44;;;;;;;;;;;;;;;;;;11967:5;:15;11973:8;11967:15;;;;;;;;;;;;;;;:24;;;;;;;;;;;;11956:35;;11716:302;;;;12013:5;;11716:302;11696:3;;;;;;;11669:361;;;;11563:474;;:::o;11090:218::-;11158:22;11252:4;11245:6;11241:16;11235:23;11217:41;;11286:14;11279:21;;11090:218;;;:::o;11316:239::-;11404:4;11393:15;;:7;:15;;;11389:159;;11448:7;11425:5;:11;11431:4;11425:11;;;;;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;11472:16;11483:4;11472:10;:16::i;:::-;11528:7;11508:28;;11522:4;11508:28;;;;;;;;;;;;11389:159;11316:239;;:::o;4890:460::-;4983:1;4967:13;:11;:13::i;:::-;:17;4963:208;;;5018:53;5057:13;:11;:13::i;:::-;5045:9;;5037:5;:17;:33;;;;;;5018:14;;:18;;:53;;;;:::i;:::-;5001:14;:70;;;;5110:49;5153:5;5136:14;;:22;5110:10;:21;5121:9;5110:21;;;;;;;;;;;;;;;;:25;;:49;;;;:::i;:::-;5086:10;:21;5097:9;5086:21;;;;;;;;;;;;;;;:73;;;;4963:208;5198:23;5215:5;5198:12;;:16;;:23;;;;:::i;:::-;5183:12;:38;;;;5255:31;5280:5;5255:9;:20;5265:9;5255:20;;;;;;;;;;;;;;;;:24;;:31;;;;:::i;:::-;5232:9;:20;5242:9;5232:20;;;;;;;;;;;;;;;:54;;;;5325:9;5304:38;;5321:1;5304:38;;;5336:5;5304:38;;;;;;;;;;;;;;;;;;4890:460;;:::o;138:213::-;196:7;225:1;220;:6;216:47;;;250:1;243:8;;;;216:47;275:9;291:1;287;:5;275:17;;320:1;315;311;:5;;;;;;:10;303:19;;;;;;342:1;335:8;;;138:213;;;;;:::o;3403:264::-;3505:1;3491:16;;:2;:16;;;;3483:25;;;;;;3539:26;3559:5;3539:9;:15;3549:4;3539:15;;;;;;;;;;;;;;;;:19;;:26;;;;:::i;:::-;3521:9;:15;3531:4;3521:15;;;;;;;;;;;;;;;:44;;;;3592:24;3610:5;3592:9;:13;3602:2;3592:13;;;;;;;;;;;;;;;;:17;;:24;;;;:::i;:::-;3576:9;:13;3586:2;3576:13;;;;;;;;;;;;;;;:40;;;;3649:2;3634:25;;3643:4;3634:25;;;3653:5;3634:25;;;;;;;;;;;;;;;;;;3403:264;;;:::o;6100:8325::-;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o
Swarm Source
bzzr://d84ce88f2ba981f84c7f34c6bb547a8a5eb4577eb9d45cb0da52c179122bfa7f
Loading...
Loading
Loading...
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.