code: def _sample_points(X, centers, oversampling_factor, random_state):
      r
      # re-implement evaluate_cost here, to avoid redundant computation
      distances = pairwise_distances(X, centers).min(1) ** 2
      denom = distances.sum()
      p = oversampling_factor * distances / denom
  
      draws = random_state.uniform(size=len(p), chunks=p.chunks)
      picked = p > draws
  
      new_idxs, = da.where(picked)
      return new_idxs
docs: r"""
      Sample points independently with probability
  
  
      .. math::
  
         p_x = \frac{\ell \cdot d^2(x, \mathcal{C})}{\phi_X(\mathcal{C})}