use final_balance, not total_received