Make getCopyWithoutTandemRepeats() function
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/BasicGraphCleanVertex.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/BasicGraphCleanVertex.java
index de60f19..104c290 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/BasicGraphCleanVertex.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/BasicGraphCleanVertex.java
@@ -80,10 +80,10 @@
     }
     
     //TODO make it correct
-    public byte getHeadFlag(){
-//        return (byte)(getVertexValue().getState() & State.VERTEX_MASK);
-        return (byte)(getVertexValue().getState() & State.IS_HEAD);
-    }
+//    public byte getHeadFlag(){
+////        return (byte)(getVertexValue().getState() & State.VERTEX_MASK);
+//        return (byte)(getVertexValue().getState() & State.IS_HEAD);
+//    }
     
     public boolean isHeadNode(){
         byte state = (byte)(getVertexValue().getState() & State.VERTEX_MASK);
@@ -399,7 +399,6 @@
      */
     public void startSendMsg() {
         if(isTandemRepeat()){
-        	//TODO make a function
         	getCopyWithoutTandemRepeats(getVertexValue());
             outFlag = 0;
             outFlag |= MessageFlag.IS_HEAD;
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P1ForPathMergeVertex.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P1ForPathMergeVertex.java
index e7340d9..4bc92c2 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P1ForPathMergeVertex.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P1ForPathMergeVertex.java
@@ -41,8 +41,6 @@
             destVertexId = new VKmerBytesWritable();
         inFlag = 0;
         outFlag = 0;
-        headFlag = getHeadFlag();
-        headMergeDir = getHeadMergeDir();
         if(repeatKmer == null)
             repeatKmer = new VKmerBytesWritable();
         tmpValue.reset();
@@ -55,7 +53,6 @@
         }
         if(tmpKmer == null)
             tmpKmer = new VKmerBytesWritable();
-        headMergeDir = getHeadMergeDir();
         if(reverseKmer == null)
             reverseKmer = new VKmerBytesWritable();
         if(kmerList == null)
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P2ForPathMergeVertex.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P2ForPathMergeVertex.java
index d99d0f4..dc6cadc 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P2ForPathMergeVertex.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P2ForPathMergeVertex.java
@@ -45,7 +45,6 @@
         if (maxIteration < 0)
             maxIteration = Integer.parseInt(getContext().getConfiguration().get(GenomixJobConf.GRAPH_CLEAN_MAX_ITERATIONS));
         GenomixJobConf.setGlobalStaticConstants(getContext().getConfiguration());
-        headFlag = (byte)(getVertexValue().getState() & State.IS_HEAD);
         selfFlag = (byte)(getVertexValue().getState() & State.VERTEX_MASK);
         outFlag = 0;
         if(incomingMsg == null)
@@ -72,7 +71,6 @@
             destVertexId = new VKmerBytesWritable();
         if(tmpKmer == null)
             tmpKmer = new VKmerBytesWritable();
-        headMergeDir = getHeadMergeDir();
         if(repeatKmer == null)
             repeatKmer = new VKmerBytesWritable();
         tmpValue.reset();
@@ -430,7 +428,7 @@
             incomingMsg = msgIterator.next();
             if(isHaltNode())
                 voteToHalt();
-            else if(getHeadFlag() != MessageFlag.IS_HEAD && !isTandemRepeat()){
+            else if(isHeadNode() && !isTandemRepeat()){
                 if(isValidPath()){
                     setHeadMergeDir();
                     //set deleteKmer and deleteDir
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P4ForPathMergeVertex.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P4ForPathMergeVertex.java
index 2b9eda9..c0367fc 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P4ForPathMergeVertex.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P4ForPathMergeVertex.java
@@ -120,7 +120,6 @@
     @Override
     public void compute(Iterator<PathMergeMessageWritable> msgIterator) {
         initVertex();
-
         if (getSuperstep() == 1)
             startSendMsg();
         else if (getSuperstep() == 2)