def METHOD_NAME(self, path):
    """ Download a dataset from the source web-site """
    self.download_archive(path)
    with ZipFile(self.localname) as archive:
        train_names = self._extract_names(archive=archive, mode='training')
        test_names = self._extract_names(archive=archive, mode='validation')
        train_samples = [self._extract_sample(archive, name=name, mode='training') \
                         for name in train_names]
        test_samples = [self._extract_sample(archive, name=name, mode='validation') \
                        for name in test_names]
        train_images, train_masks = map(list, zip(*train_samples))
        test_images, test_masks = map(list, zip(*test_samples))
        images = self.create_array(train_images + test_images)
        masks = self.create_array(train_masks + test_masks)
        preloaded = images, masks
        index, train_index, test_index = self._infer_train_test_index(
            train_len=len(train_names),
            test_len=len(test_names)
        )
        return preloaded, index, train_index, test_index