add num-iteration
diff --git a/genomix/genomix-pregelix/data/webmap/part-1-out-100000 b/genomix/genomix-pregelix/data/webmap/part-1-out-100000
deleted file mode 100755
index 99d2fac..0000000
--- a/genomix/genomix-pregelix/data/webmap/part-1-out-100000
+++ /dev/null
Binary files differ
diff --git a/genomix/genomix-pregelix/data/webmap/part-1-out-200000 b/genomix/genomix-pregelix/data/webmap/part-1-out-200000
deleted file mode 100755
index 86413de..0000000
--- a/genomix/genomix-pregelix/data/webmap/part-1-out-200000
+++ /dev/null
Binary files differ
diff --git a/genomix/genomix-pregelix/data/webmap/part-1-out-25000 b/genomix/genomix-pregelix/data/webmap/part-1-out-25000
deleted file mode 100755
index 079f915..0000000
--- a/genomix/genomix-pregelix/data/webmap/part-1-out-25000
+++ /dev/null
Binary files differ
diff --git a/genomix/genomix-pregelix/data/webmap/part-1-out-50000 b/genomix/genomix-pregelix/data/webmap/part-1-out-50000
deleted file mode 100755
index d292c19..0000000
--- a/genomix/genomix-pregelix/data/webmap/part-1-out-50000
+++ /dev/null
Binary files differ
diff --git a/genomix/genomix-pregelix/data/webmap/part-1-out-500000 b/genomix/genomix-pregelix/data/webmap/part-1-out-500000
deleted file mode 100755
index 01fdc9e..0000000
--- a/genomix/genomix-pregelix/data/webmap/part-1-out-500000
+++ /dev/null
Binary files differ
diff --git a/genomix/genomix-pregelix/data/webmap/sequenceFileLongMergeTest b/genomix/genomix-pregelix/data/webmap/sequenceFileLongMergeTest
deleted file mode 100755
index ff27c48..0000000
--- a/genomix/genomix-pregelix/data/webmap/sequenceFileLongMergeTest
+++ /dev/null
Binary files differ
diff --git a/genomix/genomix-pregelix/data/webmap/sequenceFileMergeTest b/genomix/genomix-pregelix/data/webmap/sequenceFileMergeTest
deleted file mode 100755
index b50d3f1..0000000
--- a/genomix/genomix-pregelix/data/webmap/sequenceFileMergeTest
+++ /dev/null
Binary files differ
diff --git a/genomix/genomix-pregelix/data/webmap/sequenceShortFileMergeTest b/genomix/genomix-pregelix/data/webmap/sequenceShortFileMergeTest
deleted file mode 100755
index 96f7fc9..0000000
--- a/genomix/genomix-pregelix/data/webmap/sequenceShortFileMergeTest
+++ /dev/null
Binary files differ
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/MergeGraphVertex.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/MergeGraphVertex.java
index 12450b4..0f244dc 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/MergeGraphVertex.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/MergeGraphVertex.java
@@ -2,11 +2,8 @@
 
 import java.util.Iterator;
 
-import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.BytesWritable;
 import org.apache.hadoop.io.NullWritable;
-import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
-import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
 
 import edu.uci.ics.genomix.type.Kmer;
 import edu.uci.ics.genomix.type.KmerUtil;
@@ -50,7 +47,9 @@
 public class MergeGraphVertex extends Vertex<BytesWritable, ValueStateWritable, NullWritable, MessageWritable>{
 	
 	public static final String KMER_SIZE = "MergeGraphVertex.kmerSize";
+	public static final String ITERATIONS = "MergeGraphVertex.iteration";
 	public static int kmerSize = -1;
+	private int maxIteration = -1;
 	
     private byte[] tmpVertexId;
     private byte[] tmpDestVertexId;
@@ -63,7 +62,6 @@
 	 * @throws Exception 
 	 * @throws  
 	 */
-	
 	/**
      *	Load KmerSize
      */
@@ -71,6 +69,8 @@
 	public void compute(Iterator<MessageWritable> msgIterator) {
 		if(kmerSize == -1)
 			kmerSize = getContext().getConfiguration().getInt(KMER_SIZE, 5);
+        if (maxIteration < 0) 
+            maxIteration = getContext().getConfiguration().getInt(ITERATIONS, 100);
 		tmpVertexId = GraphVertexOperation.generateValidDataFromBytesWritable(getVertexId());
 		if (getSuperstep() == 1) {
 			if(GraphVertexOperation.isHeadVertex(getVertexValue().getValue())){ 
@@ -89,8 +89,7 @@
 		}
 		
 		//path node sends message back to head node
-		else if(getSuperstep()%2 == 0){
-			
+		else if(getSuperstep()%2 == 0 && getSuperstep() <= maxIteration){
 			 if(msgIterator.hasNext()){
 				tmpMsg = msgIterator.next();
 					
@@ -147,7 +146,7 @@
 			}
 		}
 		//head node sends message to path node
-		else if(getSuperstep()%2 == 1){
+		else if(getSuperstep()%2 == 1 && getSuperstep() <= maxIteration){
 			while (msgIterator.hasNext()){
 				tmpMsg = msgIterator.next();
 				if(!tmpMsg.isRear()){
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/client/Client.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/client/Client.java
index ab0fb57..2d70fdf 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/client/Client.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/client/Client.java
@@ -36,6 +36,9 @@
         
         @Option(name = "-kmer-size", usage = "the size of kmer", required = false)
         public int sizeKmer;
+        
+        @Option(name = "-num-iteration", usage = "max number of iterations, for pagerank job only", required = false)
+        public long numIteration = -1;
 
         @Option(name = "-runtime-profiling", usage = "whether to do runtime profifling", required = false)
         public String profiling = "false";
@@ -59,6 +62,10 @@
         FileOutputFormat.setOutputPath(job, new Path(options.outputPath));
         job.getConfiguration().setInt(MergeGraphVertex.KMER_SIZE, options.sizeKmer);
         job.getConfiguration().setInt(LogAlgorithmForMergeGraphVertex.KMER_SIZE, options.sizeKmer);
+        if (options.numIteration > 0){
+            job.getConfiguration().setLong(MergeGraphVertex.ITERATIONS, options.numIteration);
+            //job.getConfiguration().setLong(LogAlgorithmForMergeGraphVertex.ITERATIONS, options.numIteration);
+        }
         return options;
     }