Clover icon

jalviewX

  1. Project Clover database Wed Oct 31 2018 15:13:58 GMT
  2. Package jalview.schemes

File ResiduePropertiesTest.java

 

Code metrics

4
1,459
9
1
1,628
1,520
11
0.01
162.11
9
1.22

Classes

Class Line # Actions
ResiduePropertiesTest 35 1,459 11 0
1.0100%
 

Contributing tests

This file is covered by 7 tests. .

Source view

1    /*
2    * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
3    * Copyright (C) $$Year-Rel$$ The Jalview Authors
4    *
5    * This file is part of Jalview.
6    *
7    * Jalview is free software: you can redistribute it and/or
8    * modify it under the terms of the GNU General Public License
9    * as published by the Free Software Foundation, either version 3
10    * of the License, or (at your option) any later version.
11    *
12    * Jalview is distributed in the hope that it will be useful, but
13    * WITHOUT ANY WARRANTY; without even the implied warranty
14    * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15    * PURPOSE. See the GNU General Public License for more details.
16    *
17    * You should have received a copy of the GNU General Public License
18    * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
19    * The Jalview Authors are detailed in the 'AUTHORS' file.
20    */
21    package jalview.schemes;
22   
23    import static org.testng.AssertJUnit.assertEquals;
24    import static org.testng.AssertJUnit.assertNull;
25   
26    import jalview.gui.JvOptionPane;
27   
28    import java.util.Collections;
29    import java.util.List;
30    import java.util.Map;
31   
32    import org.testng.annotations.BeforeClass;
33    import org.testng.annotations.Test;
34   
 
35    public class ResiduePropertiesTest
36    {
37   
 
38  1 toggle @BeforeClass(alwaysRun = true)
39    public void setUpJvOptionPane()
40    {
41  1 JvOptionPane.setInteractiveMode(false);
42  1 JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION);
43    }
44   
45    /**
46    * Test 'standard' codon translations (no ambiguity codes)
47    */
 
48  1 toggle @Test(groups = { "Functional" })
49    public void testCodonTranslate()
50    {
51    // standard translation table order column 1/2/3/4
52  1 assertEquals("F", ResidueProperties.codonTranslate("TTT"));
53  1 assertEquals("F", ResidueProperties.codonTranslate("TTC"));
54  1 assertEquals("L", ResidueProperties.codonTranslate("TTA"));
55  1 assertEquals("L", ResidueProperties.codonTranslate("TTG"));
56  1 assertEquals("L", ResidueProperties.codonTranslate("CTT"));
57  1 assertEquals("L", ResidueProperties.codonTranslate("CTC"));
58  1 assertEquals("L", ResidueProperties.codonTranslate("CTA"));
59  1 assertEquals("L", ResidueProperties.codonTranslate("CTG"));
60  1 assertEquals("I", ResidueProperties.codonTranslate("ATT"));
61  1 assertEquals("I", ResidueProperties.codonTranslate("ATC"));
62  1 assertEquals("I", ResidueProperties.codonTranslate("ATA"));
63  1 assertEquals("M", ResidueProperties.codonTranslate("ATG"));
64  1 assertEquals("V", ResidueProperties.codonTranslate("GTT"));
65  1 assertEquals("V", ResidueProperties.codonTranslate("GTC"));
66  1 assertEquals("V", ResidueProperties.codonTranslate("GTA"));
67  1 assertEquals("V", ResidueProperties.codonTranslate("GTG"));
68  1 assertEquals("S", ResidueProperties.codonTranslate("TCT"));
69  1 assertEquals("S", ResidueProperties.codonTranslate("TCC"));
70  1 assertEquals("S", ResidueProperties.codonTranslate("TCA"));
71  1 assertEquals("S", ResidueProperties.codonTranslate("TCG"));
72  1 assertEquals("P", ResidueProperties.codonTranslate("CCT"));
73  1 assertEquals("P", ResidueProperties.codonTranslate("CCC"));
74  1 assertEquals("P", ResidueProperties.codonTranslate("CCA"));
75  1 assertEquals("P", ResidueProperties.codonTranslate("CCG"));
76  1 assertEquals("T", ResidueProperties.codonTranslate("ACT"));
77  1 assertEquals("T", ResidueProperties.codonTranslate("ACC"));
78  1 assertEquals("T", ResidueProperties.codonTranslate("ACA"));
79  1 assertEquals("T", ResidueProperties.codonTranslate("ACG"));
80  1 assertEquals("A", ResidueProperties.codonTranslate("GCT"));
81  1 assertEquals("A", ResidueProperties.codonTranslate("GCC"));
82  1 assertEquals("A", ResidueProperties.codonTranslate("GCA"));
83  1 assertEquals("A", ResidueProperties.codonTranslate("GCG"));
84  1 assertEquals("Y", ResidueProperties.codonTranslate("TAT"));
85  1 assertEquals("Y", ResidueProperties.codonTranslate("TAC"));
86  1 assertEquals("STOP", ResidueProperties.codonTranslate("TAA"));
87  1 assertEquals("STOP", ResidueProperties.codonTranslate("TAG"));
88  1 assertEquals("H", ResidueProperties.codonTranslate("CAT"));
89  1 assertEquals("H", ResidueProperties.codonTranslate("CAC"));
90  1 assertEquals("Q", ResidueProperties.codonTranslate("CAA"));
91  1 assertEquals("Q", ResidueProperties.codonTranslate("CAG"));
92  1 assertEquals("N", ResidueProperties.codonTranslate("AAT"));
93  1 assertEquals("N", ResidueProperties.codonTranslate("AAC"));
94  1 assertEquals("K", ResidueProperties.codonTranslate("AAA"));
95  1 assertEquals("K", ResidueProperties.codonTranslate("AAG"));
96  1 assertEquals("D", ResidueProperties.codonTranslate("GAT"));
97  1 assertEquals("D", ResidueProperties.codonTranslate("GAC"));
98  1 assertEquals("E", ResidueProperties.codonTranslate("GAA"));
99  1 assertEquals("E", ResidueProperties.codonTranslate("GAG"));
100  1 assertEquals("C", ResidueProperties.codonTranslate("TGT"));
101  1 assertEquals("C", ResidueProperties.codonTranslate("TGC"));
102  1 assertEquals("STOP", ResidueProperties.codonTranslate("TGA"));
103  1 assertEquals("W", ResidueProperties.codonTranslate("TGG"));
104  1 assertEquals("R", ResidueProperties.codonTranslate("CGT"));
105  1 assertEquals("R", ResidueProperties.codonTranslate("CGC"));
106  1 assertEquals("R", ResidueProperties.codonTranslate("CGA"));
107  1 assertEquals("R", ResidueProperties.codonTranslate("CGG"));
108  1 assertEquals("S", ResidueProperties.codonTranslate("AGT"));
109  1 assertEquals("S", ResidueProperties.codonTranslate("AGC"));
110  1 assertEquals("R", ResidueProperties.codonTranslate("AGA"));
111  1 assertEquals("R", ResidueProperties.codonTranslate("AGG"));
112  1 assertEquals("G", ResidueProperties.codonTranslate("GGT"));
113  1 assertEquals("G", ResidueProperties.codonTranslate("GGC"));
114  1 assertEquals("G", ResidueProperties.codonTranslate("GGA"));
115  1 assertEquals("G", ResidueProperties.codonTranslate("GGG"));
116    }
117   
118    /**
119    * Test a sample of codon translations involving ambiguity codes. Should
120    * return a protein value where the ambiguity does not affect the translation.
121    */
 
122  1 toggle @Test(groups = { "Functional" })
123    public void testCodonTranslate_ambiguityCodes()
124    {
125    // Y is C or T
126  1 assertEquals("C", ResidueProperties.codonTranslate("TGY"));
127    // Phenylalanine first base variation
128  1 assertEquals("L", ResidueProperties.codonTranslate("YTA"));
129   
130    // W is A or T
131  1 assertEquals("L", ResidueProperties.codonTranslate("CTW"));
132  1 assertNull(ResidueProperties.codonTranslate("TTW"));
133   
134    // S is G or C
135  1 assertEquals("G", ResidueProperties.codonTranslate("GGS"));
136  1 assertNull(ResidueProperties.codonTranslate("ATS"));
137   
138    // K is T or G
139  1 assertEquals("S", ResidueProperties.codonTranslate("TCK"));
140  1 assertNull(ResidueProperties.codonTranslate("ATK"));
141   
142    // M is C or A
143  1 assertEquals("T", ResidueProperties.codonTranslate("ACM"));
144    // Arginine first base variation
145  1 assertEquals("R", ResidueProperties.codonTranslate("MGA"));
146  1 assertEquals("R", ResidueProperties.codonTranslate("MGG"));
147  1 assertNull(ResidueProperties.codonTranslate("TAM"));
148   
149    // D is A, G or T
150  1 assertEquals("P", ResidueProperties.codonTranslate("CCD"));
151  1 assertNull(ResidueProperties.codonTranslate("AAD"));
152   
153    // V is A, C or G
154  1 assertEquals("V", ResidueProperties.codonTranslate("GTV"));
155  1 assertNull(ResidueProperties.codonTranslate("TTV"));
156   
157    // H is A, C or T
158  1 assertEquals("A", ResidueProperties.codonTranslate("GCH"));
159  1 assertEquals("I", ResidueProperties.codonTranslate("ATH"));
160  1 assertNull(ResidueProperties.codonTranslate("AGH"));
161   
162    // B is C, G or T
163  1 assertEquals("P", ResidueProperties.codonTranslate("CCB"));
164  1 assertNull(ResidueProperties.codonTranslate("TAB"));
165   
166    // R is A or G
167    // additional tests for JAL-1685 (resolved)
168  1 assertEquals("L", ResidueProperties.codonTranslate("CTR"));
169  1 assertEquals("V", ResidueProperties.codonTranslate("GTR"));
170  1 assertEquals("S", ResidueProperties.codonTranslate("TCR"));
171  1 assertEquals("P", ResidueProperties.codonTranslate("CCR"));
172  1 assertEquals("T", ResidueProperties.codonTranslate("ACR"));
173  1 assertEquals("A", ResidueProperties.codonTranslate("GCR"));
174  1 assertEquals("R", ResidueProperties.codonTranslate("CGR"));
175  1 assertEquals("G", ResidueProperties.codonTranslate("GGR"));
176  1 assertEquals("R", ResidueProperties.codonTranslate("AGR"));
177  1 assertEquals("E", ResidueProperties.codonTranslate("GAR"));
178  1 assertEquals("K", ResidueProperties.codonTranslate("AAR"));
179  1 assertEquals("L", ResidueProperties.codonTranslate("TTR"));
180  1 assertEquals("Q", ResidueProperties.codonTranslate("CAR"));
181  1 assertEquals("STOP", ResidueProperties.codonTranslate("TAR"));
182  1 assertEquals("STOP", ResidueProperties.codonTranslate("TRA"));
183    // Arginine first and third base ambiguity
184  1 assertEquals("R", ResidueProperties.codonTranslate("MGR"));
185  1 assertNull(ResidueProperties.codonTranslate("ATR"));
186   
187    // N is any base; 8 proteins accept any base in 3rd position
188  1 assertEquals("L", ResidueProperties.codonTranslate("CTN"));
189  1 assertEquals("V", ResidueProperties.codonTranslate("GTN"));
190  1 assertEquals("S", ResidueProperties.codonTranslate("TCN"));
191  1 assertEquals("P", ResidueProperties.codonTranslate("CCN"));
192  1 assertEquals("T", ResidueProperties.codonTranslate("ACN"));
193  1 assertEquals("A", ResidueProperties.codonTranslate("GCN"));
194  1 assertEquals("R", ResidueProperties.codonTranslate("CGN"));
195  1 assertEquals("G", ResidueProperties.codonTranslate("GGN"));
196  1 assertNull(ResidueProperties.codonTranslate("ATN"));
197  1 assertNull(ResidueProperties.codonTranslate("ANT"));
198  1 assertNull(ResidueProperties.codonTranslate("NAT"));
199  1 assertNull(ResidueProperties.codonTranslate("ANN"));
200  1 assertNull(ResidueProperties.codonTranslate("NNA"));
201  1 assertNull(ResidueProperties.codonTranslate("NNN"));
202   
203    // some random stuff
204  1 assertNull(ResidueProperties.codonTranslate("YWB"));
205  1 assertNull(ResidueProperties.codonTranslate("VHD"));
206  1 assertNull(ResidueProperties.codonTranslate("WSK"));
207    }
208   
 
209  1 toggle @Test(groups = { "Functional" })
210    public void testGetResidues_nucleotide()
211    {
212    /*
213    * Non-ambiguous only; we don't care about the order of the list, it is just
214    * sorted here to make assertions reliable
215    */
216  1 List<String> residues = ResidueProperties.getResidues(true, false);
217  1 Collections.sort(residues);
218  1 assertEquals("[A, C, G, T, U]", residues.toString());
219   
220    /*
221    * Including ambiguity codes I N R X Y
222    */
223  1 residues = ResidueProperties.getResidues(true, true);
224  1 Collections.sort(residues);
225  1 assertEquals("[A, C, G, I, N, R, T, U, X, Y]", residues.toString());
226    }
227   
 
228  1 toggle @Test(groups = { "Functional" })
229    public void testGetResidues_peptide()
230    {
231    /*
232    * Non-ambiguous only; we don't care about the order of the list, it is just
233    * sorted here to make assertions reliable
234    */
235  1 List<String> residues = ResidueProperties.getResidues(false, false);
236  1 Collections.sort(residues);
237  1 assertEquals(
238    "[ALA, ARG, ASN, ASP, CYS, GLN, GLU, GLY, HIS, ILE, LEU, LYS, MET, PHE, PRO, SER, THR, TRP, TYR, VAL]",
239    residues.toString());
240   
241    /*
242    * Including ambiguity codes ASX, GLX, XAA
243    */
244  1 residues = ResidueProperties.getResidues(false, true);
245  1 Collections.sort(residues);
246  1 assertEquals(
247    "[ALA, ARG, ASN, ASP, ASX, CYS, GLN, GLU, GLX, GLY, HIS, ILE, LEU, LYS, MET, PHE, PRO, SER, THR, TRP, TYR, VAL, XAA]",
248    residues.toString());
249    }
250   
 
251  1 toggle @Test(groups = { "Functional" })
252    public void testGetCanonicalAminoAcid()
253    {
254  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("MET"));
255  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("MSE"));
256   
257  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("00C"));
258  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("01W"));
259  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("02K"));
260  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("03Y"));
261  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("07O"));
262  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("08P"));
263  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("0A0"));
264  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("0A1"));
265  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("0A2"));
266  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("0A8"));
267  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("0AA"));
268  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("0AB"));
269  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("0AC"));
270  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("0AD"));
271  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("0AF"));
272  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("0AG"));
273  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("0AH"));
274  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("0AK"));
275  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("0AM"));
276  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("0AP"));
277  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("0AU"));
278  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("0AV"));
279  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("0AZ"));
280  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("0BN"));
281  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("0C "));
282  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("0CS"));
283  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("0DC"));
284  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("0DG"));
285  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("0DT"));
286  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("0FL"));
287  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("0G "));
288  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("0NC"));
289  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("0SP"));
290  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("0U "));
291  1 assertEquals("YG", ResidueProperties.getCanonicalAminoAcid("0YG"));
292  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("10C"));
293  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("125"));
294  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("126"));
295  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("127"));
296  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("128"));
297  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("12A"));
298  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("143"));
299  1 assertEquals("ASG", ResidueProperties.getCanonicalAminoAcid("175"));
300  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("193"));
301  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("1AP"));
302  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("1MA"));
303  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("1MG"));
304  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("1PA"));
305  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("1PI"));
306  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("1PR"));
307  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("1SC"));
308  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("1TQ"));
309  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("1TY"));
310  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("1X6"));
311  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("200"));
312  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("23F"));
313  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("23S"));
314  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("26B"));
315  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("2AD"));
316  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("2AG"));
317  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("2AO"));
318  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("2AR"));
319  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("2AS"));
320  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("2AT"));
321  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("2AU"));
322  1 assertEquals("ILE", ResidueProperties.getCanonicalAminoAcid("2BD"));
323  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("2BT"));
324  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("2BU"));
325  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("2CO"));
326  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("2DA"));
327  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("2DF"));
328  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("2DM"));
329  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("2DO"));
330  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("2DT"));
331  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("2EG"));
332  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("2FE"));
333  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("2FI"));
334  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("2FM"));
335  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("2GT"));
336  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("2HF"));
337  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("2LU"));
338  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("2MA"));
339  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("2MG"));
340  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("2ML"));
341  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("2MR"));
342  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("2MT"));
343  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("2MU"));
344  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("2NT"));
345  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("2OM"));
346  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("2OT"));
347  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("2PI"));
348  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("2PR"));
349  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("2SA"));
350  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("2SI"));
351  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("2ST"));
352  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("2TL"));
353  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("2TY"));
354  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("2VA"));
355  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("2XA"));
356  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("32S"));
357  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("32T"));
358  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("3AH"));
359  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("3AR"));
360  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("3CF"));
361  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("3DA"));
362  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("3DR"));
363  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("3GA"));
364  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("3MD"));
365  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("3ME"));
366  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("3NF"));
367  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("3QN"));
368  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("3TY"));
369  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("3XH"));
370  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("4AC"));
371  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("4BF"));
372  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("4CF"));
373  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("4CY"));
374  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("4DP"));
375  1 assertEquals("GYG", ResidueProperties.getCanonicalAminoAcid("4F3"));
376  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("4FB"));
377  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("4FW"));
378  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("4HT"));
379  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("4IN"));
380  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("4MF"));
381  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("4MM"));
382  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("4OC"));
383  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("4PC"));
384  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("4PD"));
385  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("4PE"));
386  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("4PH"));
387  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("4SC"));
388  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("4SU"));
389  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("4TA"));
390  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("4U7"));
391  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("56A"));
392  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("5AA"));
393  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("5AB"));
394  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("5AT"));
395  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("5BU"));
396  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("5CG"));
397  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("5CM"));
398  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("5CS"));
399  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("5FA"));
400  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("5FC"));
401  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("5FU"));
402  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("5HP"));
403  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("5HT"));
404  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("5HU"));
405  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("5IC"));
406  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("5IT"));
407  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("5IU"));
408  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("5MC"));
409  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("5MD"));
410  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("5MU"));
411  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("5NC"));
412  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("5PC"));
413  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("5PY"));
414  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("5SE"));
415  1 assertEquals("TWG", ResidueProperties.getCanonicalAminoAcid("5ZA"));
416  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("64T"));
417  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("6CL"));
418  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("6CT"));
419  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("6CW"));
420  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("6HA"));
421  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("6HC"));
422  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("6HG"));
423  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("6HN"));
424  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("6HT"));
425  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("6IA"));
426  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("6MA"));
427  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("6MC"));
428  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("6MI"));
429  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("6MT"));
430  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("6MZ"));
431  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("6OG"));
432  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("70U"));
433  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("7DA"));
434  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("7GU"));
435  1 assertEquals("ILE", ResidueProperties.getCanonicalAminoAcid("7JA"));
436  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("7MG"));
437  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("8AN"));
438  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("8FG"));
439  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("8MG"));
440  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("8OG"));
441  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("9NE"));
442  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("9NF"));
443  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("9NR"));
444  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("9NV"));
445  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A "));
446  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("A1P"));
447  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A23"));
448  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A2L"));
449  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A2M"));
450  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A34"));
451  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A35"));
452  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A38"));
453  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A39"));
454  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A3A"));
455  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A3P"));
456  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A40"));
457  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A43"));
458  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A44"));
459  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A47"));
460  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A5L"));
461  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("A5M"));
462  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("A5N"));
463  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("A5O"));
464  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("A66"));
465  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("AA3"));
466  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("AA4"));
467  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("AAR"));
468  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("AB7"));
469  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ABA"));
470  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ABR"));
471  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ABS"));
472  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("ABT"));
473  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("ACB"));
474  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("ACL"));
475  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("AD2"));
476  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("ADD"));
477  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("ADX"));
478  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("AEA"));
479  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("AEI"));
480  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("AET"));
481  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("AFA"));
482  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("AFF"));
483  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("AFG"));
484  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("AGM"));
485  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("AGT"));
486  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("AHB"));
487  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("AHH"));
488  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("AHO"));
489  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("AHP"));
490  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("AHS"));
491  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("AHT"));
492  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("AIB"));
493  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("AKL"));
494  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("AKZ"));
495  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ALA"));
496  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ALC"));
497  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ALM"));
498  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ALN"));
499  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("ALO"));
500  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("ALQ"));
501  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ALS"));
502  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ALT"));
503  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ALV"));
504  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("ALY"));
505  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("AN8"));
506  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("AP7"));
507  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("APE"));
508  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("APH"));
509  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("API"));
510  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("APK"));
511  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("APM"));
512  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("APP"));
513  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("AR2"));
514  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("AR4"));
515  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("AR7"));
516  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("ARG"));
517  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("ARM"));
518  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("ARO"));
519  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("ARV"));
520  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("AS "));
521  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("AS2"));
522  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("AS9"));
523  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("ASA"));
524  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("ASB"));
525  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("ASI"));
526  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("ASK"));
527  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("ASL"));
528  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("ASM"));
529  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("ASN"));
530  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("ASP"));
531  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("ASQ"));
532  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("ASU"));
533  1 assertEquals("ASX", ResidueProperties.getCanonicalAminoAcid("ASX"));
534  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("ATD"));
535  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("ATL"));
536  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("ATM"));
537  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("AVC"));
538  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("AVN"));
539  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("AYA"));
540  1 assertEquals("AYG", ResidueProperties.getCanonicalAminoAcid("AYG"));
541  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("AZK"));
542  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("AZS"));
543  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("AZY"));
544  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("B1F"));
545  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("B1P"));
546  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("B2A"));
547  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("B2F"));
548  1 assertEquals("ILE", ResidueProperties.getCanonicalAminoAcid("B2I"));
549  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("B2V"));
550  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("B3A"));
551  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("B3D"));
552  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("B3E"));
553  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("B3K"));
554  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("B3L"));
555  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("B3M"));
556  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("B3Q"));
557  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("B3S"));
558  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("B3T"));
559  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("B3U"));
560  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("B3X"));
561  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("B3Y"));
562  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("BB6"));
563  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("BB7"));
564  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("BB8"));
565  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("BB9"));
566  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("BBC"));
567  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("BCS"));
568  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("BE2"));
569  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("BFD"));
570  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("BG1"));
571  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("BGM"));
572  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("BH2"));
573  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("BHD"));
574  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("BIF"));
575  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("BIL"));
576  1 assertEquals("ILE", ResidueProperties.getCanonicalAminoAcid("BIU"));
577  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("BJH"));
578  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("BLE"));
579  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("BLY"));
580  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("BMP"));
581  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("BMT"));
582  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("BNN"));
583  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("BNO"));
584  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("BOE"));
585  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("BOR"));
586  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("BPE"));
587  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("BRU"));
588  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("BSE"));
589  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("BT5"));
590  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("BTA"));
591  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("BTC"));
592  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("BTR"));
593  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("BUC"));
594  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("BUG"));
595  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("BVP"));
596  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("BZG"));
597  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C "));
598  1 assertEquals("TYG", ResidueProperties.getCanonicalAminoAcid("C12"));
599  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("C1X"));
600  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C25"));
601  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C2L"));
602  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C2S"));
603  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C31"));
604  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C32"));
605  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C34"));
606  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C36"));
607  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C37"));
608  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C38"));
609  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C3Y"));
610  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C42"));
611  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C43"));
612  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C45"));
613  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C46"));
614  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C49"));
615  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C4R"));
616  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C4S"));
617  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C5C"));
618  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("C66"));
619  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("C6C"));
620  1 assertEquals("TFG", ResidueProperties.getCanonicalAminoAcid("C99"));
621  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CAF"));
622  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("CAL"));
623  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CAR"));
624  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CAS"));
625  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("CAV"));
626  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CAY"));
627  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CB2"));
628  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CBR"));
629  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CBV"));
630  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CCC"));
631  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("CCL"));
632  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CCS"));
633  1 assertEquals("CYG", ResidueProperties.getCanonicalAminoAcid("CCY"));
634  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("CDE"));
635  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("CDV"));
636  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CDW"));
637  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CEA"));
638  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CFL"));
639  1 assertEquals("FCYG", ResidueProperties.getCanonicalAminoAcid("CFY")); // check
640  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("CG1"));
641  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("CGA"));
642  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("CGU"));
643  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CH "));
644  1 assertEquals("MYG", ResidueProperties.getCanonicalAminoAcid("CH6"));
645  1 assertEquals("KYG", ResidueProperties.getCanonicalAminoAcid("CH7"));
646  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("CHF"));
647  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("CHG"));
648  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("CHP"));
649  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("CHS"));
650  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("CIR"));
651  1 assertEquals("GYG", ResidueProperties.getCanonicalAminoAcid("CJO"));
652  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("CLE"));
653  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("CLG"));
654  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("CLH"));
655  1 assertEquals("AFG", ResidueProperties.getCanonicalAminoAcid("CLV"));
656  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("CM0"));
657  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CME"));
658  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CMH"));
659  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CML"));
660  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CMR"));
661  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CMT"));
662  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("CNU"));
663  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CP1"));
664  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("CPC"));
665  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("CPI"));
666  1 assertEquals("GYG", ResidueProperties.getCanonicalAminoAcid("CQR"));
667  1 assertEquals("TLG", ResidueProperties.getCanonicalAminoAcid("CR0"));
668  1 assertEquals("GYG", ResidueProperties.getCanonicalAminoAcid("CR2"));
669  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("CR5"));
670  1 assertEquals("KYG", ResidueProperties.getCanonicalAminoAcid("CR7"));
671  1 assertEquals("HYG", ResidueProperties.getCanonicalAminoAcid("CR8"));
672  1 assertEquals("TWG", ResidueProperties.getCanonicalAminoAcid("CRF"));
673  1 assertEquals("THG", ResidueProperties.getCanonicalAminoAcid("CRG"));
674  1 assertEquals("MYG", ResidueProperties.getCanonicalAminoAcid("CRK"));
675  1 assertEquals("GYG", ResidueProperties.getCanonicalAminoAcid("CRO"));
676  1 assertEquals("QYG", ResidueProperties.getCanonicalAminoAcid("CRQ"));
677  1 assertEquals("EYG", ResidueProperties.getCanonicalAminoAcid("CRU"));
678  1 assertEquals("ASG", ResidueProperties.getCanonicalAminoAcid("CRW"));
679  1 assertEquals("ASG", ResidueProperties.getCanonicalAminoAcid("CRX"));
680  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CS0"));
681  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CS1"));
682  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CS3"));
683  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CS4"));
684  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("CS8"));
685  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSA"));
686  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSB"));
687  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSD"));
688  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSE"));
689  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSF"));
690  1 assertEquals("SHG", ResidueProperties.getCanonicalAminoAcid("CSH"));
691  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("CSI"));
692  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSJ"));
693  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSL"));
694  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSO"));
695  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSP"));
696  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSR"));
697  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSS"));
698  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSU"));
699  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSW"));
700  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSX"));
701  1 assertEquals("SYG", ResidueProperties.getCanonicalAminoAcid("CSY"));
702  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CSZ"));
703  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("CTE"));
704  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("CTG"));
705  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("CTH"));
706  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("CUC"));
707  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("CWR"));
708  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("CXM"));
709  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CY0"));
710  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CY1"));
711  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CY3"));
712  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CY4"));
713  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CYA"));
714  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CYD"));
715  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CYF"));
716  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CYG"));
717  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("CYJ"));
718  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CYM"));
719  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CYQ"));
720  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CYR"));
721  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CYS"));
722  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CZ2"));
723  1 assertEquals("GYG", ResidueProperties.getCanonicalAminoAcid("CZO"));
724  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("CZZ"));
725  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("D11"));
726  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("D1P"));
727  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("D3 "));
728  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("D33"));
729  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("D3P"));
730  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("D3T"));
731  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("D4M"));
732  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("D4P"));
733  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("DA "));
734  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("DA2"));
735  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("DAB"));
736  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("DAH"));
737  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("DAL"));
738  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("DAR"));
739  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("DAS"));
740  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("DBB"));
741  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("DBM"));
742  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("DBS"));
743  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("DBU"));
744  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("DBY"));
745  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("DBZ"));
746  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("DC "));
747  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("DC2"));
748  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("DCG"));
749  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("DCI"));
750  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("DCL"));
751  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("DCT"));
752  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("DCY"));
753  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("DDE"));
754  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("DDG"));
755  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("DDN"));
756  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("DDX"));
757  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("DFC"));
758  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("DFG"));
759  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("DFI"));
760  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("DFO"));
761  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("DFT"));
762  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("DG "));
763  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("DGH"));
764  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("DGI"));
765  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("DGL"));
766  1 assertEquals("GLN", ResidueProperties.getCanonicalAminoAcid("DGN"));
767  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("DHA"));
768  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("DHI"));
769  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("DHL"));
770  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("DHN"));
771  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("DHP"));
772  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("DHU"));
773  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("DHV"));
774  1 assertEquals("ILE", ResidueProperties.getCanonicalAminoAcid("DI "));
775  1 assertEquals("ILE", ResidueProperties.getCanonicalAminoAcid("DIL"));
776  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("DIR"));
777  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("DIV"));
778  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("DLE"));
779  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("DLS"));
780  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("DLY"));
781  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("DM0"));
782  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("DMH"));
783  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("DMK"));
784  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("DMT"));
785  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("DN "));
786  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("DNE"));
787  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("DNG"));
788  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("DNL"));
789  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("DNM"));
790  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("DNP"));
791  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("DNR"));
792  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("DNS"));
793  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("DOA"));
794  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("DOC"));
795  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("DOH"));
796  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("DON"));
797  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("DPB"));
798  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("DPH"));
799  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("DPL"));
800  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("DPP"));
801  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("DPQ"));
802  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("DPR"));
803  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("DPY"));
804  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("DRM"));
805  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("DRP"));
806  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("DRT"));
807  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("DRZ"));
808  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("DSE"));
809  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("DSG"));
810  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("DSN"));
811  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("DSP"));
812  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("DT "));
813  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("DTH"));
814  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("DTR"));
815  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("DTY"));
816  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("DU "));
817  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("DVA"));
818  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("DXD"));
819  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("DXN"));
820  1 assertEquals("DYG", ResidueProperties.getCanonicalAminoAcid("DYG"));
821  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("DYS"));
822  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("DZM"));
823  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("E "));
824  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("E1X"));
825  1 assertEquals("GLN", ResidueProperties.getCanonicalAminoAcid("ECC"));
826  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("EDA"));
827  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("EFC"));
828  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("EHP"));
829  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("EIT"));
830  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("ENP"));
831  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("ESB"));
832  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("ESC"));
833  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("EXB"));
834  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("EXY"));
835  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("EY5"));
836  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("EYS"));
837  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("F2F"));
838  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("FA2"));
839  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("FA5"));
840  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("FAG"));
841  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("FAI"));
842  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("FB5"));
843  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("FB6"));
844  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("FCL"));
845  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("FFD"));
846  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("FGA"));
847  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("FGL"));
848  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("FGP"));
849  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("FHL"));
850  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("FHO"));
851  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("FHU"));
852  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("FLA"));
853  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("FLE"));
854  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("FLT"));
855  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("FME"));
856  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("FMG"));
857  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("FMU"));
858  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("FOE"));
859  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("FOX"));
860  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("FP9"));
861  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("FPA"));
862  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("FRD"));
863  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("FT6"));
864  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("FTR"));
865  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("FTY"));
866  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("FVA"));
867  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("FZN"));
868  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G "));
869  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G25"));
870  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G2L"));
871  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G2S"));
872  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G31"));
873  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G32"));
874  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G33"));
875  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G36"));
876  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G38"));
877  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G42"));
878  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G46"));
879  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G47"));
880  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G48"));
881  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G49"));
882  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("G4P"));
883  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("G7M"));
884  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GAO"));
885  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("GAU"));
886  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("GCK"));
887  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("GCM"));
888  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GDP"));
889  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GDR"));
890  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GFL"));
891  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("GGL"));
892  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GH3"));
893  1 assertEquals("GLN", ResidueProperties.getCanonicalAminoAcid("GHG"));
894  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GHP"));
895  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GL3"));
896  1 assertEquals("GLN", ResidueProperties.getCanonicalAminoAcid("GLH"));
897  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("GLJ"));
898  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("GLK"));
899  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("GLM"));
900  1 assertEquals("GLN", ResidueProperties.getCanonicalAminoAcid("GLN"));
901  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("GLQ"));
902  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("GLU"));
903  1 assertEquals("GLX", ResidueProperties.getCanonicalAminoAcid("GLX"));
904  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GLY"));
905  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GLZ"));
906  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("GMA"));
907  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GMS"));
908  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("GMU"));
909  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GN7"));
910  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("GND"));
911  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("GNE"));
912  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GOM"));
913  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("GPL"));
914  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GS "));
915  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GSC"));
916  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GSR"));
917  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GSS"));
918  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("GSU"));
919  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("GT9"));
920  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("GTP"));
921  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("GVL"));
922  1 assertEquals("CYG", ResidueProperties.getCanonicalAminoAcid("GYC"));
923  1 assertEquals("SYG", ResidueProperties.getCanonicalAminoAcid("GYS"));
924  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("H2U"));
925  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("H5M"));
926  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("HAC"));
927  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("HAR"));
928  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("HBN"));
929  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("HCS"));
930  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("HDP"));
931  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("HEU"));
932  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("HFA"));
933  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("HGL"));
934  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("HHI"));
935  1 assertEquals("AK", ResidueProperties.getCanonicalAminoAcid("HHK")); // check
936  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("HIA"));
937  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("HIC"));
938  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("HIP"));
939  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("HIQ"));
940  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("HIS"));
941  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("HL2"));
942  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("HLU"));
943  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("HMR"));
944  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("HOL"));
945  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("HPC"));
946  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("HPE"));
947  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("HPH"));
948  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("HPQ"));
949  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("HQA"));
950  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("HRG"));
951  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("HRP"));
952  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("HS8"));
953  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("HS9"));
954  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("HSE"));
955  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("HSL"));
956  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("HSO"));
957  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("HTI"));
958  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("HTN"));
959  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("HTR"));
960  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("HV5"));
961  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("HVA"));
962  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("HY3"));
963  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("HYP"));
964  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("HZP"));
965  1 assertEquals("ILE", ResidueProperties.getCanonicalAminoAcid("I "));
966  1 assertEquals("ILE", ResidueProperties.getCanonicalAminoAcid("I2M"));
967  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("I58"));
968  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("I5C"));
969  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("IAM"));
970  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("IAR"));
971  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("IAS"));
972  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("IC "));
973  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("IEL"));
974  1 assertEquals("HYG", ResidueProperties.getCanonicalAminoAcid("IEY"));
975  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("IG "));
976  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("IGL"));
977  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("IGU"));
978  1 assertEquals("SHG", ResidueProperties.getCanonicalAminoAcid("IIC"));
979  1 assertEquals("ILE", ResidueProperties.getCanonicalAminoAcid("IIL"));
980  1 assertEquals("ILE", ResidueProperties.getCanonicalAminoAcid("ILE"));
981  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("ILG"));
982  1 assertEquals("ILE", ResidueProperties.getCanonicalAminoAcid("ILX"));
983  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("IMC"));
984  1 assertEquals("ILE", ResidueProperties.getCanonicalAminoAcid("IML"));
985  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("IOY"));
986  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("IPG"));
987  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("IPN"));
988  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("IRN"));
989  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("IT1"));
990  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("IU "));
991  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("IYR"));
992  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("IYT"));
993  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("IZO"));
994  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("JJJ"));
995  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("JJK"));
996  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("JJL"));
997  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("JW5"));
998  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("K1R"));
999  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("KAG"));
1000  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("KCX"));
1001  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("KGC"));
1002  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("KNB"));
1003  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("KOR"));
1004  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("KPI"));
1005  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("KST"));
1006  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("KYQ"));
1007  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("L2A"));
1008  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LA2"));
1009  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("LAA"));
1010  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("LAL"));
1011  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LBY"));
1012  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("LC "));
1013  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("LCA"));
1014  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("LCC"));
1015  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("LCG"));
1016  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("LCH"));
1017  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LCK"));
1018  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LCX"));
1019  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LDH"));
1020  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("LED"));
1021  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("LEF"));
1022  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("LEH"));
1023  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("LEI"));
1024  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("LEM"));
1025  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("LEN"));
1026  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("LET"));
1027  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("LEU"));
1028  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("LEX"));
1029  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("LG "));
1030  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("LGP"));
1031  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("LHC"));
1032  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("LHU"));
1033  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("LKC"));
1034  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LLP"));
1035  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LLY"));
1036  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("LME"));
1037  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LMF"));
1038  1 assertEquals("GLN", ResidueProperties.getCanonicalAminoAcid("LMQ"));
1039  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("LMS"));
1040  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LP6"));
1041  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("LPD"));
1042  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("LPG"));
1043  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("LPL"));
1044  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("LPS"));
1045  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("LSO"));
1046  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("LTA"));
1047  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("LTR"));
1048  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("LVG"));
1049  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("LVN"));
1050  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LYF"));
1051  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LYK"));
1052  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LYM"));
1053  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LYN"));
1054  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LYR"));
1055  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LYS"));
1056  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LYX"));
1057  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("LYZ"));
1058  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("M0H"));
1059  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("M1G"));
1060  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("M2G"));
1061  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("M2L"));
1062  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("M2S"));
1063  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("M30"));
1064  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("M3L"));
1065  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("M5M"));
1066  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("MA "));
1067  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("MA6"));
1068  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("MA7"));
1069  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("MAA"));
1070  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("MAD"));
1071  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("MAI"));
1072  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("MBQ"));
1073  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("MBZ"));
1074  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("MC1"));
1075  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("MCG"));
1076  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("MCL"));
1077  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("MCS"));
1078  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("MCY"));
1079  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("MD3"));
1080  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("MD6"));
1081  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("MDH"));
1082  1 assertEquals("ASG", ResidueProperties.getCanonicalAminoAcid("MDO"));
1083  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("MDR"));
1084  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("MEA"));
1085  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("MED"));
1086  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("MEG"));
1087  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("MEN"));
1088  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("MEP"));
1089  1 assertEquals("GLN", ResidueProperties.getCanonicalAminoAcid("MEQ"));
1090  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("MET"));
1091  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("MEU"));
1092  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("MF3"));
1093  1 assertEquals("GYG", ResidueProperties.getCanonicalAminoAcid("MFC"));
1094  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("MG1"));
1095  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("MGG"));
1096  1 assertEquals("GLN", ResidueProperties.getCanonicalAminoAcid("MGN"));
1097  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("MGQ"));
1098  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("MGV"));
1099  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("MGY"));
1100  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("MHL"));
1101  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("MHO"));
1102  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("MHS"));
1103  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("MIA"));
1104  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("MIS"));
1105  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("MK8"));
1106  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("ML3"));
1107  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("MLE"));
1108  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("MLL"));
1109  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("MLY"));
1110  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("MLZ"));
1111  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("MME"));
1112  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("MMO"));
1113  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("MMT"));
1114  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("MND"));
1115  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("MNL"));
1116  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("MNU"));
1117  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("MNV"));
1118  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("MOD"));
1119  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("MP8"));
1120  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("MPH"));
1121  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("MPJ"));
1122  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("MPQ"));
1123  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("MRG"));
1124  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("MSA"));
1125  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("MSE"));
1126  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("MSL"));
1127  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("MSO"));
1128  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("MSP"));
1129  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("MT2"));
1130  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("MTR"));
1131  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("MTU"));
1132  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("MTY"));
1133  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("MVA"));
1134  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("N "));
1135  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("N10"));
1136  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("N2C"));
1137  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("N5I"));
1138  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("N5M"));
1139  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("N6G"));
1140  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("N7P"));
1141  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("NA8"));
1142  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("NAL"));
1143  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("NAM"));
1144  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("NB8"));
1145  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("NBQ"));
1146  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("NC1"));
1147  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("NCB"));
1148  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("NCX"));
1149  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("NCY"));
1150  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("NDF"));
1151  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("NDN"));
1152  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("NEM"));
1153  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("NEP"));
1154  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("NF2"));
1155  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("NFA"));
1156  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("NHL"));
1157  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("NIT"));
1158  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("NIY"));
1159  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("NLE"));
1160  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("NLN"));
1161  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("NLO"));
1162  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("NLP"));
1163  1 assertEquals("GLN", ResidueProperties.getCanonicalAminoAcid("NLQ"));
1164  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("NMC"));
1165  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("NMM"));
1166  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("NMS"));
1167  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("NMT"));
1168  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("NNH"));
1169  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("NP3"));
1170  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("NPH"));
1171  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("NPI"));
1172  1 assertEquals("LYG", ResidueProperties.getCanonicalAminoAcid("NRP"));
1173  1 assertEquals("MYG", ResidueProperties.getCanonicalAminoAcid("NRQ"));
1174  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("NSK"));
1175  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("NTY"));
1176  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("NVA"));
1177  1 assertEquals("TWG", ResidueProperties.getCanonicalAminoAcid("NYC"));
1178  1 assertEquals("NYG", ResidueProperties.getCanonicalAminoAcid("NYG"));
1179  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("NYM"));
1180  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("NYS"));
1181  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("NZH"));
1182  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("O12"));
1183  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("O2C"));
1184  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("O2G"));
1185  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("OAD"));
1186  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("OAS"));
1187  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("OBF"));
1188  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("OBS"));
1189  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("OCS"));
1190  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("OCY"));
1191  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("ODP"));
1192  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("OHI"));
1193  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("OHS"));
1194  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("OIC"));
1195  1 assertEquals("ILE", ResidueProperties.getCanonicalAminoAcid("OIP"));
1196  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("OLE"));
1197  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("OLT"));
1198  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("OLZ"));
1199  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("OMC"));
1200  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("OMG"));
1201  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("OMT"));
1202  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("OMU"));
1203  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("ONE"));
1204  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ONH"));
1205  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("ONL"));
1206  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("OPR"));
1207  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ORN"));
1208  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("ORQ"));
1209  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("OSE"));
1210  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("OTB"));
1211  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("OTH"));
1212  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("OTY"));
1213  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("OXX"));
1214  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("P "));
1215  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("P1L"));
1216  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("P1P"));
1217  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("P2T"));
1218  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("P2U"));
1219  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("P2Y"));
1220  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("P5P"));
1221  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("PAQ"));
1222  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("PAS"));
1223  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("PAT"));
1224  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("PAU"));
1225  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("PBB"));
1226  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("PBF"));
1227  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("PBT"));
1228  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("PCA"));
1229  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("PCC"));
1230  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("PCE"));
1231  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("PCS"));
1232  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("PDL"));
1233  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("PDU"));
1234  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("PEC"));
1235  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("PF5"));
1236  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("PFF"));
1237  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("PFX"));
1238  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("PG1"));
1239  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("PG7"));
1240  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("PG9"));
1241  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("PGL"));
1242  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("PGN"));
1243  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("PGP"));
1244  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("PGY"));
1245  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("PHA"));
1246  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("PHD"));
1247  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("PHE"));
1248  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("PHI"));
1249  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("PHL"));
1250  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("PHM"));
1251  1 assertEquals("AYG", ResidueProperties.getCanonicalAminoAcid("PIA"));
1252  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("PIV"));
1253  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("PLE"));
1254  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("PM3"));
1255  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("PMT"));
1256  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("POM"));
1257  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("PPN"));
1258  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("PPU"));
1259  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("PPW"));
1260  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("PQ1"));
1261  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("PR3"));
1262  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("PR5"));
1263  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("PR9"));
1264  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("PRN"));
1265  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("PRO"));
1266  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("PRS"));
1267  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("PSA"));
1268  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("PSH"));
1269  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("PST"));
1270  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("PSU"));
1271  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("PSW"));
1272  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("PTA"));
1273  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("PTH"));
1274  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("PTM"));
1275  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("PTR"));
1276  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("PU "));
1277  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("PUY"));
1278  1 assertEquals("HIS", ResidueProperties.getCanonicalAminoAcid("PVH"));
1279  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("PVL"));
1280  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("PYA"));
1281  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("PYO"));
1282  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("PYX"));
1283  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("PYY"));
1284  1 assertEquals("QLG", ResidueProperties.getCanonicalAminoAcid("QLG"));
1285  1 assertEquals("GLN", ResidueProperties.getCanonicalAminoAcid("QMM"));
1286  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("QPA"));
1287  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("QPH"));
1288  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("QUO"));
1289  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("R "));
1290  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("R1A"));
1291  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("R4K"));
1292  1 assertEquals("HYG", ResidueProperties.getCanonicalAminoAcid("RC7"));
1293  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("RE0"));
1294  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("RE3"));
1295  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("RIA"));
1296  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("RMP"));
1297  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("RON"));
1298  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("RT "));
1299  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("RTP"));
1300  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("S1H"));
1301  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("S2C"));
1302  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("S2D"));
1303  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("S2M"));
1304  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("S2P"));
1305  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("S4A"));
1306  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("S4C"));
1307  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("S4G"));
1308  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("S4U"));
1309  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("S6G"));
1310  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SAC"));
1311  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("SAH"));
1312  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("SAR"));
1313  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SBL"));
1314  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("SC "));
1315  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("SCH"));
1316  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("SCS"));
1317  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("SCY"));
1318  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("SD2"));
1319  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("SDG"));
1320  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SDP"));
1321  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SEB"));
1322  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("SEC"));
1323  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("SEG"));
1324  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SEL"));
1325  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SEM"));
1326  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SEN"));
1327  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SEP"));
1328  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SER"));
1329  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SET"));
1330  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SGB"));
1331  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("SHC"));
1332  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("SHP"));
1333  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("SHR"));
1334  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("SIB"));
1335  1 assertEquals("DC", ResidueProperties.getCanonicalAminoAcid("SIC")); // check
1336  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("SLA"));
1337  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("SLR"));
1338  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("SLZ"));
1339  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("SMC"));
1340  1 assertEquals("MET", ResidueProperties.getCanonicalAminoAcid("SME"));
1341  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("SMF"));
1342  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("SMP"));
1343  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("SMT"));
1344  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("SNC"));
1345  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("SNN"));
1346  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("SOC"));
1347  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("SOS"));
1348  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SOY"));
1349  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("SPT"));
1350  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("SRA"));
1351  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("SSU"));
1352  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("STY"));
1353  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("SUB"));
1354  1 assertEquals("DG", ResidueProperties.getCanonicalAminoAcid("SUI"));
1355  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SUN"));
1356  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("SUR"));
1357  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SVA"));
1358  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SVV"));
1359  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SVW"));
1360  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SVX"));
1361  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("SVY"));
1362  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("SVZ"));
1363  1 assertEquals("SWG", ResidueProperties.getCanonicalAminoAcid("SWG"));
1364  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("SYS"));
1365  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T "));
1366  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("T11"));
1367  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T23"));
1368  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T2S"));
1369  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("T2T"));
1370  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("T31"));
1371  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T32"));
1372  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T36"));
1373  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T37"));
1374  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T38"));
1375  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T39"));
1376  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T3P"));
1377  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T41"));
1378  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T48"));
1379  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T49"));
1380  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T4S"));
1381  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("T5O"));
1382  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("T5S"));
1383  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("T66"));
1384  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("T6A"));
1385  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TA3"));
1386  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("TA4"));
1387  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TAF"));
1388  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("TAL"));
1389  1 assertEquals("ASP", ResidueProperties.getCanonicalAminoAcid("TAV"));
1390  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("TBG"));
1391  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TBM"));
1392  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("TC1"));
1393  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TCP"));
1394  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TCQ"));
1395  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("TCR"));
1396  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("TCY"));
1397  1 assertEquals("LEU", ResidueProperties.getCanonicalAminoAcid("TDD"));
1398  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TDY"));
1399  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TFE"));
1400  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("TFO"));
1401  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("TFQ"));
1402  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TFT"));
1403  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("TGP"));
1404  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TH6"));
1405  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("THC"));
1406  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("THO"));
1407  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("THR"));
1408  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("THX"));
1409  1 assertEquals("ARG", ResidueProperties.getCanonicalAminoAcid("THZ"));
1410  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("TIH"));
1411  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("TLB"));
1412  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TLC"));
1413  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("TLN"));
1414  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TMB"));
1415  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TMD"));
1416  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("TNB"));
1417  1 assertEquals("SER", ResidueProperties.getCanonicalAminoAcid("TNR"));
1418  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("TOX"));
1419  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TP1"));
1420  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("TPC"));
1421  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("TPG"));
1422  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("TPH"));
1423  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("TPL"));
1424  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TPO"));
1425  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TPQ"));
1426  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("TQI"));
1427  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("TQQ"));
1428  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("TRF"));
1429  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("TRG"));
1430  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("TRN"));
1431  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("TRO"));
1432  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("TRP"));
1433  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("TRQ"));
1434  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("TRW"));
1435  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("TRX"));
1436  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("TS "));
1437  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("TST"));
1438  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("TT "));
1439  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TTD"));
1440  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("TTI"));
1441  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("TTM"));
1442  1 assertEquals("TRP", ResidueProperties.getCanonicalAminoAcid("TTQ"));
1443  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TTS"));
1444  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TY1"));
1445  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TY2"));
1446  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TY3"));
1447  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TY5"));
1448  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TYB"));
1449  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TYI"));
1450  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TYJ"));
1451  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TYN"));
1452  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TYO"));
1453  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TYQ"));
1454  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TYR"));
1455  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TYS"));
1456  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TYT"));
1457  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("TYU"));
1458  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TYW"));
1459  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("TYX"));
1460  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("TYY"));
1461  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("TZB"));
1462  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("TZO"));
1463  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("U "));
1464  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("U25"));
1465  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("U2L"));
1466  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("U2N"));
1467  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("U2P"));
1468  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("U31"));
1469  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("U33"));
1470  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("U34"));
1471  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("U36"));
1472  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("U37"));
1473  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("U8U"));
1474  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("UAR"));
1475  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("UCL"));
1476  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("UD5"));
1477  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("UDP"));
1478  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("UFP"));
1479  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("UFR"));
1480  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("UFT"));
1481  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("UMA"));
1482  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("UMP"));
1483  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("UMS"));
1484  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("UN1"));
1485  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("UN2"));
1486  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("UNK"));
1487  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("UR3"));
1488  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("URD"));
1489  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("US1"));
1490  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("US2"));
1491  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("US3"));
1492  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("US5"));
1493  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("USM"));
1494  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("VAD"));
1495  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("VAF"));
1496  1 assertEquals("VAL", ResidueProperties.getCanonicalAminoAcid("VAL"));
1497  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("VB1"));
1498  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("VDL"));
1499  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("VLL"));
1500  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("VLM"));
1501  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("VMS"));
1502  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("VOL"));
1503  1 assertEquals("GYG", ResidueProperties.getCanonicalAminoAcid("WCR"));
1504  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("X "));
1505  1 assertEquals("GLU", ResidueProperties.getCanonicalAminoAcid("X2W"));
1506  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("X4A"));
1507  1 assertEquals("AFG", ResidueProperties.getCanonicalAminoAcid("X9Q"));
1508  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("XAD"));
1509  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("XAE"));
1510  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("XAL"));
1511  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("XAR"));
1512  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("XCL"));
1513  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("XCN"));
1514  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("XCP"));
1515  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("XCR"));
1516  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("XCS"));
1517  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("XCT"));
1518  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("XCY"));
1519  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("XGA"));
1520  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("XGL"));
1521  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("XGR"));
1522  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("XGU"));
1523  1 assertEquals("PRO", ResidueProperties.getCanonicalAminoAcid("XPR"));
1524  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("XSN"));
1525  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("XTH"));
1526  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("XTL"));
1527  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("XTR"));
1528  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("XTS"));
1529  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("XTY"));
1530  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("XUA"));
1531  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("XUG"));
1532  1 assertEquals("LYS", ResidueProperties.getCanonicalAminoAcid("XX1"));
1533  1 assertEquals("THG", ResidueProperties.getCanonicalAminoAcid("XXY"));
1534  1 assertEquals("DYG", ResidueProperties.getCanonicalAminoAcid("XYG"));
1535  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("Y "));
1536  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("YCM"));
1537  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("YG "));
1538  1 assertEquals("TYR", ResidueProperties.getCanonicalAminoAcid("YOF"));
1539  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("YRR"));
1540  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("YYG"));
1541  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("Z "));
1542  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("Z01"));
1543  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ZAD"));
1544  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ZAL"));
1545  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("ZBC"));
1546  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("ZBU"));
1547  1 assertEquals("PHE", ResidueProperties.getCanonicalAminoAcid("ZCL"));
1548  1 assertEquals("CYS", ResidueProperties.getCanonicalAminoAcid("ZCY"));
1549  1 assertEquals("UR3", ResidueProperties.getCanonicalAminoAcid("ZDU"));
1550  1 assertEquals("XAA", ResidueProperties.getCanonicalAminoAcid("ZFB"));
1551  1 assertEquals("GLY", ResidueProperties.getCanonicalAminoAcid("ZGU"));
1552  1 assertEquals("ASN", ResidueProperties.getCanonicalAminoAcid("ZHP"));
1553  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("ZTH"));
1554  1 assertEquals("THR", ResidueProperties.getCanonicalAminoAcid("ZU0"));
1555  1 assertEquals("ALA", ResidueProperties.getCanonicalAminoAcid("ZZJ"));
1556   
1557  1 assertEquals(null, ResidueProperties.getCanonicalAminoAcid(null));
1558    }
1559   
 
1560  1 toggle @Test(groups = { "Functional" })
1561    public void testGetSingleCharacterCode()
1562    {
1563  1 assertEquals('0', ResidueProperties.getSingleCharacterCode(null));
1564  1 assertEquals('0', ResidueProperties.getSingleCharacterCode(null));
1565  1 assertEquals('0', ResidueProperties.getSingleCharacterCode(""));
1566  1 assertEquals('Q', ResidueProperties.getSingleCharacterCode("GLN"));
1567  1 assertEquals('Q', ResidueProperties.getSingleCharacterCode("Gln"));
1568  1 assertEquals('Q', ResidueProperties.getSingleCharacterCode("gln"));
1569    }
1570   
 
1571  1 toggle @Test(groups = { "Functional" })
1572    public void testPhysicoChemicalProperties()
1573    {
1574  1 checkProperty("aromatic", "FYWH-*");
1575  1 checkProperty("aliphatic", "IVL-*");
1576  1 checkProperty("tiny", "GAS-*");
1577  1 checkProperty("small", "VCTGACSDNP-*");
1578  1 checkProperty("charged", "HKRDE-*");
1579  1 checkProperty("negative", "DE-*");
1580  1 checkProperty("polar", "YWHRKTSNDEQ-*X");
1581  1 checkProperty("positive", "HKR-*");
1582  1 checkProperty("proline", "P-*");
1583  1 checkProperty("hydrophobic", "MILVFYWHKTGAC-*X");
1584    }
1585   
1586    /**
1587    * Verify that the residues in the list have the named property, and other
1588    * residues do not
1589    *
1590    * @param property
1591    * @param residues
1592    */
 
1593  10 toggle void checkProperty(String property, String residues)
1594    {
1595  10 Map<String, Integer> props = ResidueProperties.propHash.get(property);
1596   
1597    /*
1598    * assert residues have the property (value 1 in lookup)
1599    */
1600  10 for (char res : residues.toCharArray())
1601    {
1602  77 assertEquals(res + " should be " + property, 1,
1603    props.get(String.valueOf(res)).intValue());
1604    }
1605   
1606    /*
1607    * assert other residues do not (value 0 in lookup)
1608    */
1609  10 for (String res : ResidueProperties.aa)
1610    {
1611  280 if (!residues.contains(res))
1612    {
1613  214 Integer propValue = props.get(String.valueOf(res));
1614   
1615  214 if (propValue != null)
1616    {
1617    /*
1618    * conservation calculation assigns unexpected symbols
1619    * the same value as '-'; here we just check those which
1620    * explicitly do not have the property
1621    */
1622  146 assertEquals(res + " should not be " + property, 0,
1623    propValue.intValue());
1624    }
1625    }
1626    }
1627    }
1628    }