I have trouble understanding how `checkNewOrShadowed` works. It seems there are two types: a "previously found result from an inner context", and a "new one from an outer context". One is called `found`, and the other is called `previous`, I guess. But which one is which? Both ways do not (yet ;-)) make sense for me...