code: def sample(self, batch_size):
          
          idxes = [random.randint(0, len(self._storage) - 1) for _ in range(batch_size)]
          return self._encode_sample(idxes)
docs: Sample a batch of experiences.
  
          Parameters
          ----------
          batch_size: int
              How many transitions to sample.
  
          Returns
          -------
          obs_batch: np.array
              batch of observations
          act_batch: np.array
              batch of actions executed given obs_batch
          rew_batch: np.array
              rewards received as results of executing act_batch
          next_obs_batch: np.array
              next set of observations seen after executing act_batch
          done_mask: np.array
              done_mask[i] = 1 if executing act_batch[i] resulted in
              the end of an episode and 0 otherwise.