+ // NOTE: DO NOT USE align.setSequenceAt() here - it will NOT work\r
+ for (int i = 0; i < len; i++)\r
+ {\r
+ //SequenceI tmp = seqs[i];\r
+ align.getSequences().setElementAt(seqs[nSeq - i - 1], i);\r
+ align.getSequences().setElementAt(seqs[i], nSeq - i - 1);\r
+ }\r
+ }\r
+\r
+ /**\r
+ * Sets the Alignment object with the given sequences\r
+ *\r
+ * @param align Alignment object to be updated\r
+ * @param tmp sequences as a vector\r
+ */\r
+ private static void setOrder(AlignmentI align, Vector tmp)\r
+ {\r
+ setOrder(align, vectorSubsetToArray(tmp, align.getSequences()));\r
+ }\r
+\r
+ /**\r
+ * Sets the Alignment object with the given sequences\r
+ *\r
+ * @param align DOCUMENT ME!\r
+ * @param seqs sequences as an array\r
+ */\r
+ public static void setOrder(AlignmentI align, SequenceI[] seqs)\r
+ {\r
+ // NOTE: DO NOT USE align.setSequenceAt() here - it will NOT work\r
+ Vector algn = align.getSequences();\r
+ Vector tmp = new Vector();\r
+\r
+ for (int i = 0; i < seqs.length; i++)\r
+ {\r
+ if (algn.contains(seqs[i]))\r
+ {\r
+ tmp.addElement(seqs[i]);\r
+ }\r