def cp_f10(time, t_pad: float, t_ramp: float, t_hold: float,
            t_cp_delay: float, idle_f10_cp: float, hold_f10_cp: float):
     return piecewise_linear(time, [
         t_pad + t_cp_delay, t_pad + t_cp_delay + t_ramp,
         t_pad - t_cp_delay + t_ramp + t_hold,
         t_pad - t_cp_delay + 2 * t_ramp + t_hold
     ], [idle_f10_cp, hold_f10_cp, hold_f10_cp, idle_f10_cp])
 def q1_f10(time, t_pad: float, t_ramp: float, t_hold: float,
            idle_f10_1: float, hold_f10_1: float):
     return piecewise_linear(time, [
         t_pad, t_pad + t_ramp, t_pad + t_ramp + t_hold,
         t_pad + 2 * t_ramp + t_hold
     ], [idle_f10_1, idle_f10_1, idle_f10_1, idle_f10_1])