\
    Returns an iterable of lowercased words from the provided text.
    
    `content`
        A text.
    `filter`
        Indicates if stop words and garbage like "xxxxxx" should be removed from
        the word list.
    `predicate`
        An alternative word filter. If it is ``None`` "xxxx", "---",
        default stop words, and words which have no min. length of 3 are filtered
        (iff ``filter`` is set to ``True``).
    
    >>> list(lowercased_words('Hello and goodbye ------ '))
    ['hello', 'goodbye']
    >>> list(lowercased_words('Hello, and goodbye ------ Subject xxxxxxxxx XXXXXXXXXXXX here'))
    ['hello', 'goodbye', 'subject']
    >>> list(lowercased_words('Hello, and goodbye.How are you?'))
    ['hello', 'goodbye']

def lowercased_words(content, filter=True, predicate=None):
    """\
    Returns an iterable of lowercased words from the provided text.
    
    `content`
        A text.
    `filter`
        Indicates if stop words and garbage like "xxxxxx" should be removed from
        the word list.
    `predicate`
        An alternative word filter. If it is ``None`` "xxxx", "---",
        default stop words, and words which have no min. length of 3 are filtered
        (iff ``filter`` is set to ``True``).
    
    >>> list(lowercased_words('Hello and goodbye ------ '))
    ['hello', 'goodbye']
    >>> list(lowercased_words('Hello, and goodbye ------ Subject xxxxxxxxx XXXXXXXXXXXX here'))
    ['hello', 'goodbye', 'subject']
    >>> list(lowercased_words('Hello, and goodbye.How are you?'))
    ['hello', 'goodbye']
    """
    return (w.lower() for w in words(content, filter, predicate))