<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def qgis_expressions():
 """Retrieve all QGIS Expressions provided by InaSAFE. :return: Dictionary of expression name and the expression itself. :rtype: dict """

    all_expressions = {
        fct[0]: fct[1] for fct in getmembers(generic_expressions)
        if fct[1].__class__.__name__ == 'QgsExpressionFunction'}
    all_expressions.update({
        fct[0]: fct[1] for fct in getmembers(infographic)
        if fct[1].__class__.__name__ == 'QgsExpressionFunction'})
    all_expressions.update({
        fct[0]: fct[1] for fct in getmembers(map_report)
        if fct[1].__class__.__name__ == 'QgsExpressionFunction'})
    all_expressions.update({
        fct[0]: fct[1] for fct in getmembers(html_report)
        if fct[1].__class__.__name__ == 'QgsExpressionFunction'})
    return all_expressions