/** {@inheritDoc} */
 @Override
 protected Collection<P> orphanedItems(Collection<P> orphaned, TaskListener listener)
     throws IOException, InterruptedException {
   BranchProjectFactory<P, R> _factory = getProjectFactory();
   for (P project : orphaned) {
     if (!_factory.isProject(project)) {
       listener.getLogger().println("Detected unsupported subitem " + project + ", skipping");
       continue; // TODO perhaps better to remove from list passed to super, and return it from
                 // here
     }
     Branch b = _factory.getBranch(project);
     if (!(b instanceof Branch.Dead)) {
       _factory.decorate(
           _factory.setBranch(project, new Branch.Dead(b.getHead(), b.getProperties())));
     }
   }
   return super.orphanedItems(orphaned, listener);
 }