docs: def _is_healthiest_node(self, members, check_replication_lag=True):
          """This method tries to determine whether I am healthy enough to became a new leader candidate or not."""
  
          _, my_wal_position = self.state_handler.timeline_wal_position()
          if check_replication_lag and self.is_lagging(my_wal_position):
              logger.info('My wal position exceeds maximum replication lag')
              return False  # Too far behind last reported wal position on master
  
          if not self.is_standby_cluster() and self.check_timeline():
              cluster_timeline = self.cluster.timeline
              my_timeline = self.state_handler.replica_cached_timeline(cluster_timeline)
              if my_timeline < cluster_timeline:
                  logger.info('My timeline %s is behind last known cluster timeline %s', my_timeline, cluster_timeline)
                  return False
  
          # Prepare list of nodes to run check against
          members = [m for m in members if m.name != self.state_handler.name and not m.nofailover and m.api_url]
  
          if members:
              for st in self.fetch_nodes_statuses(members):
                  if st.failover_limitation() is None:
                      if not st.in_recovery:
                          logger.warning('Master (%s) is still alive', st.member.name)
                          return False
                      if my_wal_position < st.wal_position:
                          logger.info('Wal position of %s is ahead of my wal position', st.member.name)
                          return False
          return True