LMPVault: DoS when `feeSink` balance hits `perWalletLimit`
`_collectFees` mints shares to `feeSink`.\\n```\\nfunction _collectFees(uint256 idle, uint256 debt, uint256 totalSupply) internal {\\n    address sink = feeSink;\\n    // rest of code.\\n    if (fees > 0 && sink != address(0)) {\\n        // Calculated separate from other mints as normal share mint is round down\\n        shares = _convertToShares(fees, Math.Rounding.Up);\\n        _mint(sink, shares);\\n        emit Deposit(address(this), sink, fees, shares);\\n    }\\n    // rest of code.\\n}\\n```\\n\\n`_mint` calls `_beforeTokenTransfer` internally to check if the target wallet exceeds `perWalletLimit`.\\n```\\nfunction _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual override whenNotPaused {\\n    // rest of code.\\n    if (balanceOf(to) + amount > perWalletLimit) {\\n        revert OverWalletLimit(to);\\n    }\\n}\\n```\\n\\n`_collectFees` function will revert if `balanceOf(feeSink) + fee shares > perWalletLimit`. `updateDebtReporting`, `rebalance` and `flashRebalance` call `_collectFees` internally so they will be unfunctional.
Allow `feeSink` to exceeds `perWalletLimit`.
`updateDebtReporting`, `rebalance` and `flashRebalance` won't be working if `feeSink` balance hits `perWalletLimit`.
```\\nfunction _collectFees(uint256 idle, uint256 debt, uint256 totalSupply) internal {\\n    address sink = feeSink;\\n    // rest of code.\\n    if (fees > 0 && sink != address(0)) {\\n        // Calculated separate from other mints as normal share mint is round down\\n        shares = _convertToShares(fees, Math.Rounding.Up);\\n        _mint(sink, shares);\\n        emit Deposit(address(this), sink, fees, shares);\\n    }\\n    // rest of code.\\n}\\n```\\n