Bank of America drops $5 fee for debit cards