human
Complete the below
def emails_with_users_and_watches(subject, text_template, html_template, context_vars, users_and_watches, from_email=settings.TIDINGS_FROM_ADDRESS, default_locale=settings.WIKI_DEFAULT_LANGUAGE, **extra_kwargs):

    ''''Return iterable of EmailMessages with user and watch values substituted.
    A convenience function for generating emails by repeatedly
    rendering a Django template with the given ``context_vars`` plus a
    ``user`` and ``watches`` key for each pair in
    ``users_and_watches``
    .. Note::
    This is a locale-aware re-write of the same function in django-tidings.
    It\'s kind of goofy--I ain\'t gonna lie.
    :arg subject: lazy gettext subject string
    :arg text_template: path to text template file
    :arg html_template: path to html template file
    :arg context_vars: a map which becomes the Context passed in to the
    template and the subject string
    :arg from_email: the from email address
    :arg default_local: the local to default to if not user.profile.locale
    :arg extra_kwargs: additional kwargs to pass into EmailMessage constructor
    :returns: generator of EmailMessage objects'
    '''
assistant
#Here is the Python program you requested.
    @safe_translation
    def _make_mail(locale, user, watch):
        context_vars['user'] = user
        context_vars['watch'] = watch[0]
        context_vars['watches'] = watch
        mail = make_mail(subject.format(**context_vars), text_template, html_template, context_vars, from_email, user.email, **extra_kwargs)
        return mail
    for (u, w) in users_and_watches:
        if hasattr(u, 'profile'):
            locale = u.profile.locale
        else:
            locale = default_locale
        (yield _make_mail(locale, u, w))