@Override
 boolean check(TraversalBranch source, boolean remember) {
   long idToCompare = type.getId(source);
   while ((source = source.parent()) != null) {
     if (type.idEquals(source, idToCompare)) {
       return false;
     }
   }
   return true;
 }