code: def list_subtitles(self, video, languages):
          
          subtitles = []
  
          for name in self.providers:
              # check discarded providers
              if name in self.discarded_providers:
                  logger.debug('Skipping discarded provider %r', name)
                  continue
  
              # list subtitles
              provider_subtitles = self.list_subtitles_provider(name, video, languages)
              if provider_subtitles is None:
                  logger.info('Discarding provider %s', name)
                  self.discarded_providers.add(name)
                  continue
  
              # add the subtitles
              subtitles.extend(provider_subtitles)
  
          return subtitles
docs: List subtitles.
  
          :param video: video to list subtitles for.
          :type video: :class:`~subliminal.video.Video`
          :param languages: languages to search for.
          :type languages: set of :class:`~babelfish.language.Language`
          :return: found subtitles.
          :rtype: list of :class:`~subliminal.subtitle.Subtitle`