human
Solve the following python programming problem given the following code:
@register.filter
def widont_html(value):
assistant
#Here is the Python code you requested.

    """Adds an HTML non-breaking space between the final two words at the end of
    (and in sentences just outside of) block level tags to avoid "widowed"
    words.
    Examples:
    >>> print(widont_html(\<h2>Here is a simple  example  </h2> <p>Single</p>\))
    <h2>Here is a simple&nbsp;example  </h2> <p>Single</p>
    >>> print(widont_html(\<p>test me<br /> out</p><h2>Ok?</h2>Not in a p<p title="test me">and this</p>\))
    <p>test&nbsp;me<br /> out</p><h2>Ok?</h2>Not in a&nbsp;p<p title="test me">and&nbsp;this</p>
    >>> print(widont_html(\leading text  <p>test me out</p>  trailing text\))
    leading&nbsp;text  <p>test me&nbsp;out</p>  trailing&nbsp;text
    """
    def replace(matchobj):
        return force_text(('%s&nbsp;%s%s' % matchobj.groups()))
    return re_widont_html.sub(replace, force_text(value))