docs: def inject(self, solutions):
          """inject a genotypic solution. The solution is used as direction
          relative to the distribution mean to compute a new candidate
          solution returned in method `ask_geno` which in turn is used in
          method `ask`.
  
          >>> import cma
          >>> es = cma.CMAEvolutionStrategy(4 * [1], 2)
          >>> while not es.stop():
          ...     es.inject([4 * [0.0]])
          ...     X = es.ask()
          ...     break
          >>> assert X[0][0] == X[0][1]
  
          """
          if not hasattr(self, 'pop_injection_directions'):
              self.pop_injection_directions = []
          for solution in solutions:
              if len(solution) != self.N:
                  raise ValueError('method `inject` needs a list or array'
                      + (' each el with dimension (`len`) %d' % self.N))
              self.pop_injection_directions.append(
                  array(solution, copy=False, dtype=float) - self.mean)