do we need to catch key errors?