<commit_before>package astraiea.test.layer2.generators;

import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import java.util.Random;

import org.apache.commons.math3.util.Pair;

import astraiea.layer2.generators.Generator;
import astraiea.layer2.generators.PairGeneratorOutput;
import astraiea.layer2.generators.artefacts.ArtefactTimeseriesGenerator;
import astraiea.layer2.generators.artefacts.MultipleArtefactOutput;
import astraiea.layer2.generators.timeseries.TimeseriesGeneratorOutput;
import astraiea.util.MersenneTwister;

/**
 * The Example generator using multiple artefacts in which each artefact returns a time series
 * used in the JUnit tests.
 * 
 * @author <NAME>
 *
 */

public class ExampleTimeseriesMultiArtefactGenerator 
implements ArtefactTimeseriesGenerator<PairGeneratorOutput> {

	private double bias;
	private double gap;
	private int duration;
	private int index;
	private int numRepeats;

	/**
	 * 
	 * @param bias with what probability this class should generate higher values
	 * @param gap by how much, on average, the higher values 
	 * generated from this class should be higher than the lower ones
	 * @param duration for how many generations this generator should run for
	 * @param artefactNum 
	 */
	public ExampleTimeseriesMultiArtefactGenerator(double bias, double gap, int numRepeats, int index, int duration){
		this.bias = bias;
		this.gap = gap;
		this.numRepeats = numRepeats;
		this.duration = duration;<commit_msg>Minor efficiency improvements, formatting etc.<commit_after>package astraiea.test.layer2.generators;

import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import java.util.Random;

import org.apache.commons.math3.util.Pair;

import astraiea.layer2.generators.Generator;
import astraiea.layer2.generators.PairGeneratorOutput;
import astraiea.layer2.generators.artefacts.ArtefactTimeseriesGenerator;
import astraiea.layer2.generators.artefacts.MultipleArtefactOutput;
import astraiea.layer2.generators.timeseries.TimeseriesGeneratorOutput;
import astraiea.util.MersenneTwister;

/**
 * The Example generator using multiple artefacts in which each artefact returns a time series
 * used in the JUnit tests.
 * 
 * @author <NAME>
 *
 */

public class ExampleTimeseriesMultiArtefactGenerator 
implements ArtefactTimeseriesGenerator<PairGeneratorOutput> {

	private double bias;
	private double gap;
	private int duration;
	private int index;
	private int numRepeats;

	/**
	 * @param bias with what probability this class should generate higher values
	 * @param gap by how much, on average, the higher values 
	 * generated from this class should be higher than the lower ones
	 * @param duration for how many generations this generator should run for
	 * @param artefactNum 
	 */
	public ExampleTimeseriesMultiArtefactGenerator(double bias, double gap, int numRepeats, int index, int duration){
		this.bias = bias;
		this.gap = gap;
		this.numRepeats = numRepeats;
		this.duration = duration;
{'fraction_non_alphanumeric': 0.0728058510638298, 'fraction_numerical': 0.004654255319148936, 'mean_word_length': 5.242738589211618, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2149503', 'n_tokens_mistral': 902, 'n_tokens_neox': 863, 'n_words': 261}