code: def check_video(video, languages=None, age=None, undefined=False):
      
      # language test
      if languages and not (languages - video.subtitle_languages):
          logger.debug('All languages %r exist', languages)
          return False
  
      # age test
      if age and video.age > age:
          logger.debug('Video is older than %r', age)
          return False
  
      # undefined test
      if undefined and Language('und') in video.subtitle_languages:
          logger.debug('Undefined language found')
          return False
  
      return True
docs: Perform some checks on the `video`.
  
      All the checks are optional. Return `False` if any of this check fails:
  
          * `languages` already exist in `video`'s :attr:`~subliminal.video.Video.subtitle_languages`.
          * `video` is older than `age`.
          * `video` has an `undefined` language in :attr:`~subliminal.video.Video.subtitle_languages`.
  
      :param video: video to check.
      :type video: :class:`~subliminal.video.Video`
      :param languages: desired languages.
      :type languages: set of :class:`~babelfish.language.Language`
      :param datetime.timedelta age: maximum age of the video.
      :param bool undefined: fail on existing undefined language.
      :return: `True` if the video passes the checks, `False` otherwise.
      :rtype: bool