<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def construct_survival_curves(hazard_rates, timelines):
 """ Given hazard rates, reconstruct the survival curves Parameters hazard_rates: (n,t) array timelines: (t,) the observational times Returns ------- t: survial curves, (n,t) array """

    cumulative_hazards = cumulative_integral(hazard_rates.values, timelines)
    return pd.DataFrame(np.exp(-cumulative_hazards), index=timelines)