static int runPara(int ratio,int ctr1){
		TC.lectureDansFichier("paris_54000.txt");
		TC.ecritureDansNouveauFichier("out.txt");
		TC.println(8);
		graph = new Graph();
		juncs = graph.juncs;
		streets = graph.streets;
		rnd=new Random(System.currentTimeMillis());
		readData();
		int length = 0;// total length
		int i;
		int[] positionsArr = new int[C];
		int[] timeLeftArr = new int[C];
		int[] nbptsArr = new int[C];
		boolean[] stopped = new boolean[C];
		int nbRunning = C;
		String[] cmds = new String[C];
		for (i = 0; i < C; i++) {
			cmds[i] += S + "\n";
			nbptsArr[i] = 1;
			positionsArr[i] = S;
			timeLeftArr[i] = T;
			stopped[i] = false;
		}// end init

		while (nbRunning > 0) {
			for (i = 0; i < C; i++) {
				if (stopped[i]==false) {// if car-i running
					int j = positionsArr[i];
					juncs[positionsArr[i]].visitedTime++;
					int[] nextStep = findNext(j, timeLeftArr[i], ratio,i>6,nbptsArr[i],ctr1,i);// make
																	// decision

					positionsArr[i] = nextStep[0];// go to the next junc
					if (positionsArr[i] == -1) {
						nbRunning--;
						stopped[i] = true;
//						System.out.println(nbRunning);
//						System.out.println("time for car "+i+": "+timeLeftArr[i]);
					} else {
						
						int nextst = nextStep[2];// index of next street
						streets[nextst].visited++;// mark as visited!!
						timeLeftArr[i] -= streets[nextst].cost;
						length += nextStep[1];

						cmds[i] += (positionsArr[i] + "\n");
						nbptsArr[i]++;
					}
					

				}
			}// for
		}// end while
		for(i=0;i<C;i++){
			TC.println(nbptsArr[i]);
			TC.print(cmds[i]);
		}
		return length;
}