class_docstr: Provides a light-memory access to a possibly huge list of permutations
  (at the cost of being slightly slower)
class_docstr_tok: ["Provides","a","light-memory","access","to","a","possibly","huge","list","of","permutations","(","at","the","cost","of","being","slightly","slower",")"]
code: def get_permutations_generator(self) -> tp.Iterator[tp.ArrayLike]:
      if self.scrambling:
          randgen = np.random.RandomState(seed=self.seed)
          return (
              np.concatenate(([0], randgen.choice(self.fulllist[1:p], p - 1, replace=False)), axis=0)  # type: ignore
              for p in self.primes
          )
      else:
          return (self.fulllist[:p] for p in self.primes)
  
imports: import numpy
  from numpy.random import RandomState
  import nevergrad.common.typing
  from nevergrad.common.decorators import Registry
label_desc: Use image node_id 2 for calling the HaltonPermutationGenerator obj's underlying member method code with example usage: obj.get_permutations_generator() and returns: unknown, unknown