be more cautious about handling missing/bad keys