private int getIssueCycle2(int[][] schedule, int instructionNumber) {
		FunctionType function = executed.get(instructionNumber).getFunction();
		int cycle = schedule[instructionNumber - 1][0] + 1;
		
		if (function.ordinal() >= configuration.length - 1)
			return cycle;
		
		int minCycle = schedule[instructionNumber - 1][3];
		int stations = 0;
		for (int j = instructionNumber - 1; j > -1; j--) {
			if (function == executed.get(j).getFunction() && cycle >= schedule[j][0] && cycle < schedule[j][3]) {
				stations++;
				if (minCycle > schedule[j][3]) {
					minCycle = schedule[j][3];
				}
			}
		}
		int allStations = configuration[function.ordinal() + 1][0] * configuration[function.ordinal() + 1][1];
		return (stations >= allStations)? minCycle : cycle;
	}