change balance and add recording model