no need to recurse if we have already seen this target