code: def start_new_epoch(self):
      self._batch_counter = 0
      if self.shuffle_every_epoch:
          images, labels = self.shuffle_images_and_labels(
              self.images, self.labels
          )
      else:
          images, labels = self.images, self.labels
      if self.augmentation:
          images = augment_all_images(images, pad=4)
      self.epoch_images = images
      self.epoch_labels = labels
  
imports: import tempfile
  import os
  import pickle
  import random
  import numpy
  from ..data_providers.base_provider import ImagesDataSet, DataProvider
  from ..data_providers.downloader import download_data_url
label_desc: Use image node_id 2 for calling the CifarDataSet obj's underlying member method code with example usage: obj.start_new_epoch() without return types