add AlreadyInEdge test case
diff --git a/genomix/genomix-hadoop/data/webmap/PathMerge_TestSet/AlreadyInEdgeList/reads b/genomix/genomix-hadoop/data/webmap/PathMerge_TestSet/AlreadyInEdgeList/reads
new file mode 100644
index 0000000..aee56c7
--- /dev/null
+++ b/genomix/genomix-hadoop/data/webmap/PathMerge_TestSet/AlreadyInEdgeList/reads
@@ -0,0 +1,2 @@
+1	CAAAT
+2	CAAT
diff --git a/genomix/genomix-pregelix/data/TestSet/PathMerge/AlreadyInEdgeList/bin/part-00000 b/genomix/genomix-pregelix/data/TestSet/PathMerge/AlreadyInEdgeList/bin/part-00000
new file mode 100755
index 0000000..e42fe9d
--- /dev/null
+++ b/genomix/genomix-pregelix/data/TestSet/PathMerge/AlreadyInEdgeList/bin/part-00000
Binary files differ
diff --git a/genomix/genomix-pregelix/data/TestSet/PathMerge/AlreadyInEdgeList/data b/genomix/genomix-pregelix/data/TestSet/PathMerge/AlreadyInEdgeList/data
new file mode 100644
index 0000000..aa2fcb0
--- /dev/null
+++ b/genomix/genomix-pregelix/data/TestSet/PathMerge/AlreadyInEdgeList/data
@@ -0,0 +1,3 @@
+AAA	{[{AAT:[1]}]	[]	[]	[{CAA:[1]}]	{5':[], ~5':[]}		1.0x}
+CAA	{[{AAA:[1]},{AAT:[2]}]	[]	[]	[]	{5':[(1-0_0),(2-0_0)], ~5':[]}		2.0x}
+AAT	{[]	[]	[]	[{AAA:[1]},{CAA:[2]}]	{5':[], ~5':[]}		2.0x}
diff --git a/genomix/genomix-pregelix/data/TestSet/PathMerge/AlreadyInEdgeList/graphviz/result.ps b/genomix/genomix-pregelix/data/TestSet/PathMerge/AlreadyInEdgeList/graphviz/result.ps
new file mode 100644
index 0000000..8342fc1
--- /dev/null
+++ b/genomix/genomix-pregelix/data/TestSet/PathMerge/AlreadyInEdgeList/graphviz/result.ps
@@ -0,0 +1,464 @@
+%!PS-Adobe-3.0
+%%Creator: graphviz version 2.26.3 (20100126.1600)
+%%Title: G
+%%Pages: (atend)
+%%BoundingBox: (atend)
+%%EndComments
+save
+%%BeginProlog
+/DotDict 200 dict def
+DotDict begin
+
+/setupLatin1 {
+mark
+/EncodingVector 256 array def
+ EncodingVector 0
+
+ISOLatin1Encoding 0 255 getinterval putinterval
+EncodingVector 45 /hyphen put
+
+% Set up ISO Latin 1 character encoding
+/starnetISO {
+        dup dup findfont dup length dict begin
+        { 1 index /FID ne { def }{ pop pop } ifelse
+        } forall
+        /Encoding EncodingVector def
+        currentdict end definefont
+} def
+/Times-Roman starnetISO def
+/Times-Italic starnetISO def
+/Times-Bold starnetISO def
+/Times-BoldItalic starnetISO def
+/Helvetica starnetISO def
+/Helvetica-Oblique starnetISO def
+/Helvetica-Bold starnetISO def
+/Helvetica-BoldOblique starnetISO def
+/Courier starnetISO def
+/Courier-Oblique starnetISO def
+/Courier-Bold starnetISO def
+/Courier-BoldOblique starnetISO def
+cleartomark
+} bind def
+
+%%BeginResource: procset graphviz 0 0
+/coord-font-family /Times-Roman def
+/default-font-family /Times-Roman def
+/coordfont coord-font-family findfont 8 scalefont def
+
+/InvScaleFactor 1.0 def
+/set_scale {
+       dup 1 exch div /InvScaleFactor exch def
+       scale
+} bind def
+
+% styles
+/solid { [] 0 setdash } bind def
+/dashed { [9 InvScaleFactor mul dup ] 0 setdash } bind def
+/dotted { [1 InvScaleFactor mul 6 InvScaleFactor mul] 0 setdash } bind def
+/invis {/fill {newpath} def /stroke {newpath} def /show {pop newpath} def} bind def
+/bold { 2 setlinewidth } bind def
+/filled { } bind def
+/unfilled { } bind def
+/rounded { } bind def
+/diagonals { } bind def
+
+% hooks for setting color 
+/nodecolor { sethsbcolor } bind def
+/edgecolor { sethsbcolor } bind def
+/graphcolor { sethsbcolor } bind def
+/nopcolor {pop pop pop} bind def
+
+/beginpage {	% i j npages
+	/npages exch def
+	/j exch def
+	/i exch def
+	/str 10 string def
+	npages 1 gt {
+		gsave
+			coordfont setfont
+			0 0 moveto
+			(\() show i str cvs show (,) show j str cvs show (\)) show
+		grestore
+	} if
+} bind def
+
+/set_font {
+	findfont exch
+	scalefont setfont
+} def
+
+% draw text fitted to its expected width
+/alignedtext {			% width text
+	/text exch def
+	/width exch def
+	gsave
+		width 0 gt {
+			[] 0 setdash
+			text stringwidth pop width exch sub text length div 0 text ashow
+		} if
+	grestore
+} def
+
+/boxprim {				% xcorner ycorner xsize ysize
+		4 2 roll
+		moveto
+		2 copy
+		exch 0 rlineto
+		0 exch rlineto
+		pop neg 0 rlineto
+		closepath
+} bind def
+
+/ellipse_path {
+	/ry exch def
+	/rx exch def
+	/y exch def
+	/x exch def
+	matrix currentmatrix
+	newpath
+	x y translate
+	rx ry scale
+	0 0 1 0 360 arc
+	setmatrix
+} bind def
+
+/endpage { showpage } bind def
+/showpage { } def
+
+/layercolorseq
+	[	% layer color sequence - darkest to lightest
+		[0 0 0]
+		[.2 .8 .8]
+		[.4 .8 .8]
+		[.6 .8 .8]
+		[.8 .8 .8]
+	]
+def
+
+/layerlen layercolorseq length def
+
+/setlayer {/maxlayer exch def /curlayer exch def
+	layercolorseq curlayer 1 sub layerlen mod get
+	aload pop sethsbcolor
+	/nodecolor {nopcolor} def
+	/edgecolor {nopcolor} def
+	/graphcolor {nopcolor} def
+} bind def
+
+/onlayer { curlayer ne {invis} if } def
+
+/onlayers {
+	/myupper exch def
+	/mylower exch def
+	curlayer mylower lt
+	curlayer myupper gt
+	or
+	{invis} if
+} def
+
+/curlayer 0 def
+
+%%EndResource
+%%EndProlog
+%%BeginSetup
+14 default-font-family set_font
+1 setmiterlimit
+% /arrowlength 10 def
+% /arrowwidth 5 def
+
+% make sure pdfmark is harmless for PS-interpreters other than Distiller
+/pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse
+% make '<<' and '>>' safe on PS Level 1 devices
+/languagelevel where {pop languagelevel}{1} ifelse
+2 lt {
+    userdict (<<) cvn ([) cvn load put
+    userdict (>>) cvn ([) cvn load put
+} if
+
+%%EndSetup
+setupLatin1
+%%Page: 1 1
+%%PageBoundingBox: 36 36 390 218
+%%PageOrientation: Portrait
+0 0 1 beginpage
+gsave
+36 36 354 182 boxprim clip newpath
+1 1 set_scale 0 rotate 40 41 translate
+% AAA
+gsave
+1 setlinewidth
+0 0 0 nodecolor
+newpath 0 0 moveto
+0 104 lineto
+56 104 lineto
+56 0 lineto
+closepath stroke
+0 0 0 nodecolor
+14 /Times-Roman set_font
+12.5 87.4 moveto 31 (AAA) alignedtext
+1 setlinewidth
+0 0 0 nodecolor
+newpath 0 78 moveto
+56 78 lineto
+stroke
+0 0 0 nodecolor
+14 /Times-Roman set_font
+14 61.4 moveto 28 (5':[]) alignedtext
+1 setlinewidth
+0 0 0 nodecolor
+newpath 0 52 moveto
+56 52 lineto
+stroke
+0 0 0 nodecolor
+14 /Times-Roman set_font
+8 35.4 moveto 40 (~5':[]) alignedtext
+1 setlinewidth
+0 0 0 nodecolor
+newpath 0 26 moveto
+56 26 lineto
+stroke
+0 0 0 nodecolor
+14 /Times-Roman set_font
+16.5 9.4 moveto 23 (1.0) alignedtext
+grestore
+% AAT
+gsave
+1 setlinewidth
+0 0 0 nodecolor
+newpath 140 70 moveto
+140 174 lineto
+196 174 lineto
+196 70 lineto
+closepath stroke
+0 0 0 nodecolor
+14 /Times-Roman set_font
+154 157.4 moveto 28 (AAT) alignedtext
+1 setlinewidth
+0 0 0 nodecolor
+newpath 140 148 moveto
+196 148 lineto
+stroke
+0 0 0 nodecolor
+14 /Times-Roman set_font
+154 131.4 moveto 28 (5':[]) alignedtext
+1 setlinewidth
+0 0 0 nodecolor
+newpath 140 122 moveto
+196 122 lineto
+stroke
+0 0 0 nodecolor
+14 /Times-Roman set_font
+148 105.4 moveto 40 (~5':[]) alignedtext
+1 setlinewidth
+0 0 0 nodecolor
+newpath 140 96 moveto
+196 96 lineto
+stroke
+0 0 0 nodecolor
+14 /Times-Roman set_font
+156.5 79.4 moveto 23 (2.0) alignedtext
+grestore
+% AAA->AAT
+gsave
+1 setlinewidth
+0 0 0 edgecolor
+newpath 56.09 79.53 moveto
+61.72 84.13 67.82 88.52 74 92 curveto
+91.22 101.69 112.01 108.74 129.66 113.56 curveto
+stroke
+0 0 0 edgecolor
+newpath 129.07 117.02 moveto
+139.63 116.14 lineto
+130.83 110.24 lineto
+closepath fill
+1 setlinewidth
+solid
+0 0 0 edgecolor
+newpath 129.07 117.02 moveto
+139.63 116.14 lineto
+130.83 110.24 lineto
+closepath stroke
+0 0 0 edgecolor
+14 /Times-Roman set_font
+76 116.4 moveto 44 (FF: [1]) alignedtext
+grestore
+% CAA
+gsave
+0 0 0.75294 nodecolor
+newpath 280 2 moveto
+280 106 lineto
+346 106 lineto
+346 2 lineto
+closepath fill
+1 setlinewidth
+filled
+0 0 0 nodecolor
+newpath 280 2 moveto
+280 106 lineto
+346 106 lineto
+346 2 lineto
+closepath stroke
+0 0 0 nodecolor
+14 /Times-Roman set_font
+298 89.4 moveto 30 (CAA) alignedtext
+1 setlinewidth
+filled
+0 0 0 nodecolor
+newpath 280 80 moveto
+346 80 lineto
+stroke
+0 0 0 nodecolor
+14 /Times-Roman set_font
+288 63.4 moveto 50 (5':[2,1]) alignedtext
+1 setlinewidth
+filled
+0 0 0 nodecolor
+newpath 280 54 moveto
+346 54 lineto
+stroke
+0 0 0 nodecolor
+14 /Times-Roman set_font
+293 37.4 moveto 40 (~5':[]) alignedtext
+1 setlinewidth
+filled
+0 0 0 nodecolor
+newpath 280 28 moveto
+346 28 lineto
+stroke
+0 0 0 nodecolor
+14 /Times-Roman set_font
+301.5 11.4 moveto 23 (2.0) alignedtext
+grestore
+% AAA->CAA
+gsave
+1 setlinewidth
+0 1 1 edgecolor
+newpath 56.04 49.12 moveto
+78.67 46.95 111.35 44.15 140 43 curveto
+164.87 42 171.14 41.83 196 43 curveto
+220.45 44.15 247.69 46.64 269.73 48.96 curveto
+stroke
+0 1 1 edgecolor
+newpath 269.46 52.45 moveto
+279.77 50.04 lineto
+270.21 45.49 lineto
+closepath fill
+1 setlinewidth
+solid
+0 1 1 edgecolor
+newpath 269.46 52.45 moveto
+279.77 50.04 lineto
+270.21 45.49 lineto
+closepath stroke
+0 0 0 edgecolor
+14 /Times-Roman set_font
+144 48.4 moveto 48 (RR: [1]) alignedtext
+grestore
+% AAT->AAA
+gsave
+1 setlinewidth
+0 1 1 edgecolor
+newpath 139.97 84.05 moveto
+134.54 78.66 128.49 73.7 122 70 curveto
+105.22 60.44 84.31 55.85 66.47 53.69 curveto
+stroke
+0 1 1 edgecolor
+newpath 66.68 50.19 moveto
+56.38 52.68 lineto
+65.98 57.16 lineto
+closepath fill
+1 setlinewidth
+solid
+0 1 1 edgecolor
+newpath 66.68 50.19 moveto
+56.38 52.68 lineto
+65.98 57.16 lineto
+closepath stroke
+0 0 0 edgecolor
+14 /Times-Roman set_font
+74 75.4 moveto 48 (RR: [1]) alignedtext
+grestore
+% AAT->CAA
+gsave
+1 setlinewidth
+0 1 1 edgecolor
+newpath 196.29 117.39 moveto
+215.57 113.49 241.27 106.78 262 96 curveto
+265.24 94.31 268.47 92.4 271.63 90.33 curveto
+stroke
+0 1 1 edgecolor
+newpath 273.66 93.19 moveto
+279.83 84.58 lineto
+269.63 87.46 lineto
+closepath fill
+1 setlinewidth
+solid
+0 1 1 edgecolor
+newpath 273.66 93.19 moveto
+279.83 84.58 lineto
+269.63 87.46 lineto
+closepath stroke
+0 0 0 edgecolor
+14 /Times-Roman set_font
+214 118.4 moveto 48 (RR: [2]) alignedtext
+grestore
+% CAA->AAA
+gsave
+1 setlinewidth
+0 0 0 edgecolor
+newpath 279.76 41.61 moveto
+256.64 33.67 224.9 24.11 196 20 curveto
+171.36 16.49 164.65 16.55 140 20 curveto
+114.76 23.54 87.22 31.35 65.77 38.37 curveto
+stroke
+0 0 0 edgecolor
+newpath 64.44 35.12 moveto
+56.07 41.62 lineto
+66.66 41.76 lineto
+closepath fill
+1 setlinewidth
+solid
+0 0 0 edgecolor
+newpath 64.44 35.12 moveto
+56.07 41.62 lineto
+66.66 41.76 lineto
+closepath stroke
+0 0 0 edgecolor
+14 /Times-Roman set_font
+146 25.4 moveto 44 (FF: [1]) alignedtext
+grestore
+% CAA->AAT
+gsave
+1 setlinewidth
+0 0 0 edgecolor
+newpath 279.78 57.63 moveto
+259.77 60.86 234.33 66.88 214 78 curveto
+210.55 79.89 207.18 82.1 203.92 84.5 curveto
+stroke
+0 0 0 edgecolor
+newpath 201.67 81.82 moveto
+196.08 90.83 lineto
+206.06 87.27 lineto
+closepath fill
+1 setlinewidth
+solid
+0 0 0 edgecolor
+newpath 201.67 81.82 moveto
+196.08 90.83 lineto
+206.06 87.27 lineto
+closepath stroke
+0 0 0 edgecolor
+14 /Times-Roman set_font
+216 83.4 moveto 44 (FF: [2]) alignedtext
+grestore
+endpage
+showpage
+grestore
+%%PageTrailer
+%%EndPage: 1
+%%Trailer
+%%Pages: 1
+%%BoundingBox: 36 36 390 218
+end
+restore
+%%EOF