Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
Latest 17 from a total of 17 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer ERC20 | 10891370 | 1616 days ago | IN | 0 ETH | 0.00332212 | ||||
Buy Kitty With W... | 9620686 | 1812 days ago | IN | 0 ETH | 0.00015581 | ||||
Buy Kitty With W... | 9620672 | 1812 days ago | IN | 0 ETH | 0.00078991 | ||||
Buy Kitty With W... | 9295602 | 1862 days ago | IN | 0 ETH | 0.00031164 | ||||
Buy Kitty With W... | 9170568 | 1882 days ago | IN | 0 ETH | 0.00086494 | ||||
Buy Kitty With W... | 9040394 | 1907 days ago | IN | 0 ETH | 0.00016696 | ||||
Buy Kitty With W... | 8985076 | 1917 days ago | IN | 0 ETH | 0.00016696 | ||||
Withdraw Owner E... | 8654463 | 1970 days ago | IN | 0 ETH | 0.00003028 | ||||
Buy Kitty With W... | 8337496 | 2019 days ago | IN | 0 ETH | 0.00016696 | ||||
Buy Kitty With W... | 8235255 | 2035 days ago | IN | 0 ETH | 0.00016709 | ||||
Buy Kitty With W... | 8231996 | 2035 days ago | IN | 0 ETH | 0.00016926 | ||||
Buy Kitty With W... | 8231763 | 2035 days ago | IN | 0 ETH | 0.00016913 | ||||
Buy Kitty With W... | 8231681 | 2035 days ago | IN | 0 ETH | 0.00016696 | ||||
Buy Kitty With W... | 8150450 | 2048 days ago | IN | 0 ETH | 0.00016876 | ||||
Buy Kitty With W... | 8126881 | 2052 days ago | IN | 0 ETH | 0.00050949 | ||||
Buy Kitty With W... | 8126408 | 2052 days ago | IN | 0 ETH | 0.00033585 | ||||
Buy Kitty With W... | 8126365 | 2052 days ago | IN | 0 ETH | 0.00033585 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
9831215 | 1779 days ago | 0.004 ETH | ||||
9831215 | 1779 days ago | 0.00415 ETH | ||||
9620686 | 1812 days ago | 0.0068056 ETH | ||||
9620686 | 1812 days ago | 0.00706081 ETH | ||||
9620672 | 1812 days ago | 0.0067683 ETH | ||||
9620672 | 1812 days ago | 0.00702211 ETH | ||||
9295602 | 1862 days ago | 0.02372246 ETH | ||||
9295602 | 1862 days ago | 0.02461205 ETH | ||||
9170568 | 1882 days ago | 0.00806735 ETH | ||||
9170568 | 1882 days ago | 0.00836987 ETH | ||||
9040394 | 1907 days ago | 0.009 ETH | ||||
9040394 | 1907 days ago | 0.0093375 ETH | ||||
8985076 | 1917 days ago | 0.004 ETH | ||||
8985076 | 1917 days ago | 0.00415 ETH | ||||
8950779 | 1922 days ago | 0.001 ETH | ||||
8950779 | 1922 days ago | 0.0010375 ETH | ||||
8823719 | 1943 days ago | 0.001 ETH | ||||
8823719 | 1943 days ago | 0.0010375 ETH | ||||
8823645 | 1943 days ago | 0.001 ETH | ||||
8823645 | 1943 days ago | 0.0010375 ETH | ||||
8823594 | 1943 days ago | 0.001 ETH | ||||
8823594 | 1943 days ago | 0.0010375 ETH | ||||
8823509 | 1943 days ago | 0.001 ETH | ||||
8823509 | 1943 days ago | 0.0010375 ETH | ||||
8823488 | 1943 days ago | 0.001 ETH |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
WCKKittyBuyer
Compiler Version
v0.5.10+commit.5a6ea5b1
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-07-10 */ pragma solidity ^0.5.10; /** * @title SafeMath * @dev Unsigned math operations with safety checks that revert on error */ library SafeMath { /** * @dev Multiplies two unsigned integers, reverts on overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b); return c; } /** * @dev Integer division of two unsigned integers truncating the quotient, reverts on division by zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Subtracts two unsigned integers, reverts on overflow (i.e. if subtrahend is greater than minuend). */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a); uint256 c = a - b; return c; } /** * @dev Adds two unsigned integers, reverts on overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a); return c; } /** * @dev Divides two unsigned integers and returns the remainder (unsigned integer modulo), * reverts when dividing by zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { require(b != 0); return a % b; } } /** * @title Ownable * @dev The Ownable contract has an owner address, and provides basic authorization control * functions, this simplifies the implementation of "user permissions". */ contract Ownable { address private _owner; event OwnershipTransferred(address previousOwner, address newOwner); /** * @dev The Ownable constructor sets the original `owner` of the contract to the sender * account. */ constructor () internal { _owner = msg.sender; emit OwnershipTransferred(address(0), _owner); } /** * @return the address of the owner. */ function owner() public view returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(isOwner()); _; } /** * @return true if `msg.sender` is the owner of the contract. */ function isOwner() public view returns (bool) { return msg.sender == _owner; } /** * @dev Allows the current owner to relinquish control of the contract. * @notice Renouncing to ownership will leave the contract without an owner. * It will not be possible to call the functions with the `onlyOwner` * modifier anymore. */ function renounceOwnership() public onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } /** * @dev Allows the current owner to transfer control of the contract to a newOwner. * @param newOwner The address to transfer ownership to. */ function transferOwnership(address newOwner) public onlyOwner { _transferOwnership(newOwner); } /** * @dev Transfers control of the contract to a newOwner. * @param newOwner The address to transfer ownership to. */ function _transferOwnership(address newOwner) internal { require(newOwner != address(0)); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } contract WCKKittyBuyer is Ownable { // OpenZeppelin's SafeMath library is used for all arithmetic operations to avoid overflows/underflows. using SafeMath for uint256; /* ********** */ /* DATA TYPES */ /* ********** */ /* ****** */ /* EVENTS */ /* ****** */ event KittyBoughtWithWCK(uint256 kittyId, uint256 wckSpent); event DevFeeUpdated(uint256 newDevFee); /* ******* */ /* STORAGE */ /* ******* */ /* ********* */ /* CONSTANTS */ /* ********* */ address kittyCoreAddress = 0x06012c8cf97BEaD5deAe237070F9587f8E7A266d; address kittySalesAddress = 0xb1690C08E213a35Ed9bAb7B318DE14420FB57d8C; address wrappedKittiesAddress = 0x09fE5f0236F0Ea5D930197DCE254d77B04128075; address uniswapExchangeAddress = 0x4FF7Fa493559c40aBd6D157a0bfC35Df68d8D0aC; uint256 devFeeInBasisPoints = 375; /* ********* */ /* FUNCTIONS */ /* ********* */ function buyKittyWithWCK(uint256 _kittyId, uint256 _maxWCKWeiToSpend) external { ERC20(wrappedKittiesAddress).transferFrom(msg.sender, address(this), _maxWCKWeiToSpend); uint256 costInWei = KittySales(kittySalesAddress).getCurrentPrice(_kittyId); uint256 tokensSold = UniswapExchange(uniswapExchangeAddress).tokenToEthSwapOutput(_computePriceWithDevFee(costInWei), _maxWCKWeiToSpend, ~uint256(0)); KittyCore(kittySalesAddress).bid.value(costInWei)(_kittyId); ERC20(wrappedKittiesAddress).transfer(msg.sender, _maxWCKWeiToSpend.sub(tokensSold)); KittyCore(kittyCoreAddress).transfer(msg.sender, _kittyId); emit KittyBoughtWithWCK(_kittyId, tokensSold); } function transferERC20(address _erc20Address, address _to, uint256 _value) external onlyOwner { ERC20(_erc20Address).transfer(_to, _value); } function withdrawOwnerEarnings() external onlyOwner { msg.sender.transfer(address(this).balance); } function updateFee(uint256 _newFee) external onlyOwner { devFeeInBasisPoints = _newFee; emit DevFeeUpdated(_newFee); } constructor() public { ERC20(wrappedKittiesAddress).approve(uniswapExchangeAddress, ~uint256(0)); } function() external payable {} function _computePriceWithDevFee(uint256 _costInWei) internal view returns (uint256) { return (_costInWei.mul(uint256(10000).add(devFeeInBasisPoints))).div(uint256(10000)); } } contract KittyCore { function transfer(address _to, uint256 _tokenId) external; function bid(uint256 _tokenId) external payable; } contract KittySales { function getCurrentPrice(uint256 _tokenId) external view returns (uint256); } contract ERC20 { function transfer(address to, uint256 value) public returns (bool); function transferFrom(address from, address to, uint256 value) public returns (bool); function approve(address spender, uint256 value) public returns (bool); } contract UniswapExchange { function tokenToEthSwapOutput(uint256 eth_bought, uint256 max_tokens, uint256 deadline) external returns (uint256 tokens_sold); }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newFee","type":"uint256"}],"name":"updateFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_erc20Address","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferERC20","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kittyId","type":"uint256"},{"name":"_maxWCKWeiToSpend","type":"uint256"}],"name":"buyKittyWithWCK","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"withdrawOwnerEarnings","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"kittyId","type":"uint256"},{"indexed":false,"name":"wckSpent","type":"uint256"}],"name":"KittyBoughtWithWCK","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newDevFee","type":"uint256"}],"name":"DevFeeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"previousOwner","type":"address"},{"indexed":false,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]
Contract Creation Code
60806040527306012c8cf97bead5deae237070f9587f8e7a266d600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073b1690c08e213a35ed9bab7b318de14420fb57d8c600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507309fe5f0236f0ea5d930197dce254d77b04128075600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550734ff7fa493559c40abd6d157a0bfc35df68d8d0ac600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061017760055534801561016a57600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000196040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561033157600080fd5b505af1158015610345573d6000803e3d6000fd5b505050506040513d602081101561035b57600080fd5b810190808051906020019092919050505050610d368061037c6000396000f3fe60806040526004361061007b5760003560e01c80639db5dbe41161004e5780639db5dbe414610155578063f1d42658146101d0578063f2fde38b14610215578063fd075615146102665761007b565b8063715018a61461007d5780638da5cb5b146100945780638f32d59b146100eb5780639012c4a81461011a575b005b34801561008957600080fd5b5061009261027d565b005b3480156100a057600080fd5b506100a961038a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100f757600080fd5b506101006103b3565b604051808215151515815260200191505060405180910390f35b34801561012657600080fd5b506101536004803603602081101561013d57600080fd5b810190808035906020019092919050505061040a565b005b34801561016157600080fd5b506101ce6004803603606081101561017857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061045c565b005b3480156101dc57600080fd5b50610213600480360360408110156101f357600080fd5b810190808035906020019092919080359060200190929190505050610535565b005b34801561022157600080fd5b506102646004803603602081101561023857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a59565b005b34801561027257600080fd5b5061027b610a76565b005b6102856103b3565b61028e57600080fd5b7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e06000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a160008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b6104126103b3565b61041b57600080fd5b806005819055507fd2fcc8c801d1c6ec6267fa3420cc8428c11a8c06f0d110a700fe9ff1e7317360816040518082815260200191505060405180910390a150565b6104646103b3565b61046d57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156104f457600080fd5b505af1158015610508573d6000803e3d6000fd5b505050506040513d602081101561051e57600080fd5b810190808051906020019092919050505050505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330846040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561061257600080fd5b505af1158015610626573d6000803e3d6000fd5b505050506040513d602081101561063c57600080fd5b8101908080519060200190929190505050506000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c55d0f56846040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156106c357600080fd5b505afa1580156106d7573d6000803e3d6000fd5b505050506040513d60208110156106ed57600080fd5b810190808051906020019092919050505090506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663013efd8b61074984610ae7565b856000196040518463ffffffff1660e01b8152600401808481526020018381526020018281526020019350505050602060405180830381600087803b15801561079157600080fd5b505af11580156107a5573d6000803e3d6000fd5b505050506040513d60208110156107bb57600080fd5b81019080805190602001909291905050509050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663454a2ab383866040518363ffffffff1660e01b8152600401808281526020019150506000604051808303818588803b15801561084357600080fd5b505af1158015610857573d6000803e3d6000fd5b5050505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb336108ae8487610b2d90919063ffffffff16565b6040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561091757600080fd5b505af115801561092b573d6000803e3d6000fd5b505050506040513d602081101561094157600080fd5b810190808051906020019092919050505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33866040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1580156109fc57600080fd5b505af1158015610a10573d6000803e3d6000fd5b505050507f441ff6e6370588874cb6bad0088d75272c0512e18a5cd0ccdf054fa858b5fa0a8482604051808381526020018281526020019250505060405180910390a150505050565b610a616103b3565b610a6a57600080fd5b610a7381610b4d565b50565b610a7e6103b3565b610a8757600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050158015610ae4573d6000803e3d6000fd5b50565b6000610b26612710610b18610b09600554612710610c8290919063ffffffff16565b85610ca190919063ffffffff16565b610cdb90919063ffffffff16565b9050919050565b600082821115610b3c57600080fd5b600082840390508091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610b8757600080fd5b7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e06000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080828401905083811015610c9757600080fd5b8091505092915050565b600080831415610cb45760009050610cd5565b6000828402905082848281610cc557fe5b0414610cd057600080fd5b809150505b92915050565b6000808211610ce957600080fd5b6000828481610cf457fe5b049050809150509291505056fea265627a7a723058209e0f806bdd7fdee84021042e264c46547e00912ba8b786a9c473661ece459b2264736f6c634300050a0032
Deployed Bytecode
0x60806040526004361061007b5760003560e01c80639db5dbe41161004e5780639db5dbe414610155578063f1d42658146101d0578063f2fde38b14610215578063fd075615146102665761007b565b8063715018a61461007d5780638da5cb5b146100945780638f32d59b146100eb5780639012c4a81461011a575b005b34801561008957600080fd5b5061009261027d565b005b3480156100a057600080fd5b506100a961038a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100f757600080fd5b506101006103b3565b604051808215151515815260200191505060405180910390f35b34801561012657600080fd5b506101536004803603602081101561013d57600080fd5b810190808035906020019092919050505061040a565b005b34801561016157600080fd5b506101ce6004803603606081101561017857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061045c565b005b3480156101dc57600080fd5b50610213600480360360408110156101f357600080fd5b810190808035906020019092919080359060200190929190505050610535565b005b34801561022157600080fd5b506102646004803603602081101561023857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a59565b005b34801561027257600080fd5b5061027b610a76565b005b6102856103b3565b61028e57600080fd5b7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e06000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a160008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b6104126103b3565b61041b57600080fd5b806005819055507fd2fcc8c801d1c6ec6267fa3420cc8428c11a8c06f0d110a700fe9ff1e7317360816040518082815260200191505060405180910390a150565b6104646103b3565b61046d57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156104f457600080fd5b505af1158015610508573d6000803e3d6000fd5b505050506040513d602081101561051e57600080fd5b810190808051906020019092919050505050505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330846040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561061257600080fd5b505af1158015610626573d6000803e3d6000fd5b505050506040513d602081101561063c57600080fd5b8101908080519060200190929190505050506000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c55d0f56846040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156106c357600080fd5b505afa1580156106d7573d6000803e3d6000fd5b505050506040513d60208110156106ed57600080fd5b810190808051906020019092919050505090506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663013efd8b61074984610ae7565b856000196040518463ffffffff1660e01b8152600401808481526020018381526020018281526020019350505050602060405180830381600087803b15801561079157600080fd5b505af11580156107a5573d6000803e3d6000fd5b505050506040513d60208110156107bb57600080fd5b81019080805190602001909291905050509050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663454a2ab383866040518363ffffffff1660e01b8152600401808281526020019150506000604051808303818588803b15801561084357600080fd5b505af1158015610857573d6000803e3d6000fd5b5050505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb336108ae8487610b2d90919063ffffffff16565b6040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561091757600080fd5b505af115801561092b573d6000803e3d6000fd5b505050506040513d602081101561094157600080fd5b810190808051906020019092919050505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33866040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1580156109fc57600080fd5b505af1158015610a10573d6000803e3d6000fd5b505050507f441ff6e6370588874cb6bad0088d75272c0512e18a5cd0ccdf054fa858b5fa0a8482604051808381526020018281526020019250505060405180910390a150505050565b610a616103b3565b610a6a57600080fd5b610a7381610b4d565b50565b610a7e6103b3565b610a8757600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050158015610ae4573d6000803e3d6000fd5b50565b6000610b26612710610b18610b09600554612710610c8290919063ffffffff16565b85610ca190919063ffffffff16565b610cdb90919063ffffffff16565b9050919050565b600082821115610b3c57600080fd5b600082840390508091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610b8757600080fd5b7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e06000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080828401905083811015610c9757600080fd5b8091505092915050565b600080831415610cb45760009050610cd5565b6000828402905082848281610cc557fe5b0414610cd057600080fd5b809150505b92915050565b6000808211610ce957600080fd5b6000828481610cf457fe5b049050809150509291505056fea265627a7a723058209e0f806bdd7fdee84021042e264c46547e00912ba8b786a9c473661ece459b2264736f6c634300050a0032
Deployed Bytecode Sourcemap
4047:2485:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3277:140;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3277:140:0;;;:::i;:::-;;2564:79;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2564:79:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2899:92;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2899:92:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6033:141;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6033:141:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6033:141:0;;;;;;;;;;;;;;;;;:::i;:::-;;5749:155;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5749:155:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5749:155:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5020:721;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5020:721:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5020:721:0;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3594:109;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3594:109:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3594:109:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;5912:113;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5912:113:0;;;:::i;:::-;;3277:140;2776:9;:7;:9::i;:::-;2768:18;;;;;;3339:40;3360:6;;;;;;;;;;;3376:1;3339:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3407:1;3390:6;;:19;;;;;;;;;;;;;;;;;;3277:140::o;2564:79::-;2602:7;2629:6;;;;;;;;;;;2622:13;;2564:79;:::o;2899:92::-;2939:4;2977:6;;;;;;;;;;;2963:20;;:10;:20;;;2956:27;;2899:92;:::o;6033:141::-;2776:9;:7;:9::i;:::-;2768:18;;;;;;6121:7;6099:19;:29;;;;6144:22;6158:7;6144:22;;;;;;;;;;;;;;;;;;6033:141;:::o;5749:155::-;2776:9;:7;:9::i;:::-;2768:18;;;;;;5860:13;5854:29;;;5884:3;5889:6;5854:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5854:42:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5854:42:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5854:42:0;;;;;;;;;;;;;;;;;5749:155;;;:::o;5020:721::-;5116:21;;;;;;;;;;;5110:41;;;5152:10;5172:4;5179:17;5110:87;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5110:87:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5110:87:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5110:87:0;;;;;;;;;;;;;;;;;5208:17;5239;;;;;;;;;;;5228:45;;;5274:8;5228:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5228:55:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5228:55:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5228:55:0;;;;;;;;;;;;;;;;5208:75;;5294:18;5331:22;;;;;;;;;;;5315:60;;;5376:34;5400:9;5376:23;:34::i;:::-;5412:17;5440:1;5431:11;5315:128;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5315:128:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5315:128:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5315:128:0;;;;;;;;;;;;;;;;5294:149;;5464:17;;;;;;;;;;;5454:32;;;5493:9;5504:8;5454:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5454:59:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5454:59:0;;;;;5530:21;;;;;;;;;;;5524:37;;;5562:10;5574:33;5596:10;5574:17;:21;;:33;;;;:::i;:::-;5524:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5524:84:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5524:84:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5524:84:0;;;;;;;;;;;;;;;;;5629:16;;;;;;;;;;;5619:36;;;5656:10;5668:8;5619:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5619:58:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5619:58:0;;;;5693:40;5712:8;5722:10;5693:40;;;;;;;;;;;;;;;;;;;;;;;;5020:721;;;;:::o;3594:109::-;2776:9;:7;:9::i;:::-;2768:18;;;;;;3667:28;3686:8;3667:18;:28::i;:::-;3594:109;:::o;5912:113::-;2776:9;:7;:9::i;:::-;2768:18;;;;;;5975:10;:19;;:42;6003:4;5995:21;;;5975:42;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5975:42:0;5912:113::o;6341:188::-;6417:7;6444:77;6514:5;6445:55;6460:39;6479:19;;6468:5;6460:18;;:39;;;;:::i;:::-;6445:10;:14;;:55;;;;:::i;:::-;6444:61;;:77;;;;:::i;:::-;6437:84;;6341:188;;;:::o;1247:150::-;1305:7;1338:1;1333;:6;;1325:15;;;;;;1351:9;1367:1;1363;:5;1351:17;;1388:1;1381:8;;;1247:150;;;;:::o;3853:187::-;3947:1;3927:22;;:8;:22;;;;3919:31;;;;;;3966:38;3987:6;;;;;;;;;;;3995:8;3966:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4024:8;4015:6;;:17;;;;;;;;;;;;;;;;;;3853:187;:::o;1483:150::-;1541:7;1561:9;1577:1;1573;:5;1561:17;;1602:1;1597;:6;;1589:15;;;;;;1624:1;1617:8;;;1483:150;;;;:::o;242:433::-;300:7;549:1;544;:6;540:47;;;574:1;567:8;;;;540:47;599:9;615:1;611;:5;599:17;;644:1;639;635;:5;;;;;;:10;627:19;;;;;;666:1;659:8;;;242:433;;;;;:::o;808:303::-;866:7;965:1;961;:5;953:14;;;;;;978:9;994:1;990;:5;;;;;;978:17;;1102:1;1095:8;;;808:303;;;;:::o
Swarm Source
bzzr://9e0f806bdd7fdee84021042e264c46547e00912ba8b786a9c473661ece459b22
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ 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.