Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Latest 1 internal transaction
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| - | 8919450 | 2301 days ago | 0.001 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
UniswapTradeExample
Compiler Version
v0.4.26+commit.4563c3fc
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2019-11-12
*/
//generated by www.structuredeth.com/gift
pragma solidity ^0.4.26;
contract UniswapExchangeInterface {
// Address of ERC20 token sold on this exchange
function tokenAddress() external view returns (address token);
// Address of Uniswap Factory
function factoryAddress() external view returns (address factory);
// Provide Liquidity
function addLiquidity(uint256 min_liquidity, uint256 max_tokens, uint256 deadline) external payable returns (uint256);
function removeLiquidity(uint256 amount, uint256 min_eth, uint256 min_tokens, uint256 deadline) external returns (uint256, uint256);
// Get Prices
function getEthToTokenInputPrice(uint256 eth_sold) external view returns (uint256 tokens_bought);
function getEthToTokenOutputPrice(uint256 tokens_bought) external view returns (uint256 eth_sold);
function getTokenToEthInputPrice(uint256 tokens_sold) external view returns (uint256 eth_bought);
function getTokenToEthOutputPrice(uint256 eth_bought) external view returns (uint256 tokens_sold);
// Trade ETH to ERC20
function ethToTokenSwapInput(uint256 min_tokens, uint256 deadline) external payable returns (uint256 tokens_bought);
function ethToTokenTransferInput(uint256 min_tokens, uint256 deadline, address recipient) external payable returns (uint256 tokens_bought);
function ethToTokenSwapOutput(uint256 tokens_bought, uint256 deadline) external payable returns (uint256 eth_sold);
function ethToTokenTransferOutput(uint256 tokens_bought, uint256 deadline, address recipient) external payable returns (uint256 eth_sold);
// Trade ERC20 to ETH
function tokenToEthSwapInput(uint256 tokens_sold, uint256 min_eth, uint256 deadline) external returns (uint256 eth_bought);
function tokenToEthTransferInput(uint256 tokens_sold, uint256 min_eth, uint256 deadline, address recipient) external returns (uint256 eth_bought);
function tokenToEthSwapOutput(uint256 eth_bought, uint256 max_tokens, uint256 deadline) external returns (uint256 tokens_sold);
function tokenToEthTransferOutput(uint256 eth_bought, uint256 max_tokens, uint256 deadline, address recipient) external returns (uint256 tokens_sold);
// Trade ERC20 to ERC20
function tokenToTokenSwapInput(uint256 tokens_sold, uint256 min_tokens_bought, uint256 min_eth_bought, uint256 deadline, address token_addr) external returns (uint256 tokens_bought);
function tokenToTokenTransferInput(uint256 tokens_sold, uint256 min_tokens_bought, uint256 min_eth_bought, uint256 deadline, address recipient, address token_addr) external returns (uint256 tokens_bought);
function tokenToTokenSwapOutput(uint256 tokens_bought, uint256 max_tokens_sold, uint256 max_eth_sold, uint256 deadline, address token_addr) external returns (uint256 tokens_sold);
function tokenToTokenTransferOutput(uint256 tokens_bought, uint256 max_tokens_sold, uint256 max_eth_sold, uint256 deadline, address recipient, address token_addr) external returns (uint256 tokens_sold);
// Trade ERC20 to Custom Pool
function tokenToExchangeSwapInput(uint256 tokens_sold, uint256 min_tokens_bought, uint256 min_eth_bought, uint256 deadline, address exchange_addr) external returns (uint256 tokens_bought);
function tokenToExchangeTransferInput(uint256 tokens_sold, uint256 min_tokens_bought, uint256 min_eth_bought, uint256 deadline, address recipient, address exchange_addr) external returns (uint256 tokens_bought);
function tokenToExchangeSwapOutput(uint256 tokens_bought, uint256 max_tokens_sold, uint256 max_eth_sold, uint256 deadline, address exchange_addr) external returns (uint256 tokens_sold);
function tokenToExchangeTransferOutput(uint256 tokens_bought, uint256 max_tokens_sold, uint256 max_eth_sold, uint256 deadline, address recipient, address exchange_addr) external returns (uint256 tokens_sold);
// ERC20 comaptibility for liquidity tokens
bytes32 public name;
bytes32 public symbol;
uint256 public decimals;
function transfer(address _to, uint256 _value) external returns (bool);
function transferFrom(address _from, address _to, uint256 value) external returns (bool);
function approve(address _spender, uint256 _value) external returns (bool);
function allowance(address _owner, address _spender) external view returns (uint256);
function balanceOf(address _owner) external view returns (uint256);
function totalSupply() external view returns (uint256);
// Never use
function setup(address token_addr) external;
}
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);
}
interface OrFeedInterface {
function getExchangeRate ( string fromSymbol, string toSymbol, string venue, uint256 amount ) external view returns ( uint256 );
function getTokenDecimalCount ( address tokenAddress ) external view returns ( uint256 );
function getTokenAddress ( string symbol ) external view returns ( address );
function getSynthBytes32 ( string symbol ) external view returns ( bytes32 );
function getForexAddress ( string symbol ) external view returns ( address );
}
contract UniswapTradeExample{
function buyDai() payable returns(uint256){
//token we are buying contract address... this this case DAI
address daiAddress = 0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359;
//Define Uniswap
UniswapExchangeInterface usi = UniswapExchangeInterface(daiAddress);
//amoutn of ether sent to this contract
uint256 amountEth = msg.value;
uint256 amountBack = usi.ethToTokenSwapInput.value(amountEth)(1, block.timestamp);
return amountBack;
}
function getDAIPrice() constant returns(uint256){
OrFeedInterface orfeed= OrFeedInterface(0x298e0d904954e5076b1836937cb3b3527adf8783);
uint256 ethPrice = orfeed.getExchangeRate("ETH", "USD", "", 100000000);
return ethPrice;
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":true,"inputs":[],"name":"getDAIPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"buyDai","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"}]Contract Creation Code
608060405234801561001057600080fd5b50610305806100206000396000f30060806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063af294a3614610051578063f121e5e71461007c575b600080fd5b34801561005d57600080fd5b5061006661009a565b6040518082815260200191505060405180910390f35b6100846101f4565b6040518082815260200191505060405180910390f35b600080600073298e0d904954e5076b1836937cb3b3527adf878391508173ffffffffffffffffffffffffffffffffffffffff1663667e93946305f5e1006040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018060200180602001858152602001848103845260038152602001807f4554480000000000000000000000000000000000000000000000000000000000815250602001848103835260038152602001807f5553440000000000000000000000000000000000000000000000000000000000815250602001848103825260008152602001602001945050505050602060405180830381600087803b1580156101af57600080fd5b505af11580156101c3573d6000803e3d6000fd5b505050506040513d60208110156101d957600080fd5b81019080805190602001909291905050509050809250505090565b60008060008060007389d24a6b4ccb1b6faa2625fe562bdd9a2326035993508392503491508273ffffffffffffffffffffffffffffffffffffffff1663f39b5b9b836001426040518463ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180838152602001828152602001925050506020604051808303818588803b15801561029157600080fd5b505af11580156102a5573d6000803e3d6000fd5b50505050506040513d60208110156102bc57600080fd5b8101908080519060200190929190505050905080945050505050905600a165627a7a72305820dd992463542702e2e247f8625a92e5a7e31b8f655f0808f6191c844b68c590a50029
Deployed Bytecode
0x60806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063af294a3614610051578063f121e5e71461007c575b600080fd5b34801561005d57600080fd5b5061006661009a565b6040518082815260200191505060405180910390f35b6100846101f4565b6040518082815260200191505060405180910390f35b600080600073298e0d904954e5076b1836937cb3b3527adf878391508173ffffffffffffffffffffffffffffffffffffffff1663667e93946305f5e1006040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018060200180602001858152602001848103845260038152602001807f4554480000000000000000000000000000000000000000000000000000000000815250602001848103835260038152602001807f5553440000000000000000000000000000000000000000000000000000000000815250602001848103825260008152602001602001945050505050602060405180830381600087803b1580156101af57600080fd5b505af11580156101c3573d6000803e3d6000fd5b505050506040513d60208110156101d957600080fd5b81019080805190602001909291905050509050809250505090565b60008060008060007389d24a6b4ccb1b6faa2625fe562bdd9a2326035993508392503491508273ffffffffffffffffffffffffffffffffffffffff1663f39b5b9b836001426040518463ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180838152602001828152602001925050506020604051808303818588803b15801561029157600080fd5b505af11580156102a5573d6000803e3d6000fd5b50505050506040513d60208110156102bc57600080fd5b8101908080519060200190929190505050905080945050505050905600a165627a7a72305820dd992463542702e2e247f8625a92e5a7e31b8f655f0808f6191c844b68c590a50029
Deployed Bytecode Sourcemap
5758:902:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6382:257;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6382:257:0;;;;;;;;;;;;;;;;;;;;;;;5799:567;;;;;;;;;;;;;;;;;;;;;;;6382:257;6422:7;6441:22;6535:16;6481:42;6441:83;;6554:6;:22;;;6595:9;6554:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6554:51:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6554:51:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6554:51:0;;;;;;;;;;;;;;;;6535:70;;6623:8;6616:15;;6382:257;;;:::o;5799:567::-;5833:7;5932:18;6032:28;6169:17;6219:18;5953:42;5932:63;;6088:10;6032:67;;6189:9;6169:29;;6240:3;:23;;;6270:9;6281:1;6284:15;6240:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6240:60:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6240:60:0;;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6240:60:0;;;;;;;;;;;;;;;;6219:81;;6328:10;6321:17;;5799:567;;;;;:::o
Swarm Source
bzzr://dd992463542702e2e247f8625a92e5a7e31b8f655f0808f6191c844b68c590a5
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.