Latest 25 from a total of 39 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Disable Trade | 12179774 | 1818 days ago | IN | 0 ETH | 0.003525 | ||||
| Disable Trade | 11591933 | 1908 days ago | IN | 0 ETH | 0.00332818 | ||||
| Disable Trade | 11372289 | 1942 days ago | IN | 0 ETH | 0.00143937 | ||||
| Disable Trade | 10793726 | 2031 days ago | IN | 0 ETH | 0.00613937 | ||||
| Disable Trade | 10475460 | 2080 days ago | IN | 0 ETH | 0.00161562 | ||||
| Disable Trade | 10448982 | 2084 days ago | IN | 0 ETH | 0.00099875 | ||||
| Disable Trade | 10385326 | 2094 days ago | IN | 0 ETH | 0.00120437 | ||||
| Disable Trade | 10379157 | 2095 days ago | IN | 0 ETH | 0.00096937 | ||||
| Disable Trade | 10267835 | 2112 days ago | IN | 0 ETH | 0.00074641 | ||||
| Disable Trade | 10177770 | 2126 days ago | IN | 0 ETH | 0.00079312 | ||||
| Disable Trade | 9997448 | 2154 days ago | IN | 0 ETH | 0.00011926 | ||||
| Disable Trade | 9907186 | 2168 days ago | IN | 0 ETH | 0.00017625 | ||||
| Disable Trade | 9817195 | 2182 days ago | IN | 0 ETH | 0.0001645 | ||||
| Disable Trade | 9725407 | 2196 days ago | IN | 0 ETH | 0.00014687 | ||||
| Disable Trade | 9680986 | 2203 days ago | IN | 0 ETH | 0.00046724 | ||||
| Disable Trade | 9634861 | 2210 days ago | IN | 0 ETH | 0.00014687 | ||||
| Disable Trade | 9584283 | 2218 days ago | IN | 0 ETH | 0.00008812 | ||||
| Disable Trade | 9544867 | 2224 days ago | IN | 0 ETH | 0.00014687 | ||||
| Disable Trade | 9407205 | 2245 days ago | IN | 0 ETH | 0.00008812 | ||||
| Disable Trade | 9322983 | 2258 days ago | IN | 0 ETH | 0.00005875 | ||||
| Disable Trade | 9224466 | 2273 days ago | IN | 0 ETH | 0.00008812 | ||||
| Transfer | 9082120 | 2300 days ago | IN | 0.01 ETH | 0.00015738 | ||||
| Withdraw | 9076314 | 2301 days ago | IN | 0 ETH | 0.00024895 | ||||
| Withdraw | 9076293 | 2301 days ago | IN | 0 ETH | 0.00025601 | ||||
| Transfer Admin Q... | 9076231 | 2301 days ago | IN | 0 ETH | 0.00022698 |
Latest 25 internal transactions (View All)
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| - | 12179864 | 1818 days ago | 1,000 ETH | ||||
| - | 12179812 | 1818 days ago | 197.58126954 ETH | ||||
| - | 12179212 | 1818 days ago | 4.7352801 ETH | ||||
| - | 12178558 | 1818 days ago | 9.982 ETH | ||||
| - | 12178548 | 1818 days ago | 13.64830907 ETH | ||||
| - | 12177687 | 1818 days ago | 14.9798889 ETH | ||||
| - | 12176564 | 1818 days ago | 12.9432853 ETH | ||||
| - | 12176443 | 1818 days ago | 15.6917143 ETH | ||||
| - | 12175936 | 1818 days ago | 19.98 ETH | ||||
| - | 12175799 | 1818 days ago | 5.36096439 ETH | ||||
| - | 12175705 | 1818 days ago | 5.91987305 ETH | ||||
| - | 12173995 | 1819 days ago | 22.39402661 ETH | ||||
| - | 12170081 | 1819 days ago | 9.98930015 ETH | ||||
| - | 12169712 | 1819 days ago | 10.26696142 ETH | ||||
| - | 12166709 | 1820 days ago | 7.36913492 ETH | ||||
| - | 12166694 | 1820 days ago | 12.53723616 ETH | ||||
| - | 12166681 | 1820 days ago | 9.99 ETH | ||||
| - | 12166673 | 1820 days ago | 13.9146283 ETH | ||||
| - | 12166230 | 1820 days ago | 4.995 ETH | ||||
| - | 12166199 | 1820 days ago | 3.74625 ETH | ||||
| - | 12166068 | 1820 days ago | 12.8482936 ETH | ||||
| - | 12165074 | 1820 days ago | 4.995 ETH | ||||
| - | 12165073 | 1820 days ago | 14.92901831 ETH | ||||
| - | 12164774 | 1820 days ago | 13.13566607 ETH | ||||
| - | 12164558 | 1820 days ago | 0.6658344 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
KyberReserve
Compiler Version
v0.4.18+commit.9cf6e910
Contract Source Code (Solidity Multiple files format)
pragma solidity 0.4.18;
import "../ERC20Interface.sol";
import "../Utils.sol";
import "../Withdrawable.sol";
import "../ConversionRatesInterface.sol";
import "../SanityRatesInterface.sol";
import "../KyberReserveInterface.sol";
/// @title Kyber Reserve contract
contract KyberReserve is KyberReserveInterface, Withdrawable, Utils {
address public kyberNetwork;
bool public tradeEnabled;
ConversionRatesInterface public conversionRatesContract;
SanityRatesInterface public sanityRatesContract;
mapping(bytes32=>bool) public approvedWithdrawAddresses; // sha3(token,address)=>bool
mapping(address=>address) public tokenWallet;
function KyberReserve(address _kyberNetwork, ConversionRatesInterface _ratesContract, address _admin) public {
require(_admin != address(0));
require(_ratesContract != address(0));
require(_kyberNetwork != address(0));
kyberNetwork = _kyberNetwork;
conversionRatesContract = _ratesContract;
admin = _admin;
tradeEnabled = true;
}
event DepositToken(ERC20 token, uint amount);
function() public payable {
DepositToken(ETH_TOKEN_ADDRESS, msg.value);
}
event TradeExecute(
address indexed origin,
address src,
uint srcAmount,
address destToken,
uint destAmount,
address destAddress
);
function trade(
ERC20 srcToken,
uint srcAmount,
ERC20 destToken,
address destAddress,
uint conversionRate,
bool validate
)
public
payable
returns(bool)
{
require(tradeEnabled);
require(msg.sender == kyberNetwork);
require(doTrade(srcToken, srcAmount, destToken, destAddress, conversionRate, validate));
return true;
}
event TradeEnabled(bool enable);
function enableTrade() public onlyAdmin returns(bool) {
tradeEnabled = true;
TradeEnabled(true);
return true;
}
function disableTrade() public onlyAlerter returns(bool) {
tradeEnabled = false;
TradeEnabled(false);
return true;
}
event WithdrawAddressApproved(ERC20 token, address addr, bool approve);
function approveWithdrawAddress(ERC20 token, address addr, bool approve) public onlyAdmin {
approvedWithdrawAddresses[keccak256(token, addr)] = approve;
WithdrawAddressApproved(token, addr, approve);
setDecimals(token);
if ((tokenWallet[token] == address(0x0)) && (token != ETH_TOKEN_ADDRESS)) {
tokenWallet[token] = this; // by default
require(token.approve(this, 2 ** 255));
}
}
event NewTokenWallet(ERC20 token, address wallet);
function setTokenWallet(ERC20 token, address wallet) public onlyAdmin {
require(wallet != address(0x0));
tokenWallet[token] = wallet;
NewTokenWallet(token, wallet);
}
event WithdrawFunds(ERC20 token, uint amount, address destination);
function withdraw(ERC20 token, uint amount, address destination) public onlyOperator returns(bool) {
require(approvedWithdrawAddresses[keccak256(token, destination)]);
if (token == ETH_TOKEN_ADDRESS) {
destination.transfer(amount);
} else {
require(token.transferFrom(tokenWallet[token], destination, amount));
}
WithdrawFunds(token, amount, destination);
return true;
}
event SetContractAddresses(address network, address rate, address sanity);
function setContracts(
address _kyberNetwork,
ConversionRatesInterface _conversionRates,
SanityRatesInterface _sanityRates
)
public
onlyAdmin
{
require(_kyberNetwork != address(0));
require(_conversionRates != address(0));
kyberNetwork = _kyberNetwork;
conversionRatesContract = _conversionRates;
sanityRatesContract = _sanityRates;
SetContractAddresses(kyberNetwork, conversionRatesContract, sanityRatesContract);
}
////////////////////////////////////////////////////////////////////////////
/// status functions ///////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
function getBalance(ERC20 token) public view returns(uint) {
if (token == ETH_TOKEN_ADDRESS)
return this.balance;
else {
address wallet = tokenWallet[token];
uint balanceOfWallet = token.balanceOf(wallet);
uint allowanceOfWallet = token.allowance(wallet, this);
return (balanceOfWallet < allowanceOfWallet) ? balanceOfWallet : allowanceOfWallet;
}
}
function getDestQty(ERC20 src, ERC20 dest, uint srcQty, uint rate) public view returns(uint) {
uint dstDecimals = getDecimals(dest);
uint srcDecimals = getDecimals(src);
return calcDstQty(srcQty, srcDecimals, dstDecimals, rate);
}
function getSrcQty(ERC20 src, ERC20 dest, uint dstQty, uint rate) public view returns(uint) {
uint dstDecimals = getDecimals(dest);
uint srcDecimals = getDecimals(src);
return calcSrcQty(dstQty, srcDecimals, dstDecimals, rate);
}
function getConversionRate(ERC20 src, ERC20 dest, uint srcQty, uint blockNumber) public view returns(uint) {
ERC20 token;
bool isBuy;
if (!tradeEnabled) return 0;
if (ETH_TOKEN_ADDRESS == src) {
isBuy = true;
token = dest;
} else if (ETH_TOKEN_ADDRESS == dest) {
isBuy = false;
token = src;
} else {
return 0; // pair is not listed
}
uint rate = conversionRatesContract.getRate(token, blockNumber, isBuy, srcQty);
uint destQty = getDestQty(src, dest, srcQty, rate);
if (getBalance(dest) < destQty) return 0;
if (sanityRatesContract != address(0)) {
uint sanityRate = sanityRatesContract.getSanityRate(src, dest);
if (rate > sanityRate) return 0;
}
return rate;
}
/// @dev do a trade
/// @param srcToken Src token
/// @param srcAmount Amount of src token
/// @param destToken Destination token
/// @param destAddress Destination address to send tokens to
/// @param validate If true, additional validations are applicable
/// @return true iff trade is successful
function doTrade(
ERC20 srcToken,
uint srcAmount,
ERC20 destToken,
address destAddress,
uint conversionRate,
bool validate
)
internal
returns(bool)
{
// can skip validation if done at kyber network level
if (validate) {
require(conversionRate > 0);
if (srcToken == ETH_TOKEN_ADDRESS)
require(msg.value == srcAmount);
else
require(msg.value == 0);
}
uint destAmount = getDestQty(srcToken, destToken, srcAmount, conversionRate);
// sanity check
require(destAmount > 0);
// add to imbalance
ERC20 token;
int tradeAmount;
if (srcToken == ETH_TOKEN_ADDRESS) {
tradeAmount = int(destAmount);
token = destToken;
} else {
tradeAmount = -1 * int(srcAmount);
token = srcToken;
}
conversionRatesContract.recordImbalance(
token,
tradeAmount,
0,
block.number
);
// collect src tokens
if (srcToken != ETH_TOKEN_ADDRESS) {
require(srcToken.transferFrom(msg.sender, tokenWallet[srcToken], srcAmount));
}
// send dest tokens
if (destToken == ETH_TOKEN_ADDRESS) {
destAddress.transfer(destAmount);
} else {
require(destToken.transferFrom(tokenWallet[destToken], destAddress, destAmount));
}
TradeExecute(msg.sender, srcToken, srcAmount, destToken, destAmount, destAddress);
return true;
}
}
pragma solidity 0.4.18;
import "./ERC20Interface.sol";
interface ConversionRatesInterface {
function recordImbalance(
ERC20 token,
int buyAmount,
uint rateUpdateBlock,
uint currentBlock
)
public;
function getRate(ERC20 token, uint currentBlockNumber, bool buy, uint qty) public view returns(uint);
}
pragma solidity 0.4.18;
// https://github.com/ethereum/EIPs/issues/20
interface ERC20 {
function totalSupply() public view returns (uint supply);
function balanceOf(address _owner) public view returns (uint balance);
function transfer(address _to, uint _value) public returns (bool success);
function transferFrom(address _from, address _to, uint _value) public returns (bool success);
function approve(address _spender, uint _value) public returns (bool success);
function allowance(address _owner, address _spender) public view returns (uint remaining);
function decimals() public view returns(uint digits);
event Approval(address indexed _owner, address indexed _spender, uint _value);
}
pragma solidity 0.4.18;
import "./ERC20Interface.sol";
/// @title Kyber Reserve contract
interface KyberReserveInterface {
function trade(
ERC20 srcToken,
uint srcAmount,
ERC20 destToken,
address destAddress,
uint conversionRate,
bool validate
)
public
payable
returns(bool);
function getConversionRate(ERC20 src, ERC20 dest, uint srcQty, uint blockNumber) public view returns(uint);
}
pragma solidity 0.4.18;
contract PermissionGroups {
address public admin;
address public pendingAdmin;
mapping(address=>bool) internal operators;
mapping(address=>bool) internal alerters;
address[] internal operatorsGroup;
address[] internal alertersGroup;
uint constant internal MAX_GROUP_SIZE = 50;
function PermissionGroups() public {
admin = msg.sender;
}
modifier onlyAdmin() {
require(msg.sender == admin);
_;
}
modifier onlyOperator() {
require(operators[msg.sender]);
_;
}
modifier onlyAlerter() {
require(alerters[msg.sender]);
_;
}
function getOperators () external view returns(address[]) {
return operatorsGroup;
}
function getAlerters () external view returns(address[]) {
return alertersGroup;
}
event TransferAdminPending(address pendingAdmin);
/**
* @dev Allows the current admin to set the pendingAdmin address.
* @param newAdmin The address to transfer ownership to.
*/
function transferAdmin(address newAdmin) public onlyAdmin {
require(newAdmin != address(0));
TransferAdminPending(pendingAdmin);
pendingAdmin = newAdmin;
}
/**
* @dev Allows the current admin to set the admin in one tx. Useful initial deployment.
* @param newAdmin The address to transfer ownership to.
*/
function transferAdminQuickly(address newAdmin) public onlyAdmin {
require(newAdmin != address(0));
TransferAdminPending(newAdmin);
AdminClaimed(newAdmin, admin);
admin = newAdmin;
}
event AdminClaimed( address newAdmin, address previousAdmin);
/**
* @dev Allows the pendingAdmin address to finalize the change admin process.
*/
function claimAdmin() public {
require(pendingAdmin == msg.sender);
AdminClaimed(pendingAdmin, admin);
admin = pendingAdmin;
pendingAdmin = address(0);
}
event AlerterAdded (address newAlerter, bool isAdd);
function addAlerter(address newAlerter) public onlyAdmin {
require(!alerters[newAlerter]); // prevent duplicates.
require(alertersGroup.length < MAX_GROUP_SIZE);
AlerterAdded(newAlerter, true);
alerters[newAlerter] = true;
alertersGroup.push(newAlerter);
}
function removeAlerter (address alerter) public onlyAdmin {
require(alerters[alerter]);
alerters[alerter] = false;
for (uint i = 0; i < alertersGroup.length; ++i) {
if (alertersGroup[i] == alerter) {
alertersGroup[i] = alertersGroup[alertersGroup.length - 1];
alertersGroup.length--;
AlerterAdded(alerter, false);
break;
}
}
}
event OperatorAdded(address newOperator, bool isAdd);
function addOperator(address newOperator) public onlyAdmin {
require(!operators[newOperator]); // prevent duplicates.
require(operatorsGroup.length < MAX_GROUP_SIZE);
OperatorAdded(newOperator, true);
operators[newOperator] = true;
operatorsGroup.push(newOperator);
}
function removeOperator (address operator) public onlyAdmin {
require(operators[operator]);
operators[operator] = false;
for (uint i = 0; i < operatorsGroup.length; ++i) {
if (operatorsGroup[i] == operator) {
operatorsGroup[i] = operatorsGroup[operatorsGroup.length - 1];
operatorsGroup.length -= 1;
OperatorAdded(operator, false);
break;
}
}
}
}
pragma solidity 0.4.18;
import "./ERC20Interface.sol";
interface SanityRatesInterface {
function getSanityRate(ERC20 src, ERC20 dest) public view returns(uint);
}
pragma solidity 0.4.18;
import "./ERC20Interface.sol";
/// @title Kyber constants contract
contract Utils {
ERC20 constant internal ETH_TOKEN_ADDRESS = ERC20(0x00eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee);
uint constant internal PRECISION = (10**18);
uint constant internal MAX_QTY = (10**28); // 10B tokens
uint constant internal MAX_RATE = (PRECISION * 10**6); // up to 1M tokens per ETH
uint constant internal MAX_DECIMALS = 18;
uint constant internal ETH_DECIMALS = 18;
mapping(address=>uint) internal decimals;
function setDecimals(ERC20 token) internal {
if (token == ETH_TOKEN_ADDRESS) decimals[token] = ETH_DECIMALS;
else decimals[token] = token.decimals();
}
function getDecimals(ERC20 token) internal view returns(uint) {
if (token == ETH_TOKEN_ADDRESS) return ETH_DECIMALS; // save storage access
uint tokenDecimals = decimals[token];
// technically, there might be token with decimals 0
// moreover, very possible that old tokens have decimals 0
// these tokens will just have higher gas fees.
if(tokenDecimals == 0) return token.decimals();
return tokenDecimals;
}
function calcDstQty(uint srcQty, uint srcDecimals, uint dstDecimals, uint rate) internal pure returns(uint) {
require(srcQty <= MAX_QTY);
require(rate <= MAX_RATE);
if (dstDecimals >= srcDecimals) {
require((dstDecimals - srcDecimals) <= MAX_DECIMALS);
return (srcQty * rate * (10**(dstDecimals - srcDecimals))) / PRECISION;
} else {
require((srcDecimals - dstDecimals) <= MAX_DECIMALS);
return (srcQty * rate) / (PRECISION * (10**(srcDecimals - dstDecimals)));
}
}
function calcSrcQty(uint dstQty, uint srcDecimals, uint dstDecimals, uint rate) internal pure returns(uint) {
require(dstQty <= MAX_QTY);
require(rate <= MAX_RATE);
//source quantity is rounded up. to avoid dest quantity being too low.
uint numerator;
uint denominator;
if (srcDecimals >= dstDecimals) {
require((srcDecimals - dstDecimals) <= MAX_DECIMALS);
numerator = (PRECISION * dstQty * (10**(srcDecimals - dstDecimals)));
denominator = rate;
} else {
require((dstDecimals - srcDecimals) <= MAX_DECIMALS);
numerator = (PRECISION * dstQty);
denominator = (rate * (10**(dstDecimals - srcDecimals)));
}
return (numerator + denominator - 1) / denominator; //avoid rounding down errors
}
}
pragma solidity 0.4.18;
import "./ERC20Interface.sol";
import "./PermissionGroups.sol";
/**
* @title Contracts that should be able to recover tokens or ethers
* @author Ilan Doron
* @dev This allows to recover any tokens or Ethers received in a contract.
* This will prevent any accidental loss of tokens.
*/
contract Withdrawable is PermissionGroups {
event TokenWithdraw(ERC20 token, uint amount, address sendTo);
/**
* @dev Withdraw all ERC20 compatible tokens
* @param token ERC20 The address of the token contract
*/
function withdrawToken(ERC20 token, uint amount, address sendTo) external onlyAdmin {
require(token.transfer(sendTo, amount));
TokenWithdraw(token, amount, sendTo);
}
event EtherWithdraw(uint amount, address sendTo);
/**
* @dev Withdraw Ethers
*/
function withdrawEther(uint amount, address sendTo) external onlyAdmin {
sendTo.transfer(amount);
EtherWithdraw(amount, sendTo);
}
}
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":false,"inputs":[],"name":"enableTrade","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"alerter","type":"address"}],"name":"removeAlerter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"wallet","type":"address"}],"name":"setTokenWallet","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"pendingAdmin","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getOperators","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"},{"name":"sendTo","type":"address"}],"name":"withdrawToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newAlerter","type":"address"}],"name":"addAlerter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"sanityRatesContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"addr","type":"address"},{"name":"approve","type":"bool"}],"name":"approveWithdrawAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"},{"name":"destination","type":"address"}],"name":"withdraw","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"disableTrade","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"srcToken","type":"address"},{"name":"srcAmount","type":"uint256"},{"name":"destToken","type":"address"},{"name":"destAddress","type":"address"},{"name":"conversionRate","type":"uint256"},{"name":"validate","type":"bool"}],"name":"trade","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"newAdmin","type":"address"}],"name":"transferAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"claimAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newAdmin","type":"address"}],"name":"transferAdminQuickly","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getAlerters","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"src","type":"address"},{"name":"dest","type":"address"},{"name":"srcQty","type":"uint256"},{"name":"blockNumber","type":"uint256"}],"name":"getConversionRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOperator","type":"address"}],"name":"addOperator","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"src","type":"address"},{"name":"dest","type":"address"},{"name":"dstQty","type":"uint256"},{"name":"rate","type":"uint256"}],"name":"getSrcQty","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"tokenWallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"operator","type":"address"}],"name":"removeOperator","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kyberNetwork","type":"address"},{"name":"_conversionRates","type":"address"},{"name":"_sanityRates","type":"address"}],"name":"setContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"kyberNetwork","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"},{"name":"sendTo","type":"address"}],"name":"withdrawEther","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"conversionRatesContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tradeEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"approvedWithdrawAddresses","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"admin","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"getBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"src","type":"address"},{"name":"dest","type":"address"},{"name":"srcQty","type":"uint256"},{"name":"rate","type":"uint256"}],"name":"getDestQty","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kyberNetwork","type":"address"},{"name":"_ratesContract","type":"address"},{"name":"_admin","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"DepositToken","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"origin","type":"address"},{"indexed":false,"name":"src","type":"address"},{"indexed":false,"name":"srcAmount","type":"uint256"},{"indexed":false,"name":"destToken","type":"address"},{"indexed":false,"name":"destAmount","type":"uint256"},{"indexed":false,"name":"destAddress","type":"address"}],"name":"TradeExecute","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"enable","type":"bool"}],"name":"TradeEnabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"addr","type":"address"},{"indexed":false,"name":"approve","type":"bool"}],"name":"WithdrawAddressApproved","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"wallet","type":"address"}],"name":"NewTokenWallet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"destination","type":"address"}],"name":"WithdrawFunds","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"network","type":"address"},{"indexed":false,"name":"rate","type":"address"},{"indexed":false,"name":"sanity","type":"address"}],"name":"SetContractAddresses","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"sendTo","type":"address"}],"name":"TokenWithdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"sendTo","type":"address"}],"name":"EtherWithdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"pendingAdmin","type":"address"}],"name":"TransferAdminPending","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newAdmin","type":"address"},{"indexed":false,"name":"previousAdmin","type":"address"}],"name":"AdminClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newAlerter","type":"address"},{"indexed":false,"name":"isAdd","type":"bool"}],"name":"AlerterAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newOperator","type":"address"},{"indexed":false,"name":"isAdd","type":"bool"}],"name":"OperatorAdded","type":"event"}]Contract Creation Code
6060604052341561000f57600080fd5b60405160608061219083398101604052808051919060200180519190602001805160008054600160a060020a03191633600160a060020a039081169190911790915590925082161515905061006357600080fd5b600160a060020a038216151561007857600080fd5b600160a060020a038316151561008d57600080fd5b6007805460088054600160a060020a03958616600160a060020a031991821617909155600080549486169482169490941790935560a060020a60ff02199390941691909316171674010000000000000000000000000000000000000000179055612094806100fc6000396000f3006060604052600436106101655763ffffffff60e060020a60003504166299d38681146101b957806301a12fd3146101e05780631bc7bfec14610201578063267822471461022657806327a099d8146102555780633ccdbb28146102bb578063408ee7fe146102e457806347e6924f14610303578063546dc71c1461031657806369328dec146103405780636940030f146103695780636cf698111461037c57806375829def146103a857806377f50f97146103c75780637acc8678146103da5780637c423f54146103f95780637cd442721461040c5780639870d7fe14610449578063a7fca95314610468578063a80cbac614610493578063ac8a584a146104b2578063b3066d49146104d1578063b78b842d146104fc578063ce56c4541461050f578063d5847d3314610531578063d621e81314610544578063d7b7024d14610557578063f851a4401461056d578063f8b2cb4f14610580578063fa64dffa1461059f575b7f2d0c0a8842b9944ece1495eb61121621b5e36bd6af3bba0318c695f525aef79f60008051602061204983398151915234604051600160a060020a03909216825260208201526040908101905180910390a1005b34156101c457600080fd5b6101cc6105ca565b604051901515815260200160405180910390f35b34156101eb57600080fd5b6101ff600160a060020a0360043516610658565b005b341561020c57600080fd5b6101ff600160a060020a03600435811690602435166107c8565b341561023157600080fd5b610239610874565b604051600160a060020a03909116815260200160405180910390f35b341561026057600080fd5b610268610883565b60405160208082528190810183818151815260200191508051906020019060200280838360005b838110156102a757808201518382015260200161028f565b505050509050019250505060405180910390f35b34156102c657600080fd5b6101ff600160a060020a0360043581169060243590604435166108eb565b34156102ef57600080fd5b6101ff600160a060020a03600435166109e2565b341561030e57600080fd5b610239610ade565b341561032157600080fd5b6101ff600160a060020a03600435811690602435166044351515610aed565b341561034b57600080fd5b6101cc600160a060020a036004358116906024359060443516610cd7565b341561037457600080fd5b6101cc610eb0565b6101cc600160a060020a03600435811690602435906044358116906064351660843560a4351515610f31565b34156103b357600080fd5b6101ff600160a060020a0360043516610f9e565b34156103d257600080fd5b6101ff611039565b34156103e557600080fd5b6101ff600160a060020a03600435166110d3565b341561040457600080fd5b6102686111b5565b341561041757600080fd5b610437600160a060020a036004358116906024351660443560643561121b565b60405190815260200160405180910390f35b341561045457600080fd5b6101ff600160a060020a0360043516611406565b341561047357600080fd5b610437600160a060020a03600435811690602435166044356064356114d6565b341561049e57600080fd5b610239600160a060020a0360043516611508565b34156104bd57600080fd5b6101ff600160a060020a0360043516611523565b34156104dc57600080fd5b6101ff600160a060020a036004358116906024358116906044351661168f565b341561050757600080fd5b610239611773565b341561051a57600080fd5b6101ff600435600160a060020a0360243516611782565b341561053c57600080fd5b610239611815565b341561054f57600080fd5b6101cc611824565b341561056257600080fd5b6101cc600435611845565b341561057857600080fd5b61023961185a565b341561058b57600080fd5b610437600160a060020a0360043516611869565b34156105aa57600080fd5b610437600160a060020a03600435811690602435166044356064356119bd565b6000805433600160a060020a039081169116146105e657600080fd5b6007805474ff00000000000000000000000000000000000000001916740100000000000000000000000000000000000000001790557f7d7f00509dd73ac4449f698ae75ccc797895eff5fa9d446d3df387598a26e7356001604051901515815260200160405180910390a15060015b90565b6000805433600160a060020a0390811691161461067457600080fd5b600160a060020a03821660009081526003602052604090205460ff16151561069b57600080fd5b50600160a060020a0381166000908152600360205260408120805460ff191690555b6005548110156107c45781600160a060020a03166005828154811015156106e057fe5b600091825260209091200154600160a060020a031614156107bc5760058054600019810190811061070d57fe5b60009182526020909120015460058054600160a060020a03909216918390811061073357fe5b60009182526020909120018054600160a060020a031916600160a060020a0392909216919091179055600580549061076f906000198301611ff4565b507f5611bf3e417d124f97bf2c788843ea8bb502b66079fbee02158ef30b172cb762826000604051600160a060020a039092168252151560208201526040908101905180910390a16107c4565b6001016106bd565b5050565b60005433600160a060020a039081169116146107e357600080fd5b600160a060020a03811615156107f857600080fd5b600160a060020a038281166000908152600b6020526040908190208054600160a060020a031916928416929092179091557f81995c7b922889ac0a81e41866106d4046268ea3a9abaae9f9e080a6ce36ee7d908390839051600160a060020a039283168152911660208201526040908101905180910390a15050565b600154600160a060020a031681565b61088b612018565b60048054806020026020016040519081016040528092919081815260200182805480156108e157602002820191906000526020600020905b8154600160a060020a031681526001909101906020018083116108c3575b5050505050905090565b60005433600160a060020a0390811691161461090657600080fd5b82600160a060020a031663a9059cbb828460006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561096357600080fd5b6102c65a03f1151561097457600080fd5b50505060405180519050151561098957600080fd5b7f72cb8a894ddb372ceec3d2a7648d86f17d5a15caae0e986c53109b8a9a9385e6838383604051600160a060020a03938416815260208101929092529091166040808301919091526060909101905180910390a1505050565b60005433600160a060020a039081169116146109fd57600080fd5b600160a060020a03811660009081526003602052604090205460ff1615610a2357600080fd5b60055460329010610a3357600080fd5b7f5611bf3e417d124f97bf2c788843ea8bb502b66079fbee02158ef30b172cb762816001604051600160a060020a039092168252151560208201526040908101905180910390a1600160a060020a0381166000908152600360205260409020805460ff191660019081179091556005805490918101610ab28382611ff4565b5060009182526020909120018054600160a060020a031916600160a060020a0392909216919091179055565b600954600160a060020a031681565b60005433600160a060020a03908116911614610b0857600080fd5b80600a600085856040516c01000000000000000000000000600160a060020a039384168102825291909216026014820152602801604051908190039020815260208101919091526040908101600020805460ff1916921515929092179091557fd5fd5351efae1f4bb760079da9f0ff9589e2c3e216337ca9d39cdff573b245c49084908490849051600160a060020a0393841681529190921660208201529015156040808301919091526060909101905180910390a1610bc7836119e4565b600160a060020a038381166000908152600b602052604090205416158015610c065750600160a060020a03831660008051602061204983398151915214155b15610cd257600160a060020a038381166000818152600b60205260408082208054600160a060020a03191630958616179055919263095ea7b39290917f800000000000000000000000000000000000000000000000000000000000000091516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610cac57600080fd5b6102c65a03f11515610cbd57600080fd5b505050604051805190501515610cd257600080fd5b505050565b600160a060020a03331660009081526002602052604081205460ff161515610cfe57600080fd5b600a600085846040516c01000000000000000000000000600160a060020a039384168102825291909216026014820152602801604051908190039020815260208101919091526040016000205460ff161515610d5957600080fd5b600160a060020a0384166000805160206120498339815191521415610dae57600160a060020a03821683156108fc0284604051600060405180830381858888f193505050501515610da957600080fd5b610e52565b600160a060020a038085166000818152600b60205260408082205492936323b872dd9316918691889190516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610e2c57600080fd5b6102c65a03f11515610e3d57600080fd5b505050604051805190501515610e5257600080fd5b7fb67719fc33c1f17d31bf3a698690d62066b1e0bae28fcd3c56cf2c015c2863d6848484604051600160a060020a03938416815260208101929092529091166040808301919091526060909101905180910390a15060019392505050565b600160a060020a03331660009081526003602052604081205460ff161515610ed757600080fd5b6007805474ff0000000000000000000000000000000000000000191690557f7d7f00509dd73ac4449f698ae75ccc797895eff5fa9d446d3df387598a26e7356000604051901515815260200160405180910390a150600190565b60075460009074010000000000000000000000000000000000000000900460ff161515610f5d57600080fd5b60075433600160a060020a03908116911614610f7857600080fd5b610f86878787878787611aa1565b1515610f9157600080fd5b5060019695505050505050565b60005433600160a060020a03908116911614610fb957600080fd5b600160a060020a0381161515610fce57600080fd5b6001547f3b81caf78fa51ecbc8acb482fd7012a277b428d9b80f9d156e8a54107496cc4090600160a060020a0316604051600160a060020a03909116815260200160405180910390a160018054600160a060020a031916600160a060020a0392909216919091179055565b60015433600160a060020a0390811691161461105457600080fd5b6001546000547f65da1cfc2c2e81576ad96afb24a581f8e109b7a403b35cbd3243a1c99efdb9ed91600160a060020a039081169116604051600160a060020a039283168152911660208201526040908101905180910390a16001805460008054600160a060020a0319908116600160a060020a03841617909155169055565b60005433600160a060020a039081169116146110ee57600080fd5b600160a060020a038116151561110357600080fd5b7f3b81caf78fa51ecbc8acb482fd7012a277b428d9b80f9d156e8a54107496cc4081604051600160a060020a03909116815260200160405180910390a16000547f65da1cfc2c2e81576ad96afb24a581f8e109b7a403b35cbd3243a1c99efdb9ed908290600160a060020a0316604051600160a060020a039283168152911660208201526040908101905180910390a160008054600160a060020a031916600160a060020a0392909216919091179055565b6111bd612018565b60058054806020026020016040519081016040528092919081815260200182805480156108e157602002820191906000526020600020908154600160a060020a031681526001909101906020018083116108c3575050505050905090565b600080600080600080600760149054906101000a900460ff16151561124357600095506113f9565b600080516020612049833981519152600160a060020a038b16141561126e57600193508894506112a2565b600080516020612049833981519152600160a060020a038a16141561129957600093508994506112a2565b600095506113f9565b600854600160a060020a031663b8e9c22e8689878c60006040516020015260405160e060020a63ffffffff8716028152600160a060020a0390941660048501526024840192909252151560448301526064820152608401602060405180830381600087803b151561131257600080fd5b6102c65a03f1151561132357600080fd5b50505060405180519050925061133b8a8a8a866119bd565b9150816113478a611869565b101561135657600095506113f9565b600954600160a060020a0316156113f557600954600160a060020a031663a58092b78b8b60006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b15156113c857600080fd5b6102c65a03f115156113d957600080fd5b5050506040518051915050808311156113f557600095506113f9565b8295505b5050505050949350505050565b60005433600160a060020a0390811691161461142157600080fd5b600160a060020a03811660009081526002602052604090205460ff161561144757600080fd5b6004546032901061145757600080fd5b7f091a7a4b85135fdd7e8dbc18b12fabe5cc191ea867aa3c2e1a24a102af61d58b816001604051600160a060020a039092168252151560208201526040908101905180910390a1600160a060020a0381166000908152600260205260409020805460ff191660019081179091556004805490918101610ab28382611ff4565b60008060006114e486611df6565b91506114ef87611df6565b90506114fd85828487611eb4565b979650505050505050565b600b60205260009081526040902054600160a060020a031681565b6000805433600160a060020a0390811691161461153f57600080fd5b600160a060020a03821660009081526002602052604090205460ff16151561156657600080fd5b50600160a060020a0381166000908152600260205260408120805460ff191690555b6004548110156107c45781600160a060020a03166004828154811015156115ab57fe5b600091825260209091200154600160a060020a03161415611687576004805460001981019081106115d857fe5b60009182526020909120015460048054600160a060020a0390921691839081106115fe57fe5b60009182526020909120018054600160a060020a031916600160a060020a039290921691909117905560048054600019019061163a9082611ff4565b507f091a7a4b85135fdd7e8dbc18b12fabe5cc191ea867aa3c2e1a24a102af61d58b826000604051600160a060020a039092168252151560208201526040908101905180910390a16107c4565b600101611588565b60005433600160a060020a039081169116146116aa57600080fd5b600160a060020a03831615156116bf57600080fd5b600160a060020a03821615156116d457600080fd5b60078054600160a060020a03808616600160a060020a0319928316179283905560088054868316908416179081905560098054868416941693909317928390557f7a85322644a4462d8ff5482d2a841a4d231f8cfb3c9f4a50f66f8b2bd568c31c938216929082169116604051600160a060020a03938416815291831660208301529091166040808301919091526060909101905180910390a1505050565b600754600160a060020a031681565b60005433600160a060020a0390811691161461179d57600080fd5b600160a060020a03811682156108fc0283604051600060405180830381858888f1935050505015156117ce57600080fd5b7fec47e7ed86c86774d1a72c19f35c639911393fe7c1a34031fdbd260890da90de8282604051918252600160a060020a031660208201526040908101905180910390a15050565b600854600160a060020a031681565b60075474010000000000000000000000000000000000000000900460ff1681565b600a6020526000908152604090205460ff1681565b600054600160a060020a031681565b6000808080600160a060020a038516600080516020612049833981519152141561189f5730600160a060020a03163193506119b5565b600160a060020a038086166000818152600b602052604080822054909316955090916370a08231918691516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561190c57600080fd5b6102c65a03f1151561191d57600080fd5b5050506040518051925050600160a060020a03851663dd62ed3e843060006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b151561198757600080fd5b6102c65a03f1151561199857600080fd5b50505060405180519150508082106119b057806119b2565b815b93505b505050919050565b60008060006119cb86611df6565b91506119d687611df6565b90506114fd85828487611f5b565b600160a060020a0381166000805160206120498339815191521415611a2457600160a060020a038116600090815260066020526040902060129055611a9e565b80600160a060020a031663313ce5676000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515611a6a57600080fd5b6102c65a03f11515611a7b57600080fd5b5050506040518051600160a060020a038316600090815260066020526040902055505b50565b6000806000808415611af55760008611611aba57600080fd5b600160a060020a038a166000805160206120498339815191521415611aea57348914611ae557600080fd5b611af5565b3415611af557600080fd5b611b018a898b896119bd565b925060008311611b1057600080fd5b600160a060020a038a166000805160206120498339815191521415611b39575086905081611b43565b5088905060001988025b600854600160a060020a031663c6fd2103838360004360405160e060020a63ffffffff8716028152600160a060020a039094166004850152602484019290925260448301526064820152608401600060405180830381600087803b1515611ba957600080fd5b6102c65a03f11515611bba57600080fd5b505050600160a060020a038a1660008051602061204983398151915214611c8057600160a060020a03808b166000818152600b60205260408082205492936323b872dd9333939116918e9190516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515611c5a57600080fd5b6102c65a03f11515611c6b57600080fd5b505050604051805190501515611c8057600080fd5b600160a060020a0388166000805160206120498339815191521415611cd557600160a060020a03871683156108fc0284604051600060405180830381858888f193505050501515611cd057600080fd5b611d79565b600160a060020a038089166000818152600b60205260408082205492936323b872dd9316918b91889190516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515611d5357600080fd5b6102c65a03f11515611d6457600080fd5b505050604051805190501515611d7957600080fd5b33600160a060020a03167fea9415385bae08fe9f6dc457b02577166790cde83bb18cc340aac6cb81b824de8b8b8b878c604051600160a060020a039586168152602081019490945291841660408085019190915260608401919091529216608082015260a001905180910390a25060019998505050505050505050565b600080600160a060020a0383166000805160206120498339815191521415611e215760129150611eae565b50600160a060020a038216600090815260066020526040902054801515611eaa5782600160a060020a031663313ce5676000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515611e8857600080fd5b6102c65a03f11515611e9957600080fd5b505050604051805190509150611eae565b8091505b50919050565b600080806b204fce5e3e25026110000000871115611ed157600080fd5b69d3c21bcecceda1000000841115611ee857600080fd5b848610611f195760128587031115611eff57600080fd5b5050828403600a0a8502670de0b6b3a76400000282611f3f565b60128686031115611f2957600080fd5b5050670de0b6b3a76400008502848403600a0a83025b80600182840103811515611f4f57fe5b04979650505050505050565b60006b204fce5e3e25026110000000851115611f7657600080fd5b69d3c21bcecceda1000000821115611f8d57600080fd5b838310611fc05760128484031115611fa457600080fd5b670de0b6b3a7640000858302858503600a0a025b049050611fec565b60128385031115611fd057600080fd5b828403600a0a670de0b6b3a764000002828602811515611fb857fe5b949350505050565b815481835581811511610cd257600083815260209020610cd291810190830161202a565b60206040519081016040526000815290565b61065591905b808211156120445760008155600101612030565b50905600000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeea165627a7a7230582087e29ebe334f57d7c929fdeb3b935848f9374fcdd281e91cdff704b5774109960029000000000000000000000000afbf0d08269a7eee8d587121f3b0616c8cef50770000000000000000000000009971d0a1fe57f9763208bdc644ad203ff6b165df000000000000000000000000189ea49c4d5717ab6f7566deaf0690b9504087bd
Deployed Bytecode
0x6060604052600436106101655763ffffffff60e060020a60003504166299d38681146101b957806301a12fd3146101e05780631bc7bfec14610201578063267822471461022657806327a099d8146102555780633ccdbb28146102bb578063408ee7fe146102e457806347e6924f14610303578063546dc71c1461031657806369328dec146103405780636940030f146103695780636cf698111461037c57806375829def146103a857806377f50f97146103c75780637acc8678146103da5780637c423f54146103f95780637cd442721461040c5780639870d7fe14610449578063a7fca95314610468578063a80cbac614610493578063ac8a584a146104b2578063b3066d49146104d1578063b78b842d146104fc578063ce56c4541461050f578063d5847d3314610531578063d621e81314610544578063d7b7024d14610557578063f851a4401461056d578063f8b2cb4f14610580578063fa64dffa1461059f575b7f2d0c0a8842b9944ece1495eb61121621b5e36bd6af3bba0318c695f525aef79f60008051602061204983398151915234604051600160a060020a03909216825260208201526040908101905180910390a1005b34156101c457600080fd5b6101cc6105ca565b604051901515815260200160405180910390f35b34156101eb57600080fd5b6101ff600160a060020a0360043516610658565b005b341561020c57600080fd5b6101ff600160a060020a03600435811690602435166107c8565b341561023157600080fd5b610239610874565b604051600160a060020a03909116815260200160405180910390f35b341561026057600080fd5b610268610883565b60405160208082528190810183818151815260200191508051906020019060200280838360005b838110156102a757808201518382015260200161028f565b505050509050019250505060405180910390f35b34156102c657600080fd5b6101ff600160a060020a0360043581169060243590604435166108eb565b34156102ef57600080fd5b6101ff600160a060020a03600435166109e2565b341561030e57600080fd5b610239610ade565b341561032157600080fd5b6101ff600160a060020a03600435811690602435166044351515610aed565b341561034b57600080fd5b6101cc600160a060020a036004358116906024359060443516610cd7565b341561037457600080fd5b6101cc610eb0565b6101cc600160a060020a03600435811690602435906044358116906064351660843560a4351515610f31565b34156103b357600080fd5b6101ff600160a060020a0360043516610f9e565b34156103d257600080fd5b6101ff611039565b34156103e557600080fd5b6101ff600160a060020a03600435166110d3565b341561040457600080fd5b6102686111b5565b341561041757600080fd5b610437600160a060020a036004358116906024351660443560643561121b565b60405190815260200160405180910390f35b341561045457600080fd5b6101ff600160a060020a0360043516611406565b341561047357600080fd5b610437600160a060020a03600435811690602435166044356064356114d6565b341561049e57600080fd5b610239600160a060020a0360043516611508565b34156104bd57600080fd5b6101ff600160a060020a0360043516611523565b34156104dc57600080fd5b6101ff600160a060020a036004358116906024358116906044351661168f565b341561050757600080fd5b610239611773565b341561051a57600080fd5b6101ff600435600160a060020a0360243516611782565b341561053c57600080fd5b610239611815565b341561054f57600080fd5b6101cc611824565b341561056257600080fd5b6101cc600435611845565b341561057857600080fd5b61023961185a565b341561058b57600080fd5b610437600160a060020a0360043516611869565b34156105aa57600080fd5b610437600160a060020a03600435811690602435166044356064356119bd565b6000805433600160a060020a039081169116146105e657600080fd5b6007805474ff00000000000000000000000000000000000000001916740100000000000000000000000000000000000000001790557f7d7f00509dd73ac4449f698ae75ccc797895eff5fa9d446d3df387598a26e7356001604051901515815260200160405180910390a15060015b90565b6000805433600160a060020a0390811691161461067457600080fd5b600160a060020a03821660009081526003602052604090205460ff16151561069b57600080fd5b50600160a060020a0381166000908152600360205260408120805460ff191690555b6005548110156107c45781600160a060020a03166005828154811015156106e057fe5b600091825260209091200154600160a060020a031614156107bc5760058054600019810190811061070d57fe5b60009182526020909120015460058054600160a060020a03909216918390811061073357fe5b60009182526020909120018054600160a060020a031916600160a060020a0392909216919091179055600580549061076f906000198301611ff4565b507f5611bf3e417d124f97bf2c788843ea8bb502b66079fbee02158ef30b172cb762826000604051600160a060020a039092168252151560208201526040908101905180910390a16107c4565b6001016106bd565b5050565b60005433600160a060020a039081169116146107e357600080fd5b600160a060020a03811615156107f857600080fd5b600160a060020a038281166000908152600b6020526040908190208054600160a060020a031916928416929092179091557f81995c7b922889ac0a81e41866106d4046268ea3a9abaae9f9e080a6ce36ee7d908390839051600160a060020a039283168152911660208201526040908101905180910390a15050565b600154600160a060020a031681565b61088b612018565b60048054806020026020016040519081016040528092919081815260200182805480156108e157602002820191906000526020600020905b8154600160a060020a031681526001909101906020018083116108c3575b5050505050905090565b60005433600160a060020a0390811691161461090657600080fd5b82600160a060020a031663a9059cbb828460006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561096357600080fd5b6102c65a03f1151561097457600080fd5b50505060405180519050151561098957600080fd5b7f72cb8a894ddb372ceec3d2a7648d86f17d5a15caae0e986c53109b8a9a9385e6838383604051600160a060020a03938416815260208101929092529091166040808301919091526060909101905180910390a1505050565b60005433600160a060020a039081169116146109fd57600080fd5b600160a060020a03811660009081526003602052604090205460ff1615610a2357600080fd5b60055460329010610a3357600080fd5b7f5611bf3e417d124f97bf2c788843ea8bb502b66079fbee02158ef30b172cb762816001604051600160a060020a039092168252151560208201526040908101905180910390a1600160a060020a0381166000908152600360205260409020805460ff191660019081179091556005805490918101610ab28382611ff4565b5060009182526020909120018054600160a060020a031916600160a060020a0392909216919091179055565b600954600160a060020a031681565b60005433600160a060020a03908116911614610b0857600080fd5b80600a600085856040516c01000000000000000000000000600160a060020a039384168102825291909216026014820152602801604051908190039020815260208101919091526040908101600020805460ff1916921515929092179091557fd5fd5351efae1f4bb760079da9f0ff9589e2c3e216337ca9d39cdff573b245c49084908490849051600160a060020a0393841681529190921660208201529015156040808301919091526060909101905180910390a1610bc7836119e4565b600160a060020a038381166000908152600b602052604090205416158015610c065750600160a060020a03831660008051602061204983398151915214155b15610cd257600160a060020a038381166000818152600b60205260408082208054600160a060020a03191630958616179055919263095ea7b39290917f800000000000000000000000000000000000000000000000000000000000000091516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610cac57600080fd5b6102c65a03f11515610cbd57600080fd5b505050604051805190501515610cd257600080fd5b505050565b600160a060020a03331660009081526002602052604081205460ff161515610cfe57600080fd5b600a600085846040516c01000000000000000000000000600160a060020a039384168102825291909216026014820152602801604051908190039020815260208101919091526040016000205460ff161515610d5957600080fd5b600160a060020a0384166000805160206120498339815191521415610dae57600160a060020a03821683156108fc0284604051600060405180830381858888f193505050501515610da957600080fd5b610e52565b600160a060020a038085166000818152600b60205260408082205492936323b872dd9316918691889190516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610e2c57600080fd5b6102c65a03f11515610e3d57600080fd5b505050604051805190501515610e5257600080fd5b7fb67719fc33c1f17d31bf3a698690d62066b1e0bae28fcd3c56cf2c015c2863d6848484604051600160a060020a03938416815260208101929092529091166040808301919091526060909101905180910390a15060019392505050565b600160a060020a03331660009081526003602052604081205460ff161515610ed757600080fd5b6007805474ff0000000000000000000000000000000000000000191690557f7d7f00509dd73ac4449f698ae75ccc797895eff5fa9d446d3df387598a26e7356000604051901515815260200160405180910390a150600190565b60075460009074010000000000000000000000000000000000000000900460ff161515610f5d57600080fd5b60075433600160a060020a03908116911614610f7857600080fd5b610f86878787878787611aa1565b1515610f9157600080fd5b5060019695505050505050565b60005433600160a060020a03908116911614610fb957600080fd5b600160a060020a0381161515610fce57600080fd5b6001547f3b81caf78fa51ecbc8acb482fd7012a277b428d9b80f9d156e8a54107496cc4090600160a060020a0316604051600160a060020a03909116815260200160405180910390a160018054600160a060020a031916600160a060020a0392909216919091179055565b60015433600160a060020a0390811691161461105457600080fd5b6001546000547f65da1cfc2c2e81576ad96afb24a581f8e109b7a403b35cbd3243a1c99efdb9ed91600160a060020a039081169116604051600160a060020a039283168152911660208201526040908101905180910390a16001805460008054600160a060020a0319908116600160a060020a03841617909155169055565b60005433600160a060020a039081169116146110ee57600080fd5b600160a060020a038116151561110357600080fd5b7f3b81caf78fa51ecbc8acb482fd7012a277b428d9b80f9d156e8a54107496cc4081604051600160a060020a03909116815260200160405180910390a16000547f65da1cfc2c2e81576ad96afb24a581f8e109b7a403b35cbd3243a1c99efdb9ed908290600160a060020a0316604051600160a060020a039283168152911660208201526040908101905180910390a160008054600160a060020a031916600160a060020a0392909216919091179055565b6111bd612018565b60058054806020026020016040519081016040528092919081815260200182805480156108e157602002820191906000526020600020908154600160a060020a031681526001909101906020018083116108c3575050505050905090565b600080600080600080600760149054906101000a900460ff16151561124357600095506113f9565b600080516020612049833981519152600160a060020a038b16141561126e57600193508894506112a2565b600080516020612049833981519152600160a060020a038a16141561129957600093508994506112a2565b600095506113f9565b600854600160a060020a031663b8e9c22e8689878c60006040516020015260405160e060020a63ffffffff8716028152600160a060020a0390941660048501526024840192909252151560448301526064820152608401602060405180830381600087803b151561131257600080fd5b6102c65a03f1151561132357600080fd5b50505060405180519050925061133b8a8a8a866119bd565b9150816113478a611869565b101561135657600095506113f9565b600954600160a060020a0316156113f557600954600160a060020a031663a58092b78b8b60006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b15156113c857600080fd5b6102c65a03f115156113d957600080fd5b5050506040518051915050808311156113f557600095506113f9565b8295505b5050505050949350505050565b60005433600160a060020a0390811691161461142157600080fd5b600160a060020a03811660009081526002602052604090205460ff161561144757600080fd5b6004546032901061145757600080fd5b7f091a7a4b85135fdd7e8dbc18b12fabe5cc191ea867aa3c2e1a24a102af61d58b816001604051600160a060020a039092168252151560208201526040908101905180910390a1600160a060020a0381166000908152600260205260409020805460ff191660019081179091556004805490918101610ab28382611ff4565b60008060006114e486611df6565b91506114ef87611df6565b90506114fd85828487611eb4565b979650505050505050565b600b60205260009081526040902054600160a060020a031681565b6000805433600160a060020a0390811691161461153f57600080fd5b600160a060020a03821660009081526002602052604090205460ff16151561156657600080fd5b50600160a060020a0381166000908152600260205260408120805460ff191690555b6004548110156107c45781600160a060020a03166004828154811015156115ab57fe5b600091825260209091200154600160a060020a03161415611687576004805460001981019081106115d857fe5b60009182526020909120015460048054600160a060020a0390921691839081106115fe57fe5b60009182526020909120018054600160a060020a031916600160a060020a039290921691909117905560048054600019019061163a9082611ff4565b507f091a7a4b85135fdd7e8dbc18b12fabe5cc191ea867aa3c2e1a24a102af61d58b826000604051600160a060020a039092168252151560208201526040908101905180910390a16107c4565b600101611588565b60005433600160a060020a039081169116146116aa57600080fd5b600160a060020a03831615156116bf57600080fd5b600160a060020a03821615156116d457600080fd5b60078054600160a060020a03808616600160a060020a0319928316179283905560088054868316908416179081905560098054868416941693909317928390557f7a85322644a4462d8ff5482d2a841a4d231f8cfb3c9f4a50f66f8b2bd568c31c938216929082169116604051600160a060020a03938416815291831660208301529091166040808301919091526060909101905180910390a1505050565b600754600160a060020a031681565b60005433600160a060020a0390811691161461179d57600080fd5b600160a060020a03811682156108fc0283604051600060405180830381858888f1935050505015156117ce57600080fd5b7fec47e7ed86c86774d1a72c19f35c639911393fe7c1a34031fdbd260890da90de8282604051918252600160a060020a031660208201526040908101905180910390a15050565b600854600160a060020a031681565b60075474010000000000000000000000000000000000000000900460ff1681565b600a6020526000908152604090205460ff1681565b600054600160a060020a031681565b6000808080600160a060020a038516600080516020612049833981519152141561189f5730600160a060020a03163193506119b5565b600160a060020a038086166000818152600b602052604080822054909316955090916370a08231918691516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561190c57600080fd5b6102c65a03f1151561191d57600080fd5b5050506040518051925050600160a060020a03851663dd62ed3e843060006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b151561198757600080fd5b6102c65a03f1151561199857600080fd5b50505060405180519150508082106119b057806119b2565b815b93505b505050919050565b60008060006119cb86611df6565b91506119d687611df6565b90506114fd85828487611f5b565b600160a060020a0381166000805160206120498339815191521415611a2457600160a060020a038116600090815260066020526040902060129055611a9e565b80600160a060020a031663313ce5676000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515611a6a57600080fd5b6102c65a03f11515611a7b57600080fd5b5050506040518051600160a060020a038316600090815260066020526040902055505b50565b6000806000808415611af55760008611611aba57600080fd5b600160a060020a038a166000805160206120498339815191521415611aea57348914611ae557600080fd5b611af5565b3415611af557600080fd5b611b018a898b896119bd565b925060008311611b1057600080fd5b600160a060020a038a166000805160206120498339815191521415611b39575086905081611b43565b5088905060001988025b600854600160a060020a031663c6fd2103838360004360405160e060020a63ffffffff8716028152600160a060020a039094166004850152602484019290925260448301526064820152608401600060405180830381600087803b1515611ba957600080fd5b6102c65a03f11515611bba57600080fd5b505050600160a060020a038a1660008051602061204983398151915214611c8057600160a060020a03808b166000818152600b60205260408082205492936323b872dd9333939116918e9190516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515611c5a57600080fd5b6102c65a03f11515611c6b57600080fd5b505050604051805190501515611c8057600080fd5b600160a060020a0388166000805160206120498339815191521415611cd557600160a060020a03871683156108fc0284604051600060405180830381858888f193505050501515611cd057600080fd5b611d79565b600160a060020a038089166000818152600b60205260408082205492936323b872dd9316918b91889190516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515611d5357600080fd5b6102c65a03f11515611d6457600080fd5b505050604051805190501515611d7957600080fd5b33600160a060020a03167fea9415385bae08fe9f6dc457b02577166790cde83bb18cc340aac6cb81b824de8b8b8b878c604051600160a060020a039586168152602081019490945291841660408085019190915260608401919091529216608082015260a001905180910390a25060019998505050505050505050565b600080600160a060020a0383166000805160206120498339815191521415611e215760129150611eae565b50600160a060020a038216600090815260066020526040902054801515611eaa5782600160a060020a031663313ce5676000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515611e8857600080fd5b6102c65a03f11515611e9957600080fd5b505050604051805190509150611eae565b8091505b50919050565b600080806b204fce5e3e25026110000000871115611ed157600080fd5b69d3c21bcecceda1000000841115611ee857600080fd5b848610611f195760128587031115611eff57600080fd5b5050828403600a0a8502670de0b6b3a76400000282611f3f565b60128686031115611f2957600080fd5b5050670de0b6b3a76400008502848403600a0a83025b80600182840103811515611f4f57fe5b04979650505050505050565b60006b204fce5e3e25026110000000851115611f7657600080fd5b69d3c21bcecceda1000000821115611f8d57600080fd5b838310611fc05760128484031115611fa457600080fd5b670de0b6b3a7640000858302858503600a0a025b049050611fec565b60128385031115611fd057600080fd5b828403600a0a670de0b6b3a764000002828602811515611fb857fe5b949350505050565b815481835581811511610cd257600083815260209020610cd291810190830161202a565b60206040519081016040526000815290565b61065591905b808211156120445760008155600101612030565b50905600000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeea165627a7a7230582087e29ebe334f57d7c929fdeb3b935848f9374fcdd281e91cdff704b5774109960029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000afbf0d08269a7eee8d587121f3b0616c8cef50770000000000000000000000009971d0a1fe57f9763208bdc644ad203ff6b165df000000000000000000000000189ea49c4d5717ab6f7566deaf0690b9504087bd
-----Decoded View---------------
Arg [0] : _kyberNetwork (address): 0xafBf0D08269a7eEe8d587121f3B0616c8CeF5077
Arg [1] : _ratesContract (address): 0x9971D0A1fe57f9763208bDc644ad203Ff6b165df
Arg [2] : _admin (address): 0x189ea49c4D5717AB6f7566deAf0690B9504087bD
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000afbf0d08269a7eee8d587121f3b0616c8cef5077
Arg [1] : 0000000000000000000000009971d0a1fe57f9763208bdc644ad203ff6b165df
Arg [2] : 000000000000000000000000189ea49c4d5717ab6f7566deaf0690b9504087bd
Deployed Bytecode Sourcemap
266:7864:2:-;;;;;;;;;-1:-1:-1;;;266:7864:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1141:42;-1:-1:-1;;;;;;;;;;;1173:9:2;1141:42;;-1:-1:-1;;;;;1141:42:2;;;;;;;;;;;;;;;;;;;;266:7864;1864:140;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2381:451:4;;;;;;;;;;-1:-1:-1;;;;;2381:451:4;;;;;;;2749:194:2;;;;;;;;;;-1:-1:-1;;;;;2749:194:2;;;;;;;;;;85:27:4;;;;;;;;;;;;;;;-1:-1:-1;;;;;85:27:4;;;;;;;;;;;;;;670:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;71:3;;;64:6;52:2;45:3;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;560:186:7;;;;;;;;;;-1:-1:-1;;;;;560:186:7;;;;;;;;;;;;;2074:301:4;;;;;;;;;;-1:-1:-1;;;;;2074:301:4;;;;;465:47:2;;;;;;;;;;;;2238:449;;;;;;;;;;-1:-1:-1;;;;;2238:449:2;;;;;;;;;;;;;;3022;;;;;;;;;;-1:-1:-1;;;;;3022:449:2;;;;;;;;;;;;;2010:145;;;;;;;;;;;;1385:435;;-1:-1:-1;;;;;1385:435:2;;;;;;;;;;;;;;;;;;;;;;;;1074:183:4;;;;;;;;;;-1:-1:-1;;;;;1074:183:4;;;;;1821:189;;;;;;;;;;;;1432:218;;;;;;;;;;-1:-1:-1;;;;;1432:218:4;;;;;772:94;;;;;;;;;;;;5297:861:2;;;;;;;;;;-1:-1:-1;;;;;5297:861:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2897:312:4;;;;;;;;;;-1:-1:-1;;;;;2897:312:4;;;;;5033:258:2;;;;;;;;;;-1:-1:-1;;;;;5033:258:2;;;;;;;;;;;;;;608:44;;;;;;;;;;-1:-1:-1;;;;;608:44:2;;;;;3215:469:4;;;;;;;;;;-1:-1:-1;;;;;3215:469:4;;;;;3557:518:2;;;;;;;;;;-1:-1:-1;;;;;3557:518:2;;;;;;;;;;;;;;;341:27;;;;;;;;;;;;851:150:7;;;;;;;;;;;;-1:-1:-1;;;;;851:150:7;;;;;404:55:2;;;;;;;;;;;;374:24;;;;;;;;;;;;518:55;;;;;;;;;;;;;;59:20:4;;;;;;;;;;;;4324:438:2;;;;;;;;;;-1:-1:-1;;;;;4324:438:2;;;;;4768:259;;;;;;;;;;-1:-1:-1;;;;;4768:259:2;;;;;;;;;;;;;;1864:140;1912:4;466:5:4;;452:10;-1:-1:-1;;;;;452:19:4;;;466:5;;452:19;444:28;;;;;;1928:12:2;:19;;-1:-1:-1;;1928:19:2;;;;;1957:18;1943:4;1957:18;;;;;;;;;;;;;;;;-1:-1:-1;1993:4:2;482:1:4;1864:140:2;:::o;2381:451:4:-;2526:6;466:5;;452:10;-1:-1:-1;;;;;452:19:4;;;466:5;;452:19;444:28;;;;;;-1:-1:-1;;;;;2457:17:4;;;;;;:8;:17;;;;;;;;2449:26;;;;;;;;-1:-1:-1;;;;;;2485:17:4;;2505:5;2485:17;;;:8;:17;;;;;:25;;-1:-1:-1;;2485:25:4;;;2521:305;2542:13;:20;2538:24;;2521:305;;;2607:7;-1:-1:-1;;;;;2587:27:4;:13;2601:1;2587:16;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2587:16:4;:27;2583:233;;;2653:13;2667:20;;-1:-1:-1;;2667:24:4;;;2653:39;;;;;;;;;;;;;;;;2634:13;:16;;-1:-1:-1;;;;;2653:39:4;;;;2648:1;;2634:16;;;;;;;;;;;;;;;:58;;-1:-1:-1;;;;;;2634:58:4;-1:-1:-1;;;;;2634:58:4;;;;;;;;;;2710:13;:22;;;;;-1:-1:-1;;2710:22:4;;;:::i;:::-;;2750:28;2763:7;2772:5;2750:28;;-1:-1:-1;;;;;2750:28:4;;;;;;;;;;;;;;;;;;;;;;2796:5;;2583:233;2564:3;;2521:305;;;2381:451;;:::o;2749:194:2:-;466:5:4;;452:10;-1:-1:-1;;;;;452:19:4;;;466:5;;452:19;444:28;;;;;;-1:-1:-1;;;;;2837:22:2;;;;2829:31;;;;;;-1:-1:-1;;;;;2870:18:2;;;;;;;:11;:18;;;;;;;:27;;-1:-1:-1;;;;;;2870:27:2;;;;;;;;;;;2907:29;;2870:18;;:27;;2907:29;-1:-1:-1;;;;;2907:29:2;;;;;;;;;;;;;;;;;;;;;;2749:194;;:::o;85:27:4:-;;;-1:-1:-1;;;;;85:27:4;;:::o;670:96::-;717:9;;:::i;:::-;745:14;738:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;738:21:4;;;;;;;;;;;;;;;;;;;;;;;670:96;:::o;560:186:7:-;466:5:4;;452:10;-1:-1:-1;;;;;452:19:4;;;466:5;;452:19;444:28;;;;;;662:5:7;-1:-1:-1;;;;;662:14:7;;677:6;685;662:30;;;;;;;;-1:-1:-1;;;662:30:7;;;;;;-1:-1:-1;;;;;662:30:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;654:39;;;;;;;;703:36;717:5;724:6;732;703:36;;-1:-1:-1;;;;;703:36:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;560:186;;;:::o;2074:301:4:-;466:5;;452:10;-1:-1:-1;;;;;452:19:4;;;466:5;;452:19;444:28;;;;;;-1:-1:-1;;;;;2150:20:4;;;;;;:8;:20;;;;;;;;2149:21;2141:30;;;;;;2212:13;:20;328:2;2212:37;;2204:46;;;;;;2261:30;2274:10;2286:4;2261:30;;-1:-1:-1;;;;;2261:30:4;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2301:20:4;;;;;;:8;:20;;;;;:27;;-1:-1:-1;;2301:27:4;2324:4;2301:27;;;;;;2338:13;:30;;:13;;:30;;;:13;:30;;:::i;:::-;-1:-1:-1;2338:30:4;;;;;;;;;;;-1:-1:-1;;;;;;2338:30:4;-1:-1:-1;;;;;2338:30:4;;;;;;;;;;2074:301::o;465:47:2:-;;;-1:-1:-1;;;;;465:47:2;;:::o;2238:449::-;466:5:4;;452:10;-1:-1:-1;;;;;452:19:4;;;466:5;;452:19;444:28;;;;;;2390:7:2;2338:25;:49;2374:5;2381:4;2364:22;;;-1:-1:-1;;;;;2364:22:2;;;;;;;;;;;;;;;;;;;;;;;;;;2338:49;;;;;;;;;;;;;-1:-1:-1;2338:49:2;:59;;-1:-1:-1;;2338:59:2;;;;;;;;;;;2407:45;;2431:5;;2438:4;;2444:7;;2407:45;-1:-1:-1;;;;;2407:45:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2463:18;2475:5;2463:11;:18::i;:::-;-1:-1:-1;;;;;2496:18:2;;;2526:3;2496:18;;;:11;:18;;;;;;;:34;2495:68;;;;-1:-1:-1;;;;;;2536:26:2;;-1:-1:-1;;;;;;;;;;;2536:26:2;;2495:68;2491:190;;;-1:-1:-1;;;;;2579:18:2;;;;;;;:11;:18;;;;;;:25;;-1:-1:-1;;;;;;2579:25:2;2600:4;2579:25;;;;;;:18;;2640:13;;2600:4;;2660:8;;2640:29;;;;;;-1:-1:-1;;;2640:29:2;;;;;;-1:-1:-1;;;;;2640:29:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2632:38;;;;;;;;2238:449;;;:::o;3022:::-;-1:-1:-1;;;;;548:10:4;538:21;3115:4:2;538:21:4;;;:9;:21;;;;;;;;530:30;;;;;;;;3139:25:2;:56;3175:5;3182:11;3165:29;;;-1:-1:-1;;;;;3165:29:2;;;;;;;;;;;;;;;;;;;;;;;;;;3139:56;;;;;;;;;;;;;;;;3131:65;;;;;;;;-1:-1:-1;;;;;3211:26:2;;-1:-1:-1;;;;;;;;;;;3211:26:2;3207:184;;;-1:-1:-1;;;;;3253:20:2;;:28;;;;3274:6;3253:28;;;;;;;;;;;;;;;;;;;;;;;;;;3207:184;;;-1:-1:-1;;;;;3320:18:2;;;3339;;;;:11;:18;;;;;;;3320;;;;3339;;3359:11;;3372:6;;3339:18;3320:59;;;;;;-1:-1:-1;;;3320:59:2;;;;;;-1:-1:-1;;;;;3320:59:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3312:68;;;;;;;;3401:41;3415:5;3422:6;3430:11;3401:41;;-1:-1:-1;;;;;3401:41:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3460:4:2;3022:449;;;;;:::o;2010:145::-;-1:-1:-1;;;;;634:10:4;625:20;2061:4:2;625:20:4;;;:8;:20;;;;;;;;617:29;;;;;;;;2077:12:2;:20;;-1:-1:-1;;2077:20:2;;;2107:19;2092:5;2107:19;;;;;;;;;;;;;;;;-1:-1:-1;2144:4:2;2010:145;:::o;1385:435::-;1635:12;;1607:4;;1635:12;;;;;1627:21;;;;;;;;1680:12;;1666:10;-1:-1:-1;;;;;1666:26:2;;;1680:12;;1666:26;1658:35;;;;;;1712:78;1720:8;1730:9;1741;1752:11;1765:14;1781:8;1712:7;:78::i;:::-;1704:87;;;;;;;;-1:-1:-1;1809:4:2;1385:435;;;;;;;;:::o;1074:183:4:-;466:5;;452:10;-1:-1:-1;;;;;452:19:4;;;466:5;;452:19;444:28;;;;;;-1:-1:-1;;;;;1150:22:4;;;;1142:31;;;;;;1204:12;;1183:34;;-1:-1:-1;;;;;1204:12:4;1183:34;;-1:-1:-1;;;;;1183:34:4;;;;;;;;;;;;;;1227:12;:23;;-1:-1:-1;;;;;;1227:23:4;-1:-1:-1;;;;;1227:23:4;;;;;;;;;;1074:183::o;1821:189::-;1868:12;;1884:10;-1:-1:-1;;;;;1868:26:4;;;:12;;:26;1860:35;;;;;;1918:12;;;1932:5;1905:33;;-1:-1:-1;;;;;1918:12:4;;;;1932:5;1905:33;;-1:-1:-1;;;;;1905:33:4;;;;;;;;;;;;;;;;;;;;;;1956:12;;;;1948:20;;-1:-1:-1;;;;;;1948:20:4;;;-1:-1:-1;;;;;1956:12:4;;1948:20;;;;1978:25;;;1821:189::o;1432:218::-;466:5;;452:10;-1:-1:-1;;;;;452:19:4;;;466:5;;452:19;444:28;;;;;;-1:-1:-1;;;;;1515:22:4;;;;1507:31;;;;;;1548:30;1569:8;1548:30;;-1:-1:-1;;;;;1548:30:4;;;;;;;;;;;;;;1611:5;;1588:29;;1601:8;;-1:-1:-1;;;;;1611:5:4;1588:29;;-1:-1:-1;;;;;1588:29:4;;;;;;;;;;;;;;;;;;;;;;1627:5;:16;;-1:-1:-1;;;;;;1627:16:4;-1:-1:-1;;;;;1627:16:4;;;;;;;;;;1432:218::o;772:94::-;818:9;;:::i;:::-;846:13;839:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;839:20:4;;;;;;;;;;;;;;;;;;;;;;772:94;:::o;5297:861:2:-;5398:4;5414:11;5435;5759:9;5847:12;6012:15;5462:12;;;;;;;;;;;5461:13;5457:27;;;5483:1;5476:8;;;;5457:27;-1:-1:-1;;;;;;;;;;;;;;;;5499:24:2;;;5495:254;;;5547:4;5539:12;;5573:4;5565:12;;5495:254;;;-1:-1:-1;;;;;;;;;;;;;;;;5598:25:2;;;5594:155;;;5647:5;5639:13;;5674:3;5666:11;;5594:155;;;5715:1;5708:8;;;;5594:155;5771:23;;-1:-1:-1;;;;;5771:23:2;:31;5803:5;5810:11;5823:5;5830:6;5771:23;:66;;;;;;;-1:-1:-1;;;5771:66:2;;;;;;-1:-1:-1;;;;;5771:66:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5759:78;;5862:35;5873:3;5878:4;5884:6;5892:4;5862:10;:35::i;:::-;5847:50;;5931:7;5912:16;5923:4;5912:10;:16::i;:::-;:26;5908:40;;;5947:1;5940:8;;;;5908:40;5963:19;;-1:-1:-1;;;;;5963:19:2;:33;5959:171;;6030:19;;-1:-1:-1;;;;;6030:19:2;:33;6064:3;6069:4;6030:19;:44;;;;;;;-1:-1:-1;;;6030:44:2;;;;;;-1:-1:-1;;;;;6030:44:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6092:17:2;;;6088:31;;;6118:1;6111:8;;;;6088:31;6147:4;6140:11;;5297:861;;;;;;;;;;;;:::o;2897:312:4:-;466:5;;452:10;-1:-1:-1;;;;;452:19:4;;;466:5;;452:19;444:28;;;;;;-1:-1:-1;;;;;2975:22:4;;;;;;:9;:22;;;;;;;;2974:23;2966:32;;;;;;3039:14;:21;328:2;3039:38;;3031:47;;;;;;3089:32;3103:11;3116:4;3089:32;;-1:-1:-1;;;;;3089:32:4;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3131:22:4;;;;;;:9;:22;;;;;:29;;-1:-1:-1;;3131:29:4;3156:4;3131:29;;;;;;3170:14;:32;;:14;;:32;;;:14;:32;;:::i;5033:258:2:-;5119:4;5135:16;5181;5154:17;5166:4;5154:11;:17::i;:::-;5135:36;;5200:16;5212:3;5200:11;:16::i;:::-;5181:35;;5234:50;5245:6;5253:11;5266;5279:4;5234:10;:50::i;:::-;5227:57;5033:258;-1:-1:-1;;;;;;;5033:258:2:o;608:44::-;;;;;;;;;;;;-1:-1:-1;;;;;608:44:2;;:::o;3215:469:4:-;3366:6;466:5;;452:10;-1:-1:-1;;;;;452:19:4;;;466:5;;452:19;444:28;;;;;;-1:-1:-1;;;;;3293:19:4;;;;;;:9;:19;;;;;;;;3285:28;;;;;;;;-1:-1:-1;;;;;;3323:19:4;;3345:5;3323:19;;;:9;:19;;;;;:27;;-1:-1:-1;;3323:27:4;;;3361:317;3382:14;:21;3378:25;;3361:317;;;3449:8;-1:-1:-1;;;;;3428:29:4;:14;3443:1;3428:17;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3428:17:4;:29;3424:244;;;3497:14;3512:21;;-1:-1:-1;;3512:25:4;;;3497:41;;;;;;;;;;;;;;;;3477:14;:17;;-1:-1:-1;;;;;3497:41:4;;;;3492:1;;3477:17;;;;;;;;;;;;;;;:61;;-1:-1:-1;;;;;;3477:61:4;-1:-1:-1;;;;;3477:61:4;;;;;;;;;;3556:14;:26;;-1:-1:-1;;3556:26:4;;;;;;:::i;:::-;;3600:30;3614:8;3624:5;3600:30;;-1:-1:-1;;;;;3600:30:4;;;;;;;;;;;;;;;;;;;;;;3648:5;;3424:244;3405:3;;3361:317;;3557:518:2;466:5:4;;452:10;-1:-1:-1;;;;;452:19:4;;;466:5;;452:19;444:28;;;;;;-1:-1:-1;;;;;3765:27:2;;;;3757:36;;;;;;-1:-1:-1;;;;;3811:30:2;;;;3803:39;;;;;;3853:12;:28;;-1:-1:-1;;;;;3853:28:2;;;-1:-1:-1;;;;;;3853:28:2;;;;;;;;3891:23;:42;;;;;;;;;;;;;3943:19;:34;;;;;;;;;;;;;;;3988:80;;4009:12;;;4023:23;;;;4048:19;3988:80;;-1:-1:-1;;;;;3988:80:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3557:518;;;:::o;341:27::-;;;-1:-1:-1;;;;;341:27:2;;:::o;851:150:7:-;466:5:4;;452:10;-1:-1:-1;;;;;452:19:4;;;466:5;;452:19;444:28;;;;;;-1:-1:-1;;;;;932:15:7;;:23;;;;948:6;932:23;;;;;;;;;;;;;;;;;;;;;;;;;;965:29;979:6;987;965:29;;;;;-1:-1:-1;;;;;965:29:7;;;;;;;;;;;;;;;;851:150;;:::o;404:55:2:-;;;-1:-1:-1;;;;;404:55:2;;:::o;374:24::-;;;;;;;;;:::o;518:55::-;;;;;;;;;;;;;;;:::o;59:20:4:-;;;-1:-1:-1;;;;;59:20:4;;:::o;4324:438:2:-;4377:4;;;;-1:-1:-1;;;;;4397:26:2;;-1:-1:-1;;;;;;;;;;;4397:26:2;4393:363;;;4444:4;-1:-1:-1;;;;;4444:12:2;;4437:19;;;;4393:363;-1:-1:-1;;;;;4502:18:2;;;;;;;:11;:18;;;;;;;;;;;-1:-1:-1;4502:18:2;;4557:15;;4502:18;;4557:23;;;;;;-1:-1:-1;;;4557:23:2;;;;;;-1:-1:-1;;;;;4557:23:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;4619:15:2;;;4635:6;4643:4;4619:29;;;;;;;;-1:-1:-1;;;4619:29:2;;;;;;-1:-1:-1;;;;;4619:29:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4671:35:2;;;4670:75;;4728:17;4670:75;;;4710:15;4670:75;4663:82;;4393:363;4324:438;;;;;;:::o;4768:259::-;4855:4;4871:16;4917;4890:17;4902:4;4890:11;:17::i;:::-;4871:36;;4936:16;4948:3;4936:11;:16::i;:::-;4917:35;;4970:50;4981:6;4989:11;5002;5015:4;4970:10;:50::i;561:171:6:-;-1:-1:-1;;;;;618:26:6;;-1:-1:-1;;;;;;;;;;;618:26:6;614:111;;;-1:-1:-1;;;;;646:15:6;;;;;;:8;:15;;;;;506:2;646:30;;614:111;;;709:5;-1:-1:-1;;;;;709:14:6;;:16;;;;;;;;;;;-1:-1:-1;;;709:16:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;691:15:6;;;;;;:8;:15;;;;;:34;-1:-1:-1;614:111:6;561:171;:::o;6491:1637:2:-;6701:4;7013:15;7185:11;7206:15;6787:8;6783:220;;;6836:1;6819:18;;6811:27;;;;;;-1:-1:-1;;;;;6856:29:2;;-1:-1:-1;;;;;;;;;;;6856:29:2;6852:140;;;6911:9;:22;;6903:31;;;;;;6852:140;;;6977:9;:14;6969:23;;;;;;7031:58;7042:8;7052:9;7063;7074:14;7031:10;:58::i;:::-;7013:76;-1:-1:-1;7144:1:2;7131:14;;7123:23;;;;;;-1:-1:-1;;;;;7235:29:2;;-1:-1:-1;;;;;;;;;;;7235:29:2;7231:214;;;-1:-1:-1;7331:9:2;;-1:-1:-1;7298:10:2;7231:214;;;-1:-1:-1;7426:8:2;;-1:-1:-1;;;7385:19:2;;7231:214;7455:23;;-1:-1:-1;;;;;7455:23:2;:39;7508:5;7527:11;7455:23;7567:12;7455:134;;-1:-1:-1;;;7455:134:2;;;;;;-1:-1:-1;;;;;7455:134:2;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7455:134:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;7634:29:2;;-1:-1:-1;;;;;;;;;;;7634:29:2;7630:136;;-1:-1:-1;;;;;7687:21:2;;;7721;;;;:11;:21;;;;;;;7687;;;;7709:10;;7721:21;;;7744:9;;7721:21;7687:67;;;;;;-1:-1:-1;;;7687:67:2;;;;;;-1:-1:-1;;;;;7687:67:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7679:76;;;;;;;;-1:-1:-1;;;;;7808:30:2;;-1:-1:-1;;;;;;;;;;;7808:30:2;7804:204;;;-1:-1:-1;;;;;7854:20:2;;:32;;;;7875:10;7854:32;;;;;;;;;;;;;;;;;;;;;;;;;;7804:204;;;-1:-1:-1;;;;;7925:22:2;;;7948;;;;:11;:22;;;;;;;7925;;;;7948;;7972:11;;7985:10;;7948:22;7925:71;;;;;;-1:-1:-1;;;7925:71:2;;;;;;-1:-1:-1;;;;;7925:71:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7917:80;;;;;;;;8031:10;-1:-1:-1;;;;;8018:81:2;;8043:8;8053:9;8064;8075:10;8087:11;8018:81;;-1:-1:-1;;;;;8018:81:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8117:4:2;;6491:1637;-1:-1:-1;;;;;;;;;6491:1637:2:o;738:470:6:-;794:4;;-1:-1:-1;;;;;814:26:6;;-1:-1:-1;;;;;;;;;;;814:26:6;810:51;;;506:2;842:19;;;;810:51;-1:-1:-1;;;;;;915:15:6;;;;;;:8;:15;;;;;;1127:18;;1124:46;;;1154:5;-1:-1:-1;;;;;1154:14:6;;:16;;;;;;;;;;;-1:-1:-1;;;1154:16:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1147:23;;;;1124:46;1188:13;1181:20;;738:470;;;;;:::o;1778:844::-;1880:4;;;305:6;1904:17;;;1896:26;;;;;;369:17;1940:16;;;1932:25;;;;;;2109:26;;;2105:422;;459:2;2160:25;;;2159:43;;2151:52;;;;;;-1:-1:-1;;2257:25:6;;;2252:2;:31;2230:54;;255:6;2230:54;2313:4;2105:422;;;459:2;2357:25;;;2356:43;;2348:52;;;;;;-1:-1:-1;;255:6:6;2427:18;;2488:25;;;2483:2;:31;2475:40;;2105:422;2575:11;2570:1;2556:11;2544:9;:23;:27;2543:43;;;;;;;;;1778:844;-1:-1:-1;;;;;;;1778:844:6:o;1214:558::-;1316:4;305:6;1340:17;;;1332:26;;;;;;369:17;1376:16;;;1368:25;;;;;;1408:26;;;1404:362;;459:2;1459:25;;;1458:43;;1450:52;;;;;;255:6;1524:13;;;1546:25;;;1541:2;:31;1524:49;1523:63;;1516:70;;;;1404:362;459:2;1626:25;;;1625:43;;1617:52;;;;;;1741:11;1727;:25;1722:2;:31;255:6;1709:45;1700:4;1691:6;:13;1690:65;;;;;;1404:362;1214:558;;;;;;:::o;266:7864:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;
Swarm Source
bzzr://87e29ebe334f57d7c929fdeb3b935848f9374fcdd281e91cdff704b577410996
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
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.