public boolean isDeadEnd() {
    if (pendingActions.size() > 0) {
      return false;
    }

    for (ClusterInstance instance : instances) {
      if (instance.hasPendingTimeouts()) {
        return false;
      }
    }

    return true;
  }
 @Override
 public boolean accept(ClusterInstance item) {
   return item.hasPendingTimeouts();
 }