throw an exception if the item isn't found, and deal with exclusions and already-seen cases differently (not a failure path).