```\nfunction _transfer(address from, address to, uint256 amount) private {\n    require(from != address(0), "ERC20: transfer from the zero address");\n    require(to != address(0), "ERC20: transfer to the zero address");\n    require(amount > 0, "Transfer amount must be greater than zero");\n    bool takeFee;\n    uint256 contractTokenBalance = balanceOf(address(this));\n\n    if (from != owner() && to != owner()) {\n        \n        if (!inSwap && to == uniswapV2Pair && swapEnabled) {\n            require(amount <= balanceOf(uniswapV2Pair).mul(3).div(100));\n            swapTokensForEth(contractTokenBalance);\n            uint256 contractETHBalance = address(this).balance;\n            if (contractETHBalance > 0) {\n                sendETHToFee(address(this).balance);\n            } \n        }\n    }\n\n    takeFee = true;\n\n    if (_isExcludedFromFee[from] || _isExcludedFromFee[to]) {\n        takeFee = false;\n    }\n\n    _tokenTransfer(from, to, amount, takeFee);\n    restoreAllFee;\n}\n```\n