<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def upload_and_confirm(self, incoming, **kwargs):
 """Upload the file to okcupid and confirm, among other things, its thumbnail position. :param incoming: A filepath string, :class:`.Info` object or a file like object to upload to okcupid.com. If an info object is provided, its thumbnail positioning will be used by default. :param caption: The caption to add to the photo. :param thumb_nail_left: For thumb nail positioning. :param thumb_nail_top: For thumb nail positioning. :param thumb_nail_right: For thumb nail positioning. :param thumb_nail_bottom: For thumb nail positioning. """

        response_dict = self.upload(incoming)
        if 'error' in response_dict:
            log.warning('Failed to upload photo')
            return response_dict
        if isinstance(incoming, Info):
            kwargs.setdefault('thumb_nail_left', incoming.thumb_nail_left)
            kwargs.setdefault('thumb_nail_top', incoming.thumb_nail_top)
            kwargs.setdefault('thumb_nail_right', incoming.thumb_nail_right)
            kwargs.setdefault('thumb_nail_bottom', incoming.thumb_nail_bottom)
        kwargs['height'] = response_dict.get('height')
        kwargs['width'] = response_dict.get('width')
        self.confirm(response_dict['id'], **kwargs)
        return response_dict