Toyota racks up $18-billion profit