only query Exists() for candidates
utilize cached-when-existing ID() in Exists()