```\nfunction _transfer(\n    address from,\n    address to,\n    uint256 amount\n) private {\n\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\n    require(!_isBlackListedBot[from], "You are blacklisted");\n    require(!_isBlackListedBot[msg.sender], "You are blacklisted");\n    require(!_isBlackListedBot[tx.origin], "You are blacklisted");\n    require(!_isBlackListedBot[to], "Recipient is blacklisted");\n\n    if(from != owner() && to != owner())\n        require(amount <= _maxTxAmount, "Transfer amount exceeds the maxTxAmount.");\n\n    if(from != owner() && to != owner() && to != uniswapV2Pair && to != address(0xdead)) {\n        uint256 tokenBalanceTo = balanceOf(to);\n        require(tokenBalanceTo + amount <= _maxWalletSize, "Recipient exceeds max wallet size.");\n    }\n\n    // is the token balance of this contract address over the min number of\n    // tokens that we need to initiate a swap + liquidity lock?\n    // also, don't get caught in a circular liquidity event.\n    // also, don't swap & liquify if sender is uniswap pair.\n    uint256 contractTokenBalance = balanceOf(address(this));\n    \n    if(contractTokenBalance >= _maxTxAmount)\n    {\n        contractTokenBalance = _maxTxAmount;\n    }\n    \n    bool overMinTokenBalance = contractTokenBalance >= numTokensSellToAddToLiquidity;\n    if (\n        overMinTokenBalance &&\n        !inSwapAndLiquify &&\n        from != uniswapV2Pair &&\n        swapAndLiquifyEnabled\n    ) {\n        contractTokenBalance = numTokensSellToAddToLiquidity;\n        //add liquidity\n        swapAndLiquify(contractTokenBalance);\n    }\n    \n    //indicates if fee should be deducted from transfer\n    bool takeFee = true;\n    \n    //if any account belongs to _isExcludedFromFee account then remove the fee\n    if(_isExcludedFromFee[from] || _isExcludedFromFee[to]){\n        takeFee = false;\n    }\n    \n    //transfer amount, it will take tax, burn, liquidity fee\n    _tokenTransfer(from,to,amount,takeFee);\n}\n```\n