```\\nfunction distributeFee() public {\\n    require(distributingFee == false, "VoxNET: reentry prohibited");\\n    distributingFee = true;\\n\\n    uint tokensToSell = balanceOf[address(this)];\\n\\n    if (tokensToSell > 0) {\\n        address[] memory path = new address[](2);\\n        path[0] = address(this);\\n        path[1] = weth;\\n\\n        allowance[address(this)][router] = tokensToSell;\\n\\n        IUniswapV2Router02(router).swapExactTokensForETHSupportingFeeOnTransferTokens(\\n            tokensToSell,\\n            0,\\n            path,\\n            address(this),\\n            block.timestamp\\n        );\\n    }\\n\\n    uint amount = address(this).balance;\\n\\n    if (amount > 0) {\\n        bool success;\\n\\n        if (ecosystemFee != 0) {\\n            uint amountEcosystem = (amount * ecosystemFee) / fee;\\n            (success, ) = payable(ecosystemFeeReceiver).call{ value: amountEcosystem, gas: 30000 }("");\\n        }\\n\\n        uint amountMarketing = (amount * marketingFee) / fee;\\n        (success, ) = payable(marketingFeeReceiver1).call{ value: amountMarketing / 2, gas: 30000 }("");\\n        (success, ) = payable(marketingFeeReceiver2).call{ value: amountMarketing / 2, gas: 30000 }("");\\n\\n        uint amountTreasury = (amount * treasuryFee) / fee;\\n        (success, ) = payable(treasuryFeeReceiver).call{ value: amountTreasury, gas: 30000 }("");\\n    }\\n\\n    distributingFee = false;\\n}\\n```\\n