IUPred result readers. IUpred binaries compilation scripts. IUpred executable descrip...
authorpvtroshin <pvtroshin@e3abac25-378b-4346-85de-24260fe3988d>
Tue, 14 Jun 2011 15:39:19 +0000 (15:39 +0000)
committerpvtroshin <pvtroshin@e3abac25-378b-4346-85de-24260fe3988d>
Tue, 14 Jun 2011 15:39:19 +0000 (15:39 +0000)
git-svn-id: link to svn.lifesci.dundee.ac.uk/svn/barton/ptroshin/JABA2@4263 e3abac25-378b-4346-85de-24260fe3988d

TODO.txt
binaries/src/compilebin.sh
binaries/src/setexecflag.sh
conf/Executable.properties
datamodel/compbio/data/sequence/SequenceUtil.java
testsrc/compbio/data/sequence/SequenceUtilTester.java
testsrc/testdata/output.glob [new file with mode: 0644]
testsrc/testdata/output.long [new file with mode: 0644]

index 539954e..dbd8400 100644 (file)
--- a/TODO.txt
+++ b/TODO.txt
@@ -49,12 +49,10 @@ Check the WS input and reject it on submission rather then of access with error
 Globprot need a proper reference to bio python and sav_gol binaries -> they should be \r
 somehow taken from disembl. \r
 \r
 Globprot need a proper reference to bio python and sav_gol binaries -> they should be \r
 somehow taken from disembl. \r
 \r
-Add registry service to query services status\r
++Add registry service to query services status\r
 \r
 \r
-Refactor web services checker to enable a programmatic access to its methods.\r
-Rename it to avoid confusion with jabaws client\r
-\r
-Finish the client\r
++Refactor web services checker to enable a programmatic access to its methods.\r
++Finish the client\r
 \r
 Add interface for Jalview annotation \r
 Add the method to return Jalview Annotation to SequenceAnnotation IF  \r
 \r
 Add interface for Jalview annotation \r
 Add the method to return Jalview Annotation to SequenceAnnotation IF  \r
index cd3b63a..f4563a6 100644 (file)
@@ -75,3 +75,11 @@ echo "DONE"
 chmod +x GlobPlot.py
 cd ..
 
 chmod +x GlobPlot.py
 cd ..
 
+echo "Compiling IUPred..."
+cd iupred
+make clean
+make 
+echo "DONE"
+chmod +x iupred
+cd ..
+
index 3121737..48f0431 100644 (file)
@@ -24,3 +24,6 @@ chmod +x disembl/disembl disembl/sav_gol disembl/DisEMBL.py
 
 echo "Setting executable flag for GlobPlot..."
 chmod +x globplot/GlobPlot.py globplot/sav_gol
 
 echo "Setting executable flag for GlobPlot..."
 chmod +x globplot/GlobPlot.py globplot/sav_gol
+
+echo "Setting executable flag for IUPred..."
+chmod +x iupred/iupred
index d621a3b..d448686 100644 (file)
@@ -88,6 +88,14 @@ cluster.globplot.bin=/homes/pvtroshin/workspace/jaba2/binaries/src/globplot/Glob
 globplot.limits.file=conf/settings/GlobPlotLimits.xml\r
 globplot.cluster.settings=-l h_cpu=24:00:00 -l h_vmem=6000M -l ram=6000M\r
 \r
 globplot.limits.file=conf/settings/GlobPlotLimits.xml\r
 globplot.cluster.settings=-l h_cpu=24:00:00 -l h_vmem=6000M -l ram=6000M\r
 \r
+### IUPred configuration ### \r
+#local.iupred.bin.windows= \r
+local.iupred.bin=binaries/src/iupred/iupred\r
+# tcoffee.bin.env=IUPred_PATH#/homes/pvtroshin/workspace/jaba2/binaries/src/iupred;\r
+cluster.iupred.bin=/homes/pvtroshin/workspace/jaba2/binaries/src/iupred/iupred\r
+iupred.parameters.file=conf/settings/UIPredParameters.xml\r
+iupred.limits.file=conf/settings/UIPredLimits.xml\r
+iupred.cluster.settings=-l h_cpu=24:00:00 -l h_vmem=6000M -l ram=6000M\r
 \r
 ### AACon configuration ###\r
 local.aacon.bin.windows=D:\\Java\\jdk1.6.0_24\\bin\\java.exe \r
 \r
 ### AACon configuration ###\r
 local.aacon.bin.windows=D:\\Java\\jdk1.6.0_24\\bin\\java.exe \r
index e737575..f65ec9e 100644 (file)
@@ -311,6 +311,126 @@ public final class SequenceUtil {
                outWriter.close();\r
        }\r
 \r
                outWriter.close();\r
        }\r
 \r
+       /**\r
+        * Read IUPred output\r
+        * \r
+        * @param result\r
+        * @return\r
+        * @throws IOException\r
+        * @throws UnknownFileFormatException\r
+        */\r
+       public static Map<String, Score> readIUPred(final File result,\r
+                       IUPredResult type) throws IOException, UnknownFileFormatException {\r
+               InputStream input = new FileInputStream(result);\r
+               Map<String, Score> sequences = readIUPred(input, type);\r
+               input.close();\r
+               return sequences;\r
+       }\r
+\r
+       // Check the type of the file e.g. long| short or domain\r
+       // and read\r
+       /**\r
+        * ## Long Disorder\r
+        * \r
+        * # P53_HUMAN\r
+        * \r
+        * 1 M 0.9943\r
+        * \r
+        * 2 E 0.9917\r
+        * \r
+        * 3 E 0.9879\r
+        * \r
+        * (every line)\r
+        * \r
+        * @throws IOException\r
+        * @throws UnknownFileFormatException\r
+        * \r
+        * \r
+        */\r
+       private static Map<String, Score> readIUPred(InputStream input,\r
+                       IUPredResult type) throws IOException, UnknownFileFormatException {\r
+\r
+               Score score = null;\r
+               final Map<String, Score> seqs = new HashMap<String, Score>();\r
+               Scanner scan = new Scanner(input);\r
+               scan.useDelimiter("#");\r
+               while (scan.hasNext()) {\r
+                       String nextEntry = scan.next();\r
+                       Scanner entry = new Scanner(nextEntry);\r
+                       String name = entry.nextLine();\r
+                       // inside entry:\r
+                       if (IUPredResult.Glob == type) {\r
+                               // parse domains\r
+                               TreeSet<Range> ranges = parseIUPredDomains(entry);\r
+                               score = new Score(type, ranges);\r
+                       } else {\r
+                               // parse short | long\r
+                               float[] scores = parseIUPredScores(entry);\r
+                               score = new Score(type, scores);\r
+                       }\r
+                       entry.close();\r
+                       seqs.put(name, score);\r
+               }\r
+\r
+               scan.close();\r
+               return seqs;\r
+       }\r
+\r
+       /**\r
+        * # P53_HUMA\r
+        * \r
+        * Number of globular domains: 2\r
+        * \r
+        * globular domain 1. 98 - 269\r
+        * \r
+        * globular domain 2. 431 - 482\r
+        * \r
+        * >P53_HUMA\r
+        * \r
+        * meepqsdpsv epplsqetfs dlwkllpenn vlsplpsqam ddlmlspddi eqwftedpgp\r
+        * \r
+        * @param scan\r
+        */\r
+       private static TreeSet<Range> parseIUPredDomains(Scanner scan) {\r
+               String header = "Number of globular domains:";\r
+               String domainPref = "globular domain";\r
+               TreeSet<Range> ranges = new TreeSet<Range>();\r
+               String line = scan.nextLine().trim();\r
+               assert line.startsWith(header);\r
+               line = line.substring(header.length()).trim();\r
+               int domainNum = Integer.parseInt(line);\r
+               if (domainNum == 0) {\r
+                       return ranges;\r
+               }\r
+\r
+               for (int i = 0; i < domainNum; i++) {\r
+                       assert scan.hasNextLine();\r
+                       line = scan.nextLine();\r
+                       assert line.trim().startsWith(domainPref);\r
+                       line = line.substring(line.indexOf(".") + 1).trim();\r
+                       Range r = new Range(line.split("-"));\r
+                       ranges.add(r);\r
+               }\r
+\r
+               return ranges;\r
+       }\r
+       /*\r
+        * 1 M 0.9943\r
+        * \r
+        * 2 E 0.9917\r
+        */\r
+       private static float[] parseIUPredScores(Scanner scan)\r
+                       throws UnknownFileFormatException {\r
+               List<String> annotation = new ArrayList<String>();\r
+               while (scan.hasNextLine()) {\r
+                       String line = scan.nextLine().trim();\r
+                       String[] val = line.split("\\s+");\r
+                       annotation.add(val[2]);\r
+               }\r
+               return convertToNumber(annotation\r
+                               .toArray(new String[annotation.size()]));\r
+       }\r
+\r
        public static Map<String, Score> readJRonn(final File result)\r
                        throws IOException, UnknownFileFormatException {\r
                InputStream input = new FileInputStream(result);\r
        public static Map<String, Score> readJRonn(final File result)\r
                        throws IOException, UnknownFileFormatException {\r
                InputStream input = new FileInputStream(result);\r
@@ -711,4 +831,19 @@ enum GlobProtResult {
        SmoothedScore,\r
        /** This a score with no range */\r
        RawScore\r
        SmoothedScore,\r
        /** This a score with no range */\r
        RawScore\r
+}\r
+\r
+enum IUPredResult {\r
+       /**\r
+        * Short disorder\r
+        */\r
+       Short,\r
+       /**\r
+        * Long disorder\r
+        */\r
+       Long,\r
+       /**\r
+        * Globular domains\r
+        */\r
+       Glob\r
 }
\ No newline at end of file
 }
\ No newline at end of file
index 7db01ee..d992216 100644 (file)
@@ -19,6 +19,7 @@ import static org.testng.AssertJUnit.assertNotNull;
 import static org.testng.AssertJUnit.assertTrue;\r
 import static org.testng.AssertJUnit.fail;\r
 \r
 import static org.testng.AssertJUnit.assertTrue;\r
 import static org.testng.AssertJUnit.fail;\r
 \r
+import java.io.File;\r
 import java.io.FileInputStream;\r
 import java.io.FileNotFoundException;\r
 import java.io.FileOutputStream;\r
 import java.io.FileInputStream;\r
 import java.io.FileNotFoundException;\r
 import java.io.FileOutputStream;\r
@@ -287,6 +288,40 @@ public class SequenceUtilTester {
        }\r
 \r
        @Test\r
        }\r
 \r
        @Test\r
+       public void testReadIUPredForShortAndLongDisorder() {\r
+               try {\r
+                       Map<String, Score> scores = SequenceUtil.readIUPred(new File(\r
+                                       AllTestSuit.TEST_DATA_PATH, "output.long"),\r
+                                       IUPredResult.Long);\r
+                       ScoreManager man = ScoreManager.newInstanceSingleScore(scores);\r
+                       man.writeOut(new PrintWriter(System.out, true));\r
+               } catch (IOException e) {\r
+                       e.printStackTrace();\r
+                       fail(e.getLocalizedMessage());\r
+               } catch (UnknownFileFormatException e) {\r
+                       e.printStackTrace();\r
+                       fail(e.getLocalizedMessage());\r
+               }\r
+       }\r
+\r
+       @Test\r
+       public void testReadIUPredForGlobDomain() {\r
+               try {\r
+                       Map<String, Score> scores = SequenceUtil.readIUPred(new File(\r
+                                       AllTestSuit.TEST_DATA_PATH, "output.glob"),\r
+                                       IUPredResult.Glob);\r
+                       ScoreManager man = ScoreManager.newInstanceSingleScore(scores);\r
+                       man.writeOut(new PrintWriter(System.out, true));\r
+               } catch (IOException e) {\r
+                       e.printStackTrace();\r
+                       fail(e.getLocalizedMessage());\r
+               } catch (UnknownFileFormatException e) {\r
+                       e.printStackTrace();\r
+                       fail(e.getLocalizedMessage());\r
+               }\r
+       }\r
+\r
+       @Test\r
        public void testReadAAConResults() {\r
                try {\r
                        InputStream inStream = new FileInputStream(\r
        public void testReadAAConResults() {\r
                try {\r
                        InputStream inStream = new FileInputStream(\r
diff --git a/testsrc/testdata/output.glob b/testsrc/testdata/output.glob
new file mode 100644 (file)
index 0000000..e5b9418
--- /dev/null
@@ -0,0 +1,19 @@
+# P53_HUMA
+Number of globular domains:     2 
+          globular domain       1.    98 - 269 
+          globular domain       2.    431 - 482 
+>P53_HUMA
+meepqsdpsv epplsqetfs dlwkllpenn vlsplpsqam ddlmlspddi eqwftedpgp
+deaprmpeaa ppvapapaap tpaapapaps wplsssvPSQ KTYQGSYGFR LGFLHSGTAK
+SVTCTYSPAL NKMFCQLAKT CPVQLWVDST PPPGTRVRAM AIYKQSQHMT EVVRRCPHHE
+RCSDSDGLAP PQHLIRVEGN LRVEYLDDRN TFRHSVVVPY EPPEVGSDCT TIHYNYMCNS
+SCMGGMNRRP ILTIITLEDS SGNLLGRNSf evrvcacpgr drrteeenlr kkgephhelp
+pgstkralpn ntssspqpkk kpldgeyftl qirgrerfem frelnealel kdaqagkepg
+gsrahsshlk skkgqstsrh kklmfktegp dsdrcsdsdg lappqhlirv egnlrveyld
+drntfrhsvv VPYEPPEVGS DCTTIHYNYM CNSSCMGGMN RRPILTIITL EDSSGNLLGR
+NSfevrvcac pgrdrrteee nlrkkgephh elppgstkra lpnntssspq pkkkpldgey
+ftlqirgrer femfrelnea lelkdaqagk epggsrahss hlkskkgq
+# Foobar_dundeefriends
+Number of globular domains:     0 
+>Foobar_dundeefriends
+meepqsdpsv epplsqetfs dlwkllpenn vlsplpsqam ddlmlspddi eqwftedpgp
diff --git a/testsrc/testdata/output.long b/testsrc/testdata/output.long
new file mode 100644 (file)
index 0000000..946d06c
--- /dev/null
@@ -0,0 +1,788 @@
+# P50_HUMAN
+    1 M     0.9943
+    2 E     0.9917
+    3 E     0.9879
+    4 P     0.9831
+    5 Q     0.9553
+    6 S     0.9316
+    7 D     0.9208
+    8 P     0.9119
+    9 S     0.8857
+   10 V     0.7951
+   11 E     0.7605
+   12 P     0.8074
+   13 P     0.7342
+   14 L     0.6374
+   15 S     0.6035
+   16 Q     0.5331
+   17 E     0.4781
+   18 T     0.4825
+   19 F     0.4825
+   20 S     0.4879
+   21 D     0.5374
+   22 L     0.4600
+   23 W     0.3668
+   24 K     0.3456
+   25 L     0.4282
+   26 L     0.3578
+   27 P     0.3630
+   28 E     0.3399
+   29 N     0.3578
+   30 N     0.4116
+   31 V     0.3762
+   32 L     0.3668
+   33 S     0.4420
+   34 P     0.4749
+   35 L     0.4556
+   36 P     0.4458
+   37 S     0.5084
+   38 Q     0.5043
+   39 A     0.5043
+   40 M     0.5331
+   41 D     0.4781
+   42 D     0.5623
+   43 L     0.6604
+   44 M     0.5900
+   45 L     0.5084
+   46 S     0.5802
+   47 P     0.5802
+   48 D     0.6174
+   49 D     0.6124
+   50 I     0.6374
+   51 E     0.6827
+   52 Q     0.6906
+   53 W     0.7034
+   54 F     0.7418
+   55 T     0.7817
+   56 E     0.8311
+   57 D     0.8001
+   58 P     0.7912
+   59 G     0.7912
+   60 P     0.7540
+   61 D     0.7951
+   62 E     0.7817
+   63 A     0.7644
+   64 P     0.7912
+   65 R     0.8311
+   66 M     0.8311
+   67 P     0.7912
+   68 E     0.7688
+   69 A     0.7418
+   70 A     0.7232
+   71 P     0.7147
+   72 P     0.6906
+   73 V     0.6715
+   74 A     0.6681
+   75 P     0.6374
+   76 A     0.6516
+   77 P     0.6650
+   78 A     0.6604
+   79 A     0.6124
+   80 P     0.6334
+   81 T     0.6374
+   82 P     0.5514
+   83 A     0.5514
+   84 A     0.5412
+   85 P     0.5514
+   86 A     0.5374
+   87 P     0.5473
+   88 A     0.4825
+   89 P     0.5084
+   90 S     0.5126
+   91 W     0.5229
+   92 P     0.5126
+   93 L     0.5043
+   94 S     0.4379
+   95 S     0.4781
+   96 S     0.4600
+   97 V     0.4781
+   98 P     0.3806
+   99 S     0.4078
+  100 Q     0.3096
+  101 K     0.3263
+  102 T     0.3399
+  103 Y     0.3184
+  104 Q     0.2820
+  105 G     0.2167
+  106 S     0.2122
+  107 Y     0.2080
+  108 G     0.2558
+  109 F     0.2255
+  110 R     0.1921
+  111 L     0.1766
+  112 G     0.1732
+  113 F     0.1205
+  114 L     0.1732
+  115 H     0.0723
+  116 S     0.0701
+  117 G     0.0405
+  118 T     0.0643
+  119 A     0.0771
+  120 K     0.1018
+  121 S     0.0587
+  122 V     0.0884
+  123 T     0.0884
+  124 C     0.1240
+  125 T     0.1088
+  126 Y     0.0554
+  127 S     0.0607
+  128 P     0.0441
+  129 A     0.0387
+  130 L     0.0490
+  131 N     0.0478
+  132 K     0.0231
+  133 M     0.0414
+  134 F     0.0297
+  135 C     0.0701
+  136 Q     0.0502
+  137 L     0.0567
+  138 A     0.0405
+  139 K     0.0363
+  140 T     0.0464
+  141 C     0.0701
+  142 P     0.0832
+  143 V     0.0991
+  144 Q     0.1322
+  145 L     0.1998
+  146 W     0.3146
+  147 V     0.3146
+  148 D     0.3184
+  149 S     0.3578
+  150 T     0.3311
+  151 P     0.3184
+  152 P     0.4203
+  153 P     0.3578
+  154 G     0.3578
+  155 T     0.3578
+  156 R     0.4282
+  157 V     0.5084
+  158 R     0.5802
+  159 A     0.5667
+  160 M     0.5473
+  161 A     0.5514
+  162 I     0.5331
+  163 Y     0.4749
+  164 K     0.4037
+  165 Q     0.4116
+  166 S     0.4203
+  167 Q     0.3184
+  168 H     0.4037
+  169 M     0.4037
+  170 T     0.4282
+  171 E     0.4513
+  172 V     0.4749
+  173 V     0.4116
+  174 R     0.4825
+  175 R     0.4918
+  176 C     0.4879
+  177 P     0.4918
+  178 H     0.4825
+  179 H     0.4245
+  180 E     0.4333
+  181 R     0.4651
+  182 C     0.4879
+  183 S     0.5412
+  184 D     0.5802
+  185 S     0.5126
+  186 D     0.4458
+  187 G     0.5374
+  188 L     0.4600
+  189 A     0.4600
+  190 P     0.4600
+  191 P     0.4600
+  192 Q     0.3992
+  193 H     0.4879
+  194 L     0.4282
+  195 I     0.4333
+  196 R     0.3668
+  197 V     0.3005
+  198 E     0.3096
+  199 G     0.3847
+  200 N     0.3939
+  201 L     0.3630
+  202 R     0.3359
+  203 V     0.2292
+  204 E     0.2292
+  205 Y     0.2748
+  206 L     0.3399
+  207 D     0.2963
+  208 D     0.2963
+  209 R     0.2385
+  210 N     0.2531
+  211 T     0.1805
+  212 F     0.2531
+  213 R     0.2786
+  214 H     0.3456
+  215 S     0.3399
+  216 V     0.3491
+  217 V     0.4037
+  218 V     0.3885
+  219 P     0.3806
+  220 Y     0.2748
+  221 E     0.2700
+  222 P     0.2657
+  223 P     0.2963
+  224 E     0.2865
+  225 V     0.2167
+  226 G     0.2080
+  227 S     0.1844
+  228 D     0.2041
+  229 C     0.1602
+  230 T     0.1416
+  231 T     0.2041
+  232 I     0.1958
+  233 H     0.1018
+  234 Y     0.0744
+  235 N     0.0677
+  236 Y     0.0909
+  237 M     0.0789
+  238 C     0.0723
+  239 N     0.0660
+  240 S     0.1322
+  241 S     0.1532
+  242 C     0.1060
+  243 M     0.1018
+  244 G     0.1060
+  245 G     0.1150
+  246 M     0.0789
+  247 N     0.1266
+  248 R     0.0965
+  249 R     0.1732
+  250 P     0.1766
+  251 I     0.1766
+  252 L     0.1805
+  253 T     0.2820
+  254 I     0.3096
+  255 I     0.2602
+  256 T     0.2080
+  257 L     0.2333
+  258 E     0.2385
+  259 D     0.2385
+  260 S     0.2432
+  261 S     0.1602
+  262 G     0.2122
+  263 N     0.2385
+  264 L     0.2333
+  265 L     0.2558
+  266 G     0.2432
+  267 R     0.2292
+  268 N     0.2209
+  269 S     0.2483
+  270 F     0.2531
+  271 E     0.2432
+  272 V     0.2432
+  273 R     0.2432
+  274 V     0.2432
+  275 C     0.3053
+  276 A     0.3630
+  277 C     0.3578
+  278 P     0.3630
+  279 G     0.3668
+  280 R     0.3263
+  281 D     0.3992
+  282 R     0.4037
+  283 R     0.4556
+  284 T     0.4703
+  285 E     0.5173
+  286 E     0.6219
+  287 E     0.6412
+  288 N     0.7275
+  289 L     0.6984
+  290 R     0.6756
+  291 K     0.7079
+  292 K     0.7192
+  293 G     0.7342
+  294 E     0.7458
+  295 P     0.7501
+  296 H     0.7540
+  297 H     0.7605
+  298 E     0.7605
+  299 L     0.7342
+  300 P     0.7912
+  301 P     0.7951
+  302 G     0.8036
+  303 S     0.8074
+  304 T     0.8074
+  305 K     0.8118
+  306 R     0.7951
+  307 A     0.8118
+  308 L     0.8242
+  309 P     0.8488
+  310 N     0.8650
+  311 N     0.8488
+  312 T     0.8311
+  313 S     0.8424
+  314 S     0.7912
+  315 S     0.7951
+  316 P     0.8001
+  317 Q     0.8001
+  318 P     0.7458
+  319 K     0.7192
+  320 K     0.6984
+  321 K     0.6412
+  322 P     0.6516
+  323 L     0.5900
+  324 D     0.5802
+  325 G     0.5802
+  326 E     0.5762
+  327 Y     0.5623
+  328 F     0.5374
+  329 T     0.4556
+  330 L     0.4556
+  331 Q     0.4333
+  332 I     0.3762
+  333 R     0.3456
+  334 G     0.4037
+  335 R     0.3311
+  336 E     0.3263
+  337 R     0.3311
+  338 F     0.3717
+  339 E     0.3762
+  340 M     0.3717
+  341 F     0.3668
+  342 R     0.3491
+  343 E     0.4203
+  344 L     0.4037
+  345 N     0.4149
+  346 E     0.4037
+  347 A     0.3992
+  348 L     0.4078
+  349 E     0.4651
+  350 L     0.4967
+  351 K     0.5229
+  352 D     0.5802
+  353 A     0.5802
+  354 Q     0.5846
+  355 A     0.6293
+  356 G     0.6412
+  357 K     0.6374
+  358 E     0.6604
+  359 P     0.7317
+  360 G     0.7034
+  361 G     0.7573
+  362 S     0.7573
+  363 R     0.7573
+  364 A     0.7772
+  365 H     0.7605
+  366 S     0.8036
+  367 S     0.7951
+  368 H     0.7817
+  369 L     0.7869
+  370 K     0.7724
+  371 S     0.7869
+  372 K     0.7869
+  373 K     0.7951
+  374 G     0.7644
+  375 Q     0.7912
+  376 S     0.7275
+  377 T     0.7342
+  378 S     0.7275
+  379 R     0.6984
+  380 H     0.7342
+  381 K     0.7605
+  382 K     0.7418
+  383 L     0.7418
+  384 M     0.7275
+  385 F     0.7573
+  386 K     0.7724
+  387 T     0.8118
+  388 E     0.8521
+  389 G     0.8823
+  390 P     0.8984
+  391 D     0.9119
+  392 S     0.9316
+  393 D     0.9512
+# P53_HUMAN
+    1 M     0.9854
+    2 E     0.9883
+    3 E     0.9711
+    4 P     0.9677
+    5 Q     0.9725
+    6 S     0.9777
+    7 D     0.9777
+    8 P     0.9396
+    9 S     0.9362
+   10 V     0.9503
+   11 E     0.9211
+   12 P     0.8741
+   13 P     0.8421
+   14 L     0.7547
+   15 S     0.6620
+   16 Q     0.6576
+   17 E     0.6906
+   18 T     0.6620
+   19 F     0.6427
+   20 S     0.5807
+   21 D     0.5707
+   22 L     0.5382
+   23 W     0.5342
+   24 K     0.4476
+   25 L     0.5296
+   26 L     0.5254
+   27 P     0.5211
+   28 E     0.4725
+   29 N     0.4330
+   30 N     0.5533
+   31 V     0.5854
+   32 L     0.4864
+   33 S     0.5139
+   34 P     0.5533
+   35 L     0.5577
+   36 P     0.6576
+   37 S     0.7547
+   38 Q     0.7595
+   39 A     0.6322
+   40 M     0.6531
+   41 D     0.6576
+   42 D     0.6043
+   43 L     0.5533
+   44 M     0.5665
+   45 L     0.5620
+   46 S     0.6755
+   47 P     0.6712
+   48 D     0.6906
+   49 D     0.6906
+   50 I     0.7459
+   51 E     0.8013
+   52 Q     0.7505
+   53 W     0.7459
+   54 F     0.8050
+   55 T     0.8013
+   56 E     0.8792
+   57 D     0.8966
+   58 P     0.8655
+   59 G     0.8198
+   60 P     0.8198
+   61 D     0.9013
+   62 E     0.8421
+   63 A     0.8013
+   64 P     0.9013
+   65 R     0.9415
+   66 M     0.9488
+   67 P     0.9269
+   68 E     0.9013
+   69 A     0.9013
+   70 A     0.8991
+   71 P     0.8991
+   72 P     0.8681
+   73 V     0.8313
+   74 A     0.8713
+   75 P     0.8313
+   76 A     0.8565
+   77 P     0.8655
+   78 A     0.8655
+   79 A     0.8462
+   80 P     0.7718
+   81 T     0.8162
+   82 P     0.7250
+   83 A     0.6948
+   84 A     0.7547
+   85 P     0.7718
+   86 A     0.6851
+   87 P     0.7369
+   88 A     0.7080
+   89 P     0.7505
+   90 S     0.7672
+   91 W     0.7459
+   92 P     0.6269
+   93 L     0.6183
+   94 S     0.6531
+   95 S     0.6712
+   96 S     0.5296
+   97 V     0.5577
+   98 P     0.4292
+   99 S     0.4476
+  100 Q     0.3667
+  101 K     0.3740
+  102 T     0.3704
+  103 Y     0.2884
+  104 Q     0.3392
+  105 G     0.3392
+  106 S     0.3460
+  107 Y     0.3529
+  108 G     0.3807
+  109 F     0.3566
+  110 R     0.3566
+  111 L     0.2884
+  112 G     0.2988
+  113 F     0.2064
+  114 L     0.2988
+  115 H     0.2002
+  116 S     0.1942
+  117 G     0.2129
+  118 T     0.2817
+  119 A     0.2164
+  120 K     0.3182
+  121 S     0.3149
+  122 V     0.3460
+  123 T     0.2503
+  124 C     0.2470
+  125 T     0.3215
+  126 Y     0.2645
+  127 S     0.2470
+  128 P     0.2364
+  129 A     0.2364
+  130 L     0.1643
+  131 N     0.1823
+  132 K     0.1449
+  133 M     0.2002
+  134 F     0.1476
+  135 C     0.1476
+  136 Q     0.1115
+  137 L     0.1881
+  138 A     0.1881
+  139 K     0.1731
+  140 T     0.2034
+  141 C     0.2817
+  142 P     0.2884
+  143 V     0.2951
+  144 Q     0.3286
+  145 L     0.4220
+  146 W     0.4685
+  147 V     0.4582
+  148 D     0.4979
+  149 S     0.4864
+  150 T     0.4685
+  151 P     0.3948
+  152 P     0.4119
+  153 P     0.3910
+  154 G     0.4507
+  155 T     0.4292
+  156 R     0.5017
+  157 V     0.6089
+  158 R     0.6269
+  159 A     0.6089
+  160 M     0.6322
+  161 A     0.5620
+  162 I     0.4831
+  163 Y     0.4685
+  164 K     0.4541
+  165 Q     0.3356
+  166 S     0.3494
+  167 Q     0.3426
+  168 H     0.3840
+  169 M     0.3910
+  170 T     0.4186
+  171 E     0.3286
+  172 V     0.3460
+  173 V     0.4220
+  174 R     0.5098
+  175 R     0.5176
+  176 C     0.5017
+  177 P     0.4409
+  178 H     0.4051
+  179 H     0.4256
+  180 E     0.4801
+  181 R     0.4831
+  182 C     0.4652
+  183 S     0.4541
+  184 D     0.4409
+  185 S     0.4369
+  186 D     0.3840
+  187 G     0.5139
+  188 L     0.4901
+  189 A     0.5017
+  190 P     0.4409
+  191 P     0.4292
+  192 Q     0.3774
+  193 H     0.5139
+  194 L     0.4369
+  195 I     0.3667
+  196 R     0.3774
+  197 V     0.3740
+  198 E     0.3774
+  199 G     0.4476
+  200 N     0.4766
+  201 L     0.3667
+  202 R     0.3460
+  203 V     0.3426
+  204 E     0.3426
+  205 Y     0.3599
+  206 L     0.3840
+  207 D     0.3392
+  208 D     0.4051
+  209 R     0.3249
+  210 N     0.3356
+  211 T     0.3494
+  212 F     0.4292
+  213 R     0.4369
+  214 H     0.4409
+  215 S     0.4330
+  216 V     0.5139
+  217 V     0.5992
+  218 V     0.4619
+  219 P     0.4582
+  220 Y     0.4619
+  221 E     0.3910
+  222 P     0.3910
+  223 P     0.4087
+  224 E     0.4119
+  225 V     0.3426
+  226 G     0.3286
+  227 S     0.2680
+  228 D     0.3149
+  229 C     0.3566
+  230 T     0.3392
+  231 T     0.3117
+  232 I     0.2849
+  233 H     0.2680
+  234 Y     0.2503
+  235 N     0.2258
+  236 Y     0.2783
+  237 M     0.2752
+  238 C     0.2752
+  239 N     0.2884
+  240 S     0.3426
+  241 S     0.2849
+  242 C     0.2849
+  243 M     0.2884
+  244 G     0.2258
+  245 G     0.3019
+  246 M     0.2364
+  247 N     0.3149
+  248 R     0.3356
+  249 R     0.4441
+  250 P     0.4369
+  251 I     0.4369
+  252 L     0.4441
+  253 T     0.4940
+  254 I     0.4619
+  255 I     0.4619
+  256 T     0.4582
+  257 L     0.4831
+  258 E     0.4766
+  259 D     0.3948
+  260 S     0.4017
+  261 S     0.3356
+  262 G     0.3948
+  263 N     0.4087
+  264 L     0.2988
+  265 L     0.3426
+  266 G     0.3053
+  267 R     0.3249
+  268 N     0.3840
+  269 S     0.3774
+  270 F     0.3774
+  271 E     0.3774
+  272 V     0.3774
+  273 R     0.3807
+  274 V     0.3807
+  275 C     0.4369
+  276 A     0.4979
+  277 C     0.5055
+  278 P     0.4541
+  279 G     0.4476
+  280 R     0.4441
+  281 D     0.5296
+  282 R     0.5211
+  283 R     0.5807
+  284 T     0.6183
+  285 E     0.6851
+  286 E     0.8162
+  287 E     0.8375
+  288 N     0.8828
+  289 L     0.8828
+  290 R     0.8991
+  291 K     0.8991
+  292 K     0.8942
+  293 G     0.8966
+  294 E     0.8942
+  295 P     0.8920
+  296 H     0.8765
+  297 H     0.8235
+  298 E     0.8421
+  299 L     0.8421
+  300 P     0.8942
+  301 P     0.8942
+  302 G     0.8966
+  303 S     0.8991
+  304 T     0.8966
+  305 K     0.9081
+  306 R     0.9013
+  307 A     0.9126
+  308 L     0.9057
+  309 P     0.8991
+  310 N     0.9287
+  311 N     0.9308
+  312 T     0.8828
+  313 S     0.8853
+  314 S     0.8853
+  315 S     0.8872
+  316 P     0.8313
+  317 Q     0.7459
+  318 P     0.7672
+  319 K     0.7672
+  320 K     0.7547
+  321 K     0.6806
+  322 P     0.6712
+  323 L     0.6661
+  324 D     0.6755
+  325 G     0.6806
+  326 E     0.6906
+  327 Y     0.5577
+  328 F     0.5456
+  329 T     0.5098
+  330 L     0.4369
+  331 Q     0.4441
+  332 I     0.4541
+  333 R     0.3807
+  334 G     0.4409
+  335 R     0.4409
+  336 E     0.4292
+  337 R     0.3740
+  338 F     0.4476
+  339 E     0.4725
+  340 M     0.4685
+  341 F     0.5254
+  342 R     0.4940
+  343 E     0.5758
+  344 L     0.5620
+  345 N     0.5665
+  346 E     0.5620
+  347 A     0.5577
+  348 L     0.5901
+  349 E     0.6991
+  350 L     0.6991
+  351 K     0.7080
+  352 D     0.7951
+  353 A     0.7799
+  354 Q     0.7916
+  355 A     0.8421
+  356 G     0.8313
+  357 K     0.8421
+  358 E     0.8125
+  359 P     0.8596
+  360 G     0.8565
+  361 G     0.8920
+  362 S     0.8920
+  363 R     0.8942
+  364 A     0.9151
+  365 H     0.9057
+  366 S     0.9151
+  367 S     0.9126
+  368 H     0.9151
+  369 L     0.9230
+  370 K     0.9039
+  371 S     0.8991
+  372 K     0.8681
+  373 K     0.8681
+  374 G     0.7982
+  375 Q     0.8085
+  376 S     0.7951
+  377 T     0.7982
+  378 S     0.8050
+  379 R     0.8198
+  380 H     0.8655
+  381 K     0.8681
+  382 K     0.8713
+  383 L     0.8655
+  384 M     0.8655
+  385 F     0.8596
+  386 K     0.8343
+  387 T     0.8313
+  388 E     0.8235
+  389 G     0.8162
+  390 P     0.8085
+  391 D     0.7755
+  392 S     0.7718
+  393 D     0.7629