A contract can receive Ether (payable / receive) but has no function to withdraw it, permanently locking any funds sent.
receive() external payable {}
function withdraw() external onlyOwner {
payable(owner).transfer(address(this).balance);
}
The SaferICO scanner runs 201 detectors over your Solidity source, SAFE-0040 among them. Paste an address or the source itself — a small per-scan fee, shown before you sign, or unlimited on any plan.