def extract_HBS_learning_curves(runs):
    """
    function to get the hyperband learning curves

    This is an example function showing the interface to use the
    HB_result.get_learning_curves method.

    Parameters
    ----------

    runs: list of HB_result.run objects
        the performed runs for an unspecified config

    Returns
    -------

    list of learning curves: list of lists of tuples
        An individual learning curve is a list of (t, x_t) tuples.
        This function must return a list of these. One could think
        of cases where one could extract multiple learning curves
        from these runs, e.g. if each run is an independent training
        run of a neural network on the data.

    """
    sr = sorted(runs, key=lambda r: r.budget)
    lc = list(filter(lambda t: not t[1] is None, [(r.budget, r.loss) for r in sr]))
    return [
        lc,
    ]