<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def CreateShowcaseAd(client, adgroup, expanded_image_filepath, collapsed_image_filepath):
 """Creates a showcase add for the given AdGroup with the given images. Args: client: an AdWordsClient instance. adgroup: a dict or suds object defining an AdGroup for a Shopping Campaign. expanded_image_filepath: a str filepath to a .jpg file that will be used as the Showcase Ad's expandedImage. collapsed_image_filepath: a str filepath to a .jpg file that will be used as the Showcase Ad's collapsedImage. Returns: The created Showcase Ad as a sudsobject. """

  ad_group_ad_service = client.GetService('AdGroupAdService', 'v201809')

  showcase_ad = {
      'adGroupId': adgroup['id'],
      'ad': {
          'xsi_type': 'ShowcaseAd',
          'Ad.Type': 'ShowcaseAd',
          # Required: set the ad's name, final URLs, and display URL.
          'name': 'Showcase ad #%s' % uuid.uuid4(),
          'finalUrls': 'http://example.com/showcase',
          'displayUrl': 'example.com',
          # Required: Set the ad's expanded image.
          'expandedImage': {
              'mediaId': UploadImage(client, expanded_image_filepath)['mediaId']
          },
          # Optional: Set the collapsed image.
          'collapsedImage': {
              'mediaId':
                  UploadImage(client, collapsed_image_filepath)['mediaId']
          }
      }
  }

  ad_operation = {
      'operator': 'ADD',
      'operand': showcase_ad
  }

  # Make the mutate request to add the ProductAd to the AdGroup
  showcase_ad = ad_group_ad_service.mutate([ad_operation])['value'][0]

  print 'ShowcaseAd with ID "%s" was added.' % showcase_ad['ad']['id']

  return showcase_ad