Redux-toolkit Reselect rerendering after any state change

I tried to create selector that select two variables from state and unites and returns them. But I encountered a problem, that selector causes rerendering after any state change.

import { createSelector } from 'reselect';
import { RootState } from 'store/store.ts';

const selectWallet = (state: RootState, id: string | null) => {
  if (!id) return undefined;
  return state.wallets.list[id] || undefined;
};

const selectTotal = (state: RootState, id: string | null) => {
  if (!id) return 0;
  return state.transactions.walletsTransactionsTotals[id] || 0;
};

export const reselectWalletWithTotalBalance = createSelector([selectWallet, selectTotal], (wallet, total) => {
  if (!wallet) {
    return undefined;
  }

  if (!total) {
    return wallet;
  }

  return { ...wallet, balance: wallet.balance + total };
});

export const selectWalletWithTotalBalance = (id: string | null) => {
  return (state: RootState) => reselectWalletWithTotalBalance(state, id);
};

I know that return { ...wallet, balance: wallet.balance + total }; causes rerenders, Buuut mutation selectors returning data is the point of the Reselect library (in other cases, for example when returning filtered array, no unexpected rerenders).

How to solve problem and create selector? I tryed all methods, all problems arise from creating a new object, but creating a new a object is a one of features Reselect library and I need create new object.

I tryed to reselect selectWallets and selectTotal, but nothing changed

const selectWallet = createSelector(
  [(state: RootState) => state.wallets.list, (_, id: string | null) => id],
  (walletsList, id): WalletType | undefined => {
    if (!id) return undefined;
    return walletsList[id] || undefined;
  }
);