docs: def hsig(self, es):
          """return "OK-signal" for rank-one update, `True` (OK) or `False`
          (stall rank-one update), based on the length of an evolution path
  
          """
          self._update_ps(es)
          if self.ps is None:
              return True
          squared_sum = sum(self.ps**2) / (1 - (1 - self.cs)**(2 * es.countiter))
          # correction with self.countiter seems not necessary,
          # as pc also starts with zero
          return squared_sum / es.N - 1 < 1 + 4. / (es.N + 1)