<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_slices_multi(self, image_list, extended=False):
 """Returns the same cross-section from the multiple images supplied. All images must be of the same shape as the original image defining this object. Parameters image_list : Iterable containing atleast 2 images extended : bool Flag to return just slice data (default, extended=False), or return a tuple of axis, slice_num, slice_data (extended=True) Returns ------- tuple_slice_data : tuple of one slice from each image in the input image list Let's denote it by as TSL. if extended=True, returns tuple(axis, slice_num, TSL) """


        # ensure all the images have the same shape
        for img in image_list:
            if img.shape != self._image.shape:
                raise ValueError('Supplied images are not compatible with this class. '
                                 'They must have the shape: {}'.format(self._image_shape))

        for dim, slice_num in self._slices:
            multiple_slices = (self._get_axis(img, dim, slice_num) for img in image_list)
            if not extended:
                # return just the slice data
                yield multiple_slices
            else:
                # additionally include which dim and which slice num
                # not using extended option in get_axis, to avoid complicating unpacking
                yield dim, slice_num, multiple_slices