def do( self, params ):
N = self.repetitions()<EOL>e = self.experiment()<EOL>results = []<EOL>for i in range(N):<EOL><INDENT>res = e.run()<EOL>if not isinstance(res, list):<EOL><INDENT>res = [ res ]<EOL><DEDENT>for r in res:<EOL><INDENT>r[Experiment.METADATA][self.I] = i <EOL>r[Experiment.METADATA][self.REPETITIONS] = N<EOL><DEDENT>results.extend(res)<EOL><DEDENT>return results<EOL>
Perform the number of repetitions we want. The results returned
        will be a list of the results dicts generated by the repeated experiments.
        The metedata for each experiment will include an entry
        :attr:`RepeatedExperiment.REPETITIONS` for the number of
        repetitions that occurred (which will be the length of this list) and
        an entry :attr:`RepeatedExperiment.I` for the index of the result in that
        sequence.

        :param params: the parameters to the experiment
        :returns: a list of result dicts