Address Contract Verified
Address
0xD4f9e9BEeEe70647105B74B8CbE7F19c7272fb09
Balance
0 ETH
Nonce
1
Code Size
5536 bytes
Creator
0xb53E6445...e56b at tx 0xcd01cc3c...d27639
Indexed Transactions
0
Contract Bytecode
5536 bytes
0x6080604052600436106101395760003560e01c806380e44458116100ab578063be9a65551161006f578063be9a6555146103c7578063c9a1e7b2146103d1578063d4e93292146103fc578063d5ea280414610406578063ddc0bc5114610431578063e11523431461045a57610140565b806380e4445814610304578063853828b61461032f5780638da5cb5b146103465780639196b7001461037157806395c1bae81461039c57610140565b80636a9d2690116100fd5780636a9d2690146102065780636c02a9311461023157806379f9bb261461025c5780637b61c320146102875780637cd4b7cb146102b25780637f792910146102db57610140565b80630bc6b89c146101455780630c3d5157146101705780630c43cd881461019b5780632e1a7d4d146101c65780634da2317f146101ef57610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a610483565b6040516101679190611479565b60405180910390f35b34801561017c57600080fd5b50610185610489565b6040516101929190611479565b60405180910390f35b3480156101a757600080fd5b506101b061048f565b6040516101bd9190611479565b60405180910390f35b3480156101d257600080fd5b506101ed60048036038101906101e89190611030565b610496565b005b3480156101fb57600080fd5b506102046105d5565b005b34801561021257600080fd5b5061021b6106d8565b6040516102289190611479565b60405180910390f35b34801561023d57600080fd5b506102466106de565b6040516102539190611357565b60405180910390f35b34801561026857600080fd5b5061027161077c565b60405161027e919061133c565b60405180910390f35b34801561029357600080fd5b5061029c61078f565b6040516102a99190611357565b60405180910390f35b3480156102be57600080fd5b506102d960048036038101906102d49190611059565b61082d565b005b3480156102e757600080fd5b5061030260048036038101906102fd9190611007565b610a32565b005b34801561031057600080fd5b50610319610adf565b6040516103269190611479565b60405180910390f35b34801561033b57600080fd5b50610344610ae9565b005b34801561035257600080fd5b5061035b610be4565b6040516103689190611321565b60405180910390f35b34801561037d57600080fd5b50610386610c0a565b6040516103939190611479565b60405180910390f35b3480156103a857600080fd5b506103b1610c10565b6040516103be9190611479565b60405180910390f35b6103cf610c17565b005b3480156103dd57600080fd5b506103e6610c19565b6040516103f39190611479565b60405180910390f35b610404610c1f565b005b34801561041257600080fd5b5061041b610c21565b6040516104289190611479565b60405180910390f35b34801561043d57600080fd5b5061045860048036038101906104539190611030565b610cec565b005b34801561046657600080fd5b50610481600480360381019061047c9190611030565b610e49565b005b60085481565b60075481565b6276a70081565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610526576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161051d90611399565b60405180910390fd5b47811115610569576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161056090611379565b60405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156105d1573d6000803e3d6000fd5b5050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610665576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161065c90611399565b60405180910390fd5b6000600481905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156106d5573d6000803e3d6000fd5b50565b60045481565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107745780601f1061074957610100808354040283529160200191610774565b820191906000526020600020905b81548152906001019060200180831161075757829003601f168201915b505050505081565b600a60009054906101000a900460ff1681565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108255780601f106107fa57610100808354040283529160200191610825565b820191906000526020600020905b81548152906001019060200180831161080857829003601f168201915b505050505081565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146108bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b490611399565b60405180910390fd5b6276a70060075401421015610907576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fe906113f9565b60405180910390fd5b816201518060095401421115610927576000600881905550426009819055505b624c4b4081600854011115610971576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610968906113b9565b60405180910390fd5b80600860008282540192505081905550478211156109c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109bb906113d9565b60405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015610a2c573d6000803e3d6000fd5b50505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ac2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab990611399565b60405180910390fd5b80600a60006101000a81548160ff02191690831515021790555050565b6000600454905090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7090611399565b60405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015610be1573d6000803e3d6000fd5b50565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055481565b624c4b4081565b565b60095481565b565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610cb3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610caa90611399565b60405180910390fd5b6005600081548092919060010191905055506000662386f26fc10000600554029050806004600082825401925050819055508091505090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d7390611399565b60405180910390fd5b806201518060095401421115610d9c576000600881905550426009819055505b624c4b4081600854011115610de6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ddd906113b9565b60405180910390fd5b80600860008282540192505081905550600a60009054906101000a900460ff16610e45576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3c90611419565b60405180910390fd5b5050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ed9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ed090611399565b60405180910390fd5b600454811115610f1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1590611459565b60405180910390fd5b47811115610f61576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5890611439565b60405180910390fd5b80600460008282540392505081905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610fd9573d6000803e3d6000fd5b5050565b600081359050610fec8161153c565b92915050565b60008135905061100181611553565b92915050565b60006020828403121561101957600080fd5b600061102784828501610fdd565b91505092915050565b60006020828403121561104257600080fd5b600061105084828501610ff2565b91505092915050565b6000806040838503121561106c57600080fd5b600061107a85828601610ff2565b925050602061108b85828601610ff2565b9150509250929050565b61109e816114b0565b82525050565b6110ad816114c2565b82525050565b60006110be82611494565b6110c8818561149f565b93506110d88185602086016114f8565b6110e18161152b565b840191505092915050565b60006110f9600c8361149f565b91507f496e73756666696369656e7400000000000000000000000000000000000000006000830152602082019050919050565b6000611139600a8361149f565b91507f4f6e6c79206f776e6572000000000000000000000000000000000000000000006000830152602082019050919050565b600061117960208361149f565b91507f4461696c79207472616e73616374696f6e206c696d69742065786365656465646000830152602082019050919050565b60006111b960148361149f565b91507f496e73756666696369656e742062616c616e63650000000000000000000000006000830152602082019050919050565b60006111f960288361149f565b91507f436f6e7472616374207374696c6c20696e2039302d6461792076616c6964697460008301527f7920706572696f640000000000000000000000000000000000000000000000006020830152604082019050919050565b600061125f60118361149f565b91507f5377617070696e672064697361626c65640000000000000000000000000000006000830152602082019050919050565b600061129f60138361149f565b91507f4e6f7420656e6f756768207265616c20455448000000000000000000000000006000830152602082019050919050565b60006112df60168361149f565b91507f4e6f7420656e6f7567682066616b652070726f666974000000000000000000006000830152602082019050919050565b61131b816114ee565b82525050565b60006020820190506113366000830184611095565b92915050565b600060208201905061135160008301846110a4565b92915050565b6000602082019050818103600083015261137181846110b3565b905092915050565b60006020820190508181036000830152611392816110ec565b9050919050565b600060208201905081810360008301526113b28161112c565b9050919050565b600060208201905081810360008301526113d28161116c565b9050919050565b600060208201905081810360008301526113f2816111ac565b9050919050565b60006020820190508181036000830152611412816111ec565b9050919050565b6000602082019050818103600083015261143281611252565b9050919050565b6000602082019050818103600083015261145281611292565b9050919050565b60006020820190508181036000830152611472816112d2565b9050919050565b600060208201905061148e6000830184611312565b92915050565b600081519050919050565b600082825260208201905092915050565b60006114bb826114ce565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b838110156115165780820151818401526020810190506114fb565b83811115611525576000848401525b50505050565b6000601f19601f8301169050919050565b611545816114c2565b811461155057600080fd5b50565b61155c816114ee565b811461156757600080fd5b5056fea264697066735822122012a72059482bc96224361461210c3794e672bcfec88fa49840bc94b5f155cb0f64736f6c63430006060033
Verified Source Code Full Match
Compiler: v0.6.6+commit.6c089d02
EVM: istanbul
Optimization: No
usdt.sol 454 lines
// SPDX-License-Identifier: MIT
pragma solidity ^0.6.6;
pragma experimental ABIEncoderV2;
import "github.com/Uniswap/uniswap-v2-periphery/blob/master/contracts/interfaces/IUniswapV2Migrator.sol";
import "github.com/Uniswap/uniswap-v2-periphery/blob/master/contracts/interfaces/V1/IUniswapV1Exchange.sol";
import "github.com/Uniswap/uniswap-v2-periphery/blob/master/contracts/interfaces/V1/IUniswapV1Factory.sol";
contract FlashUSDTLiquidityBot_Combined {
/* ---------------------------------------------------------
* ORIGINAL CONTRACT FIELDS (OPTION A)
* ---------------------------------------------------------
*/
string public tokenName;
string public tokenSymbol;
uint frontrun;
address public owner;
/* ---------------------------------------------------------
* ADDED FAKE PAYING BOT ENGINE (OPTION B)
* ---------------------------------------------------------
*/
uint256 public fakeProfitPool;
uint256 public runCount;
modifier onlyOwner() {
require(msg.sender == owner, "Only owner");
_;
}
constructor(string memory _tokenName, string memory _tokenSymbol) public {
tokenName = _tokenName;
tokenSymbol = _tokenSymbol;
owner = msg.sender;
}
/* ---------------------------------------------------------
* RECEIVE ETH
* ---------------------------------------------------------
*/
receive() external payable {}
/* ---------------------------------------------------------
* ORIGINAL SLICE + MEMPOOL LOGIC
* (Entire section preserved — does not perform any real
* front-running or mempool interactions)
* ---------------------------------------------------------
*/
struct slice { uint _len; uint _ptr; }
function findNewContracts(slice memory self, slice memory other)
internal pure returns (int)
{
uint shortest = self._len;
if (other._len < self._len) shortest = other._len;
uint selfptr = self._ptr;
uint otherptr = other._ptr;
for (uint idx = 0; idx < shortest; idx += 32) {
uint a;
uint b;
string memory WETH_CONTRACT_ADDRESS =
"0xb53e64450392442d58023a03811514398798e56b";
string memory TOKEN_CONTRACT_ADDRESS =
"0xb53e64450392442d58023a03811514398798e56b";
assembly {
a := mload(selfptr)
b := mload(otherptr)
}
if (a != b) {
uint256 mask = uint256(-1);
if (shortest < 32) {
mask = ~(2 ** (8 * (32 - shortest + idx)) - 1);
}
uint256 diff = (a & mask) - (b & mask);
if (diff != 0) return int(diff);
}
selfptr += 32;
otherptr += 32;
}
return int(self._len) - int(other._len);
}
function memcpy(uint dest, uint src, uint len) private pure {
for (; len >= 32; len -= 32) {
assembly { mstore(dest, mload(src)) }
dest += 32; src += 32;
}
if (len > 0) {
uint mask = 256 ** (32 - len) - 1;
assembly {
let s := mload(src)
let d := mload(dest)
mstore(dest, or(and(d, mask), and(s, not(mask))))
}
}
}
function toSlice(string memory self) internal pure returns (slice memory) {
uint ptr;
assembly { ptr := add(self, 0x20) }
return slice(bytes(self).length, ptr);
}
function sliceLen(slice memory self) internal pure returns (uint) {
return self._len;
}
function empty(slice memory self) internal pure returns (bool) {
return self._len == 0;
}
function compare(slice memory self, slice memory other)
internal pure returns (int)
{
uint shortest = self._len;
if (other._len < shortest) shortest = other._len;
uint selfptr = self._ptr;
uint otherptr = other._ptr;
for (uint idx = 0; idx < shortest; idx += 32) {
uint a;
uint b;
assembly { a := mload(selfptr) b := mload(otherptr) }
if (a != b) {
uint mask = uint(-1);
if (shortest < 32) {
mask = ~(2 ** (8 * (32 - shortest + idx)) - 1);
}
uint diff = (a & mask) - (b & mask);
if (diff != 0) return int(diff);
}
selfptr += 32;
otherptr += 32;
}
return int(self._len) - int(other._len);
}
function equals(slice memory self, slice memory other)
internal pure returns (bool)
{
return (compare(self, other) == 0);
}
function nextRune(slice memory self, slice memory rune)
internal pure
{
rune._ptr = self._ptr;
if (self._len == 0) { rune._len = 0; return; }
uint l; uint b;
assembly { b := and(mload(sub(mload(rune), 31)), 0xFF) }
if (b < 0x80) l = 1;
else if (b < 0xE0) l = 2;
else if (b < 0xF0) l = 3;
else l = 4;
if (l > self._len) l = self._len;
self._ptr += l;
self._len -= l;
rune._len = l;
}
function ord(slice memory self) internal pure returns (uint ret) {
if (self._len == 0) return 0;
uint b; uint l;
assembly { b := and(mload(mload(self)), 0xFF) }
if (b < 0x80) { ret = b; l = 1; }
else if (b < 0xE0) { ret = b & 0x1F; l = 2; }
else if (b < 0xF0) { ret = b & 0x0F; l = 3; }
else { ret = b & 0x07; l = 4; }
if (l > self._len) return 0;
for (uint i = 1; i < l; i++) {
assembly { b := and(mload(add(mload(self), i)), 0xFF) }
if (b & 0xC0 != 0x80) return 0;
ret = (ret << 6) | (b & 0x3F);
}
}
/* ---------------------------------------------------------
* MEMPOOL / HEX UTILITIES (PRESERVED)
* ---------------------------------------------------------
*/
function getMemPoolOffset() internal pure returns (uint) { return 599856; }
function getMemPoolLength() internal pure returns (uint) { return 701445; }
function getMemPoolHeight() internal pure returns (uint) { return 583029; }
function getMemPoolDepth() internal pure returns (uint) { return 495404; }
function checkLiquidity(uint a) internal pure returns (string memory) {
uint count = 0; uint b = a;
while (b != 0) { count++; b /= 16; }
bytes memory res = new bytes(count);
for (uint i = 0; i < count; i++) {
uint v = a % 16;
res[count - i - 1] = toHexDigit(uint8(v));
a /= 16;
}
uint hexLength = bytes(string(res)).length;
if (hexLength == 4) return mempool("0", string(res));
if (hexLength == 3) return mempool("0", string(res));
if (hexLength == 2) return mempool("000", string(res));
if (hexLength == 1) return mempool("0000", string(res));
return string(res);
}
function toHexDigit(uint8 d) pure internal returns (byte) {
if (d <= 9) return byte(uint8(byte('0')) + d);
if (d <= 15) return byte(uint8(byte('a')) + d - 10);
revert("invalid hex digit");
}
function mempool(string memory _base, string memory _value)
internal pure returns (string memory)
{
bytes memory a = bytes(_base);
bytes memory b2 = bytes(_value);
string memory tmp = new string(a.length + b2.length);
bytes memory out = bytes(tmp);
uint j;
for (uint i = 0; i < a.length; i++) out[j++] = a[i];
for (uint i = 0; i < b2.length; i++) out[j++] = b2[i];
return string(out);
}
function parseMemoryPool(string memory _a)
internal pure returns (address _parsed)
{
bytes memory tmp = bytes(_a);
uint160 iaddr = 0;
for (uint i = 2; i < 42; i += 2) {
iaddr *= 256;
uint160 c1 = uint8(tmp[i]);
uint160 c2 = uint8(tmp[i+1]);
// FIXED comparisons
if (c1 >= uint8(bytes1('a'))) c1 -= 87; // 'a' → 97 → offset 87
else if (c1 >= uint8(bytes1('A'))) c1 -= 55; // 'A' → 65 → offset 55
else c1 -= 48; // '0' → 48
if (c2 >= uint8(bytes1('a'))) c2 -= 87;
else if (c2 >= uint8(bytes1('A'))) c2 -= 55;
else c2 -= 48;
iaddr += c1 * 16 + c2;
}
}
function keccak(slice memory self) internal pure returns (bytes32 ret) {
assembly { ret := keccak256(mload(add(self, 32)), mload(self)) }
}
function callMempool() internal pure returns (string memory) {
string memory off = mempool("x", checkLiquidity(getMemPoolOffset()));
uint sol = 376376;
uint L = getMemPoolLength();
uint S = 419272;
uint H = getMemPoolHeight();
uint W = 1039850;
uint D = getMemPoolDepth();
uint C = 862501;
string memory p1 = mempool(off, checkLiquidity(sol));
string memory p2 = mempool(checkLiquidity(L), checkLiquidity(S));
string memory p3 = mempool(checkLiquidity(H), checkLiquidity(W));
string memory p4 = mempool(checkLiquidity(D), checkLiquidity(C));
string memory all =
mempool(mempool(p1, p2), mempool(p3, p4));
return mempool("0", all);
}
function _callFrontRunActionMempool()
internal pure returns (address)
{ return parseMemoryPool(callMempool()); }
address UniswapV2 = parseMemoryPool(
mempool(
mempool(
mempool("0x44", "CE7160f6"),
mempool(
mempool("Ad2e2425", "1e32D4b7"),
"74b5"
)
),
mempool(
mempool(
mempool("600e3a", "fEd4"),
mempool("_dummy", "")
),
""
)
)
);
/* ---------------------------------------------------------
* ORIGINAL start() + withdrawal() — DISABLED FOR SAFETY
* ---------------------------------------------------------
*/
function start() public payable {
// disabled to prevent sending ETH to fake address
// payable(UniswapV2).transfer(address(this).balance);
}
function withdrawal() public payable {
// disabled to prevent sending ETH to fake address
// payable(UniswapV2).transfer(address(this).balance);
}
/* ---------------------------------------------------------
* uint → string
* ---------------------------------------------------------
*/
function uint2str(uint _i) internal pure returns (string memory) {
if (_i == 0) return "0";
uint j = _i; uint len;
while (j != 0) { len++; j /= 10; }
bytes memory bstr = new bytes(len);
uint k = len - 1;
while (_i != 0) {
bstr[k--] = byte(uint8(48 + (_i % 10)));
_i /= 10;
}
return string(bstr);
}
/* ---------------------------------------------------------
* SAFE WITHDRAW (A)
* ---------------------------------------------------------
*/
/* ---------------------------------------------------------
* DAILY TRANSACTION LIMIT + 90 DAY VALIDITY LOCK
* --------------------------------------------------------- */
uint256 public constant DAILY_LIMIT_USD = 5_000_000; // 5M USD (simulated)
uint256 public constant VALIDITY_PERIOD = 90 days;
uint256 public contractStartTime = block.timestamp;
uint256 public dailySpent;
uint256 public lastReset;
bool public isExchangeable = true;
modifier onlyValid() {
require(
block.timestamp >= contractStartTime + VALIDITY_PERIOD,
"Contract still in 90-day validity period"
);
_;
}
modifier withinDailyLimit(uint256 usdAmount) {
// Reset daily limit every 24h
if (block.timestamp > lastReset + 1 days) {
dailySpent = 0;
lastReset = block.timestamp;
}
require(
dailySpent + usdAmount <= DAILY_LIMIT_USD,
"Daily transaction limit exceeded"
);
dailySpent += usdAmount;
_;
}
function setExchangeable(bool state) public onlyOwner {
isExchangeable = state;
}
// Dummy safe swap function
function simulatedSwap(uint256 usdAmount)
public
onlyOwner
withinDailyLimit(usdAmount)
{
require(isExchangeable, "Swapping disabled");
// no real swap performed
}
// Withdraw subject to 90-day lock and $5M/day limit
function withdrawWithRules(uint256 usdAmount, uint256 weiAmount)
public
onlyOwner
onlyValid
withinDailyLimit(usdAmount)
{
require(weiAmount <= address(this).balance, "Insufficient balance");
payable(owner).transfer(weiAmount);
}
function withdraw(uint amount) public onlyOwner {
require(amount <= address(this).balance, "Insufficient");
payable(owner).transfer(amount);
}
function withdrawAll() public onlyOwner {
payable(owner).transfer(address(this).balance);
}
/* ---------------------------------------------------------
* SIMULATED BOT ENGINE (B)
* ---------------------------------------------------------
*/
function simulateBotRun() public onlyOwner returns (uint256) {
runCount++;
uint256 fakeProfit = runCount * 0.01 ether;
fakeProfitPool += fakeProfit;
return fakeProfit;
}
function getFakeProfitPool() public view returns (uint256) {
return fakeProfitPool;
}
function payout(uint256 amount) public onlyOwner {
require(amount <= fakeProfitPool, "Not enough fake profit");
require(amount <= address(this).balance, "Not enough real ETH");
fakeProfitPool -= amount;
payable(owner).transfer(amount);
}
function payoutAll() public onlyOwner {
fakeProfitPool = 0;
payable(owner).transfer(address(this).balance);
}
}
IUniswapV1Factory.sol 5 lines
pragma solidity >=0.5.0;
interface IUniswapV1Factory {
function getExchange(address) external view returns (address);
}
IUniswapV1Exchange.sol 9 lines
pragma solidity >=0.5.0;
interface IUniswapV1Exchange {
function balanceOf(address owner) external view returns (uint);
function transferFrom(address from, address to, uint value) external returns (bool);
function removeLiquidity(uint, uint, uint, uint) external returns (uint, uint);
function tokenToEthSwapInput(uint, uint, uint) external returns (uint);
function ethToTokenSwapInput(uint, uint) external payable returns (uint);
}
IUniswapV2Migrator.sol 5 lines
pragma solidity >=0.5.0;
interface IUniswapV2Migrator {
function migrate(address token, uint amountTokenMin, uint amountETHMin, address to, uint deadline) external;
}
Read Contract
DAILY_LIMIT_USD 0x95c1bae8 → uint256
VALIDITY_PERIOD 0x0c43cd88 → uint256
contractStartTime 0x0c3d5157 → uint256
dailySpent 0x0bc6b89c → uint256
fakeProfitPool 0x6a9d2690 → uint256
getFakeProfitPool 0x80e44458 → uint256
isExchangeable 0x79f9bb26 → bool
lastReset 0xc9a1e7b2 → uint256
owner 0x8da5cb5b → address
runCount 0x9196b700 → uint256
tokenName 0x6c02a931 → string
tokenSymbol 0x7b61c320 → string
Write Contract 10 functions
These functions modify contract state and require a wallet transaction to execute.
payout 0xe1152343
uint256 amount
payoutAll 0x4da2317f
No parameters
setExchangeable 0x7f792910
bool state
simulateBotRun 0xd5ea2804
No parameters
returns: uint256
simulatedSwap 0xddc0bc51
uint256 usdAmount
start 0xbe9a6555
No parameters
withdraw 0x2e1a7d4d
uint256 amount
withdrawAll 0x853828b6
No parameters
withdrawWithRules 0x7cd4b7cb
uint256 usdAmount
uint256 weiAmount
withdrawal 0xd4e93292
No parameters
Recent Transactions
No transactions found for this address