$g is: >LG_I This $g, >LG_I, has a set. ....We've hit a newline, which is: >LG_I We are in the 'if buffer eq' loop. ..$g is: >LG_I, and $newline is >LG_I Gathering sequence data from sequence >LG_I ....We've hit a newline, which is: >LG_II ......At FINISH, $num is: 73, and $i is: 68 in FINISH, $i is: 68, and $num is 73. They should not be equal $i is: 68, $HoA{>LG_I}[68][0] is: 22325699, $HoA{>LG_I}[68][1] is: 22326343, $position is: 33722650 and length($buffer) is: 1848919 The position of $highest is below that of $position! How did this happen?! substr outside of string at Test3 line 1483, line 508168. ......At FINISH, $num is: 73, and $i is: 69 in FINISH, $i is: 69, and $num is 73. They should not be equal $i is: 69, $HoA{>LG_I}[69][0] is: 27156174, $HoA{>LG_I}[69][1] is: 27156931, $position is: 33722650 and length($buffer) is: 1848919 The position of $highest is below that of $position! How did this happen?! substr outside of string at Test3 line 1483, line 508168. ......At FINISH, $num is: 73, and $i is: 70 in FINISH, $i is: 70, and $num is 73. They should not be equal $i is: 70, $HoA{>LG_I}[70][0] is: 10031764, $HoA{>LG_I}[70][1] is: 10032474, $position is: 33722650 and length($buffer) is: 1848919 The position of $highest is below that of $position! How did this happen?! substr outside of string at Test3 line 1483, line 508168. ......At FINISH, $num is: 73, and $i is: 71 in FINISH, $i is: 71, and $num is 73. They should not be equal $i is: 71, $HoA{>LG_I}[71][0] is: 22783500, $HoA{>LG_I}[71][1] is: 22784101, $position is: 33722650 and length($buffer) is: 1848919 The position of $highest is below that of $position! How did this happen?! substr outside of string at Test3 line 1483, line 508168. ......At FINISH, $num is: 73, and $i is: 72 in FINISH, $i is: 72, and $num is 73. They should not be equal $i is: 72, $HoA{>LG_I}[72][0] is: 28700514, $HoA{>LG_I}[72][1] is: 28701277, $position is: 33722650 and length($buffer) is: 1848919 The position of $highest is below that of $position! How did this happen?! substr outside of string at Test3 line 1483, line 508168. ......At FINISH, $num is: 73, and $i is: 73 in FINISH, $i is: 73, and $num is 73. They should be equal $g is: >LG_II This $g, >LG_II, has a set. ....We've hit a newline, which is: >LG_II ......At FINISH, $num is: 61, and $i is: 4 in FINISH, $i is: 4, and $num is 61. They should not be equal $i is: 4, $HoA{>LG_II}[4][0] is: 2635020, $HoA{>LG_II}[4][1] is: 2635237, $position is: 1822784 and length($buffer) is: 86 The position of $lowest is past the end of the buffer! How did that happen?! substr outside of string at Test3 line 1480, line 534211. ...and so on. it continues all the way up to $i is 61.