pragma solidity ^0.5.10; import '../interfaces/JustswapExchange.sol'; import '../interfaces/ITRC20.sol'; contract Epsilon { address payable owner; event Start(uint256 value); event End(uint256 value); constructor() public { owner = msg.sender; } modifier onlyOwner { require(msg.sender == owner); _; } uint256 public balancebefore; uint256 public balanceafter; function() external payable {} function buyJsSellPolo(address payable dex2, uint256 amountA,address tokenA,address payable dex1, address tokenB, uint256 amountB, uint256 price,uint256 precision, uint256 TrxToPay) public payable onlyOwner { uint256 balancebefore = address(this).balance; emit Start(address(this).balance); emit Start(balancebefore); TRC20 TokenContract = TRC20(tokenA); address payable Dex2 = address(dex2); JustswapExchange DiceFactory=JustswapExchange(dex1); address (TokenContract).call(abi.encodeWithSignature("approve(address,uint256)",Dex2,amountA)); emit Start(address(this).balance); emit Start(balancebefore); address (DiceFactory).call.value(msg.value)(abi.encodeWithSignature("trxToToken(uint256,uin256)",amountA,1693784026)); emit Start(address(this).balance); emit Start(balancebefore); address (Dex2).call(abi.encodeWithSignature("sellOrder(address,uint256,address,uint256,uint256)",tokenA, amountA, tokenB, amountB, price)); uint256 balanceafter = address(this).balance; emit End(address(this).balance); emit End(balanceafter); /* require( address(this).balance >= msg.value ); */ } function finalize() public onlyOwner { selfdestruct(owner); } }
0.5.10