<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def run_serial(target, jobs, n=1, **kwargs):
 """ Evaluate the given function with each set of arguments, and return a list of results. This function does in series. Parameters target : function A function to be evaluated. The function must accepts three arguments, which are a list of arguments given as `jobs`, a job and task id (int). jobs : list A list of arguments passed to the function. n : int, optional A number of tasks. Repeat the evaluation `n` times for each job. 1 for default. Returns ------- results : list A list of results. Each element is a list containing `n` results. Examples -------- [['spam'], ['hamham'], ['eggseggseggs']] [['1 spam', '2 spam'], ['1 hamham', '2 hamham'], ['1 eggseggseggs', '2 eggseggseggs']] [[127152315, 2028054913, 253611282]] See Also -------- ecell4.extra.ensemble.run_serial ecell4.extra.ensemble.run_sge ecell4.extra.ensemble.run_slurm ecell4.extra.ensemble.run_multiprocessing ecell4.extra.ensemble.run_azure """

    return [[target(copy.copy(job), i + 1, j + 1) for j in range(n)] for i, job in enumerate(jobs)]