<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:

def Nu_horizontal_cylinder(Pr, Gr, Method=None, AvailableMethods=False):
    r'''This function handles choosing which horizontal cylinder free convection
    correlation is used. Generally this is used by a helper class, but can be
    used directly. Will automatically select the correlation to use if none is
    provided; returns None if insufficient information is provided.

    Prefered functions are 'Morgan' when discontinuous results are acceptable
    and 'Churchill-Chu' otherwise.

    Parameters
    ----------
    Pr : float
        Prandtl number [-]
    Gr : float
        Grashof number [-]

    Returns
    -------
    Nu : float
        Nusselt number, [-]
    methods : list, only returned if AvailableMethods == True
        List of methods which can be used to calculate Nu with the given inputs

    Other Parameters
    ----------------
    Method : string, optional
        A string of the function name to use, as in the dictionary
        horizontal_cylinder_correlations
    AvailableMethods : bool, optional
        If True, function will consider which methods which can be used to
        calculate Nu with the given inputs

    Examples
    --------
    >>> Nu_horizontal_cylinder(0.72, 1E7)
    24.864192615468973
    '''
    def list_methods():
        methods = []
        for key, values in horizontal_cylinder_correlations.items():
                methods.append(key)
        if 'Morgan' in methods:
            methods.remove('Morgan')
            methods.insert(0, 'Morgan')
        return methods

    if AvailableMethods:
        return list_methods()
    if not Method:
        Method = list_methods()[0]

    if Method in horizontal_cylinder_correlations:
        return horizontal_cylinder_correlations[Method](Pr=Pr, Gr=Gr)
    else:
        raise Exception("Correlation name not recognized; see the "
                        "documentation for the available options.")