JAL-957 first attempt to build examples with jbake
authorJim Procter <jimp@jims-mbp.home>
Fri, 17 Jan 2014 08:26:33 +0000 (08:26 +0000)
committerJim Procter <jimp@jims-mbp.home>
Fri, 17 Jan 2014 08:26:33 +0000 (08:26 +0000)
61 files changed:
examples-jbake/assets/1gaq.txt [new file with mode: 0755]
examples-jbake/assets/PF00111_seed.stk [new file with mode: 0644]
examples-jbake/assets/RF00031_folded.stk [new file with mode: 0644]
examples-jbake/assets/css/ie6.css [new file with mode: 0644]
examples-jbake/assets/css/ie7.css [new file with mode: 0644]
examples-jbake/assets/css/reset.css [new file with mode: 0644]
examples-jbake/assets/css/style.css [new file with mode: 0644]
examples-jbake/assets/exampleFeatures.txt [new file with mode: 0755]
examples-jbake/assets/exampleFile.jar [new file with mode: 0755]
examples-jbake/assets/exampleFile_2_3.jar [new file with mode: 0644]
examples-jbake/assets/exampleFile_2_7.jar [new file with mode: 0644]
examples-jbake/assets/ferredoxin.nw [new file with mode: 0755]
examples-jbake/assets/globins.jar [new file with mode: 0755]
examples-jbake/assets/images/applet.jpg [new file with mode: 0644]
examples-jbake/assets/images/com-arrow-3-small.png [new file with mode: 0644]
examples-jbake/assets/images/desk.jpg [new file with mode: 0644]
examples-jbake/assets/images/dev-arrow-3-normal.png [new file with mode: 0644]
examples-jbake/assets/images/jvlite-arrow-3-small.png [new file with mode: 0644]
examples-jbake/assets/images/logo.jpg [new file with mode: 0644]
examples-jbake/assets/images/normal-arrow-3-normal.png [new file with mode: 0644]
examples-jbake/assets/images/train-arrow-3-normal.png [new file with mode: 0644]
examples-jbake/assets/jalviewApplet.jar [new file with mode: 0644]
examples-jbake/assets/javascript/deployJava.js [new file with mode: 0644]
examples-jbake/assets/javascript/jalview.js [new file with mode: 0644]
examples-jbake/assets/javascript/jquery-1.4.4.min.js [new file with mode: 0644]
examples-jbake/assets/javascript/jquery.blockUI.js [new file with mode: 0644]
examples-jbake/assets/javascript/jquery.timer.js [new file with mode: 0644]
examples-jbake/assets/javascript/jshashtable-2.1.js [new file with mode: 0644]
examples-jbake/assets/jmol/Jmol.js [new file with mode: 0644]
examples-jbake/assets/jpred_msa.fasta [new file with mode: 0755]
examples-jbake/assets/jpred_msa.seq.concise [new file with mode: 0755]
examples-jbake/assets/plantfdx.fa [new file with mode: 0644]
examples-jbake/assets/plantfdx.features [new file with mode: 0644]
examples-jbake/assets/uniref50.fa [new file with mode: 0755]
examples-jbake/assets/uniref50_mz.fa [new file with mode: 0644]
examples-jbake/content/appletParameters.html [new file with mode: 0644]
examples-jbake/content/applets.html [new file with mode: 0644]
examples-jbake/content/embedded.html [new file with mode: 0644]
examples-jbake/content/embeddedWJmol.html [new file with mode: 0644]
examples-jbake/content/formComplete.html [new file with mode: 0644]
examples-jbake/content/javascriptLaunch.html [new file with mode: 0644]
examples-jbake/content/linkedapplets_ng.html [new file with mode: 0644]
examples-jbake/jbake.properties [new file with mode: 0644]
examples-jbake/jbake.properties~ [new file with mode: 0644]
examples-jbake/templates/archive.ftl [new file with mode: 0644]
examples-jbake/templates/feed.ftl [new file with mode: 0644]
examples-jbake/templates/footer.ftl [new file with mode: 0644]
examples-jbake/templates/header.ftl [new file with mode: 0644]
examples-jbake/templates/index.ftl [new file with mode: 0644]
examples-jbake/templates/jvl_embedded.ftl [new file with mode: 0644]
examples-jbake/templates/jvl_embeddedWJmol.ftl [new file with mode: 0644]
examples-jbake/templates/jvl_embeddedWJmol_hdr.ftl [new file with mode: 0644]
examples-jbake/templates/jvl_examples.ftl [new file with mode: 0644]
examples-jbake/templates/jvl_formComplete.ftl [new file with mode: 0644]
examples-jbake/templates/jvl_javascriptLaunch.ftl [new file with mode: 0644]
examples-jbake/templates/jvl_linkedapplets_ng.ftl [new file with mode: 0644]
examples-jbake/templates/macros.ftl [new file with mode: 0644]
examples-jbake/templates/menu.ftl [new file with mode: 0644]
examples-jbake/templates/page.ftl [new file with mode: 0644]
examples-jbake/templates/post.ftl [new file with mode: 0644]
examples-jbake/templates/sidebar.ftl [new file with mode: 0644]

diff --git a/examples-jbake/assets/1gaq.txt b/examples-jbake/assets/1gaq.txt
new file mode 100755 (executable)
index 0000000..69d17a5
--- /dev/null
@@ -0,0 +1,691 @@
+HEADER    OXIDOREDUCTASE/ELECTRON TRANSPORT       08-MAY-00   1GAQ \r
+ATOM      2  CA  GLU A  19      20.491  30.713  36.290  1.00 74.29           C  \r
+ATOM     11  CA  SER A  20      24.056  29.774  37.264  1.00 72.09           C  \r
+ATOM     17  CA  LYS A  21      27.517  31.289  37.563  1.00 70.09           C  \r
+ATOM     26  CA  LYS A  22      28.794  27.865  36.481  1.00 68.64           C  \r
+ATOM     35  CA  GLN A  23      29.484  26.806  32.884  1.00 70.46           C  \r
+ATOM     44  CA  GLU A  24      26.420  25.175  31.360  1.00 72.08           C  \r
+ATOM     53  CA  GLU A  25      26.736  26.049  27.683  1.00 70.43           C  \r
+ATOM     62  CA  GLY A  26      28.299  22.912  26.233  1.00 63.14           C  \r
+ATOM     66  CA  VAL A  27      26.863  20.704  28.982  1.00 54.50           C  \r
+ATOM     73  CA  VAL A  28      25.030  17.390  28.655  1.00 48.32           C  \r
+ATOM     80  CA  THR A  29      23.728  14.677  30.991  1.00 44.86           C  \r
+ATOM     87  CA  ASN A  30      22.327  11.164  30.703  1.00 45.42           C  \r
+ATOM     95  CA  LEU A  31      23.332  10.459  27.102  1.00 45.42           C  \r
+ATOM    103  CA  TYR A  32      23.549   6.898  28.380  1.00 45.88           C  \r
+ATOM    115  CA  LYS A  33      21.656   5.321  31.262  1.00 47.27           C  \r
+ATOM    124  CA  PRO A  34      21.991   2.046  33.248  1.00 48.99           C  \r
+ATOM    131  CA  LYS A  35      19.339   0.560  30.970  1.00 52.75           C  \r
+ATOM    140  CA  GLU A  36      21.580   0.855  27.886  1.00 53.33           C  \r
+ATOM    149  CA  PRO A  37      25.154   2.015  28.678  1.00 47.54           C  \r
+ATOM    156  CA  TYR A  38      27.929   2.872  26.249  1.00 41.98           C  \r
+ATOM    168  CA  VAL A  39      30.355  -0.017  25.909  1.00 41.48           C  \r
+ATOM    175  CA  GLY A  40      33.823   1.485  25.966  1.00 37.59           C  \r
+ATOM    179  CA  ARG A  41      37.165  -0.277  26.122  1.00 39.77           C  \r
+ATOM    190  CA  CYS A  42      40.148  -0.029  28.442  1.00 36.51           C  \r
+ATOM    196  CA  LEU A  43      43.095   1.441  26.554  1.00 36.13           C  \r
+ATOM    204  CA  LEU A  44      45.231   2.023  29.649  1.00 33.55           C  \r
+ATOM    212  CA  ASN A  45      45.140   1.026  33.307  1.00 27.79           C  \r
+ATOM    220  CA  THR A  46      48.056   1.800  35.617  1.00 28.75           C  \r
+ATOM    227  CA  LYS A  47      48.542   1.776  39.388  1.00 30.31           C  \r
+ATOM    236  CA  ILE A  48      49.564   5.317  40.376  1.00 31.32           C  \r
+ATOM    244  CA  THR A  49      50.339   4.682  44.059  1.00 37.62           C  \r
+ATOM    251  CA  GLY A  50      53.585   3.317  45.460  1.00 44.49           C  \r
+ATOM    255  CA  ASP A  51      53.706  -0.448  46.087  1.00 52.89           C  \r
+ATOM    263  CA  ASP A  52      53.910   0.545  49.751  1.00 55.23           C  \r
+ATOM    271  CA  ALA A  53      50.816   2.767  50.056  1.00 53.34           C  \r
+ATOM    276  CA  PRO A  54      47.904   1.940  52.405  1.00 50.60           C  \r
+ATOM    283  CA  GLY A  55      45.420   1.579  49.561  1.00 50.35           C  \r
+ATOM    287  CA  GLU A  56      46.098   1.286  45.836  1.00 42.53           C  \r
+ATOM    296  CA  THR A  57      44.534   3.816  43.480  1.00 41.14           C  \r
+ATOM    303  CA  TRP A  58      44.540   3.423  39.708  1.00 35.60           C  \r
+ATOM    317  CA  HIS A  59      44.468   5.853  36.796  1.00 31.89           C  \r
+ATOM    327  CA  MET A  60      42.658   4.227  33.866  1.00 31.65           C  \r
+ATOM    335  CA  VAL A  61      41.716   5.345  30.350  1.00 30.43           C  \r
+ATOM    342  CA  PHE A  62      38.669   4.172  28.360  1.00 34.36           C  \r
+ATOM    353  CA  SER A  63      37.657   4.908  24.772  1.00 34.69           C  \r
+ATOM    359  CA  THR A  64      34.448   6.828  23.951  1.00 36.96           C  \r
+ATOM    366  CA  GLU A  65      34.691   7.644  20.254  1.00 40.08           C  \r
+ATOM    375  CA  GLY A  66      33.742  11.183  21.285  1.00 40.22           C  \r
+ATOM    379  CA  LYS A  67      30.272   9.763  22.003  1.00 41.93           C  \r
+ATOM    388  CA  ILE A  68      30.279  11.116  25.577  1.00 41.52           C  \r
+ATOM    396  CA  PRO A  69      30.791  14.926  25.537  1.00 42.35           C  \r
+ATOM    403  CA  TYR A  70      31.228  15.232  29.299  1.00 39.84           C  \r
+ATOM    415  CA  ARG A  71      32.639  18.451  30.768  1.00 44.14           C  \r
+ATOM    426  CA  GLU A  72      35.122  19.278  33.515  1.00 43.82           C  \r
+ATOM    435  CA  GLY A  73      33.472  18.458  36.835  1.00 41.97           C  \r
+ATOM    439  CA  GLN A  74      30.929  15.874  35.657  1.00 37.19           C  \r
+ATOM    448  CA  SER A  75      31.285  12.124  36.138  1.00 38.28           C  \r
+ATOM    454  CA  ILE A  76      30.458   8.792  34.539  1.00 36.84           C  \r
+ATOM    462  CA  GLY A  77      28.983   5.620  35.918  1.00 35.39           C  \r
+ATOM    466  CA  VAL A  78      30.311   2.108  35.530  1.00 32.05           C  \r
+ATOM    473  CA  ILE A  79      28.458  -1.201  35.591  1.00 32.67           C  \r
+ATOM    481  CA  ALA A  80      30.745  -4.018  36.644  1.00 35.36           C  \r
+ATOM    486  CA  ASP A  81      30.359  -7.373  34.872  1.00 38.72           C  \r
+ATOM    494  CA  GLY A  82      28.308 -10.332  36.110  1.00 45.79           C  \r
+ATOM    498  CA  VAL A  83      25.820 -10.242  39.001  1.00 52.24           C  \r
+ATOM    505  CA  ASP A  84      25.838 -10.250  42.834  1.00 60.54           C  \r
+ATOM    513  CA  LYS A  85      25.014 -13.158  45.196  1.00 66.72           C  \r
+ATOM    522  CA  ASN A  86      21.414 -13.062  43.904  1.00 67.37           C  \r
+ATOM    530  CA  GLY A  87      21.724 -13.423  40.136  1.00 64.74           C  \r
+ATOM    534  CA  LYS A  88      20.971  -9.733  39.570  1.00 61.12           C  \r
+ATOM    543  CA  PRO A  89      23.054  -7.201  37.561  1.00 54.68           C  \r
+ATOM    550  CA  HIS A  90      25.224  -4.957  39.755  1.00 44.44           C  \r
+ATOM    560  CA  LYS A  91      23.940  -1.433  40.260  1.00 40.48           C  \r
+ATOM    569  CA  VAL A  92      25.803   1.546  38.843  1.00 38.45           C  \r
+ATOM    576  CA  ARG A  93      28.709   2.986  40.828  1.00 38.93           C  \r
+ATOM    587  CA  LEU A  94      29.778   6.584  40.096  1.00 34.37           C  \r
+ATOM    595  CA  TYR A  95      33.309   7.878  39.513  1.00 30.27           C  \r
+ATOM    607  CA  SER A  96      34.425  11.475  39.057  1.00 29.44           C  \r
+ATOM    613  CA  ILE A  97      36.029  12.090  35.662  1.00 27.61           C  \r
+ATOM    621  CA  ALA A  98      39.769  12.693  36.069  1.00 31.12           C  \r
+ATOM    626  CA  SER A  99      40.393  13.712  32.475  1.00 32.42           C  \r
+ATOM    632  CA  SER A 100      39.566  17.142  31.059  1.00 36.14           C  \r
+ATOM    638  CA  ALA A 101      37.097  17.367  28.154  1.00 41.07           C  \r
+ATOM    643  CA  ILE A 102      39.764  16.549  25.527  1.00 47.65           C  \r
+ATOM    651  CA  GLY A 103      41.172  13.692  27.599  1.00 46.77           C  \r
+ATOM    655  CA  ASP A 104      44.730  12.612  28.289  1.00 43.82           C  \r
+ATOM    663  CA  PHE A 105      45.115  12.065  24.522  1.00 41.52           C  \r
+ATOM    674  CA  GLY A 106      43.862  15.455  23.328  1.00 41.66           C  \r
+ATOM    678  CA  ASP A 107      41.355  13.883  20.926  1.00 40.90           C  \r
+ATOM    686  CA  SER A 108      38.132  14.250  22.954  1.00 42.95           C  \r
+ATOM    692  CA  LYS A 109      37.967  10.535  22.224  1.00 44.74           C  \r
+ATOM    701  CA  THR A 110      38.731   9.184  25.704  1.00 41.09           C  \r
+ATOM    708  CA  VAL A 111      37.728   9.519  29.374  1.00 39.03           C  \r
+ATOM    715  CA  SER A 112      39.912   8.705  32.399  1.00 37.17           C  \r
+ATOM    721  CA  LEU A 113      39.098   7.476  35.935  1.00 32.10           C  \r
+ATOM    729  CA  CYS A 114      40.964   7.578  39.261  1.00 30.65           C  \r
+ATOM    735  CA  VAL A 115      39.724   4.459  41.060  1.00 33.45           C  \r
+ATOM    742  CA  LYS A 116      40.668   3.524  44.628  1.00 34.75           C  \r
+ATOM    751  CA  ARG A 117      40.376  -0.250  45.123  1.00 32.85           C  \r
+ATOM    762  CA  LEU A 118      38.137  -1.094  48.077  1.00 30.50           C  \r
+ATOM    770  CA  ILE A 119      39.376  -3.752  50.459  1.00 34.34           C  \r
+ATOM    778  CA  TYR A 120      38.699  -4.266  54.125  1.00 31.39           C  \r
+ATOM    790  CA  THR A 121      38.264  -7.086  56.567  1.00 28.83           C  \r
+ATOM    797  CA  ASN A 122      34.792  -7.477  58.109  1.00 26.51           C  \r
+ATOM    805  CA  ASP A 123      33.626  -8.382  61.634  1.00 31.58           C  \r
+ATOM    813  CA  ALA A 124      34.191 -12.077  60.901  1.00 27.84           C  \r
+ATOM    818  CA  GLY A 125      37.759 -11.844  59.728  1.00 32.39           C  \r
+ATOM    822  CA  GLU A 126      36.809 -12.146  56.073  1.00 35.82           C  \r
+ATOM    831  CA  ILE A 127      38.655  -9.932  53.598  1.00 38.42           C  \r
+ATOM    839  CA  VAL A 128      36.025  -8.261  51.421  1.00 33.73           C  \r
+ATOM    846  CA  LYS A 129      36.482  -6.484  48.090  1.00 31.87           C  \r
+ATOM    855  CA  GLY A 130      34.363  -3.680  46.686  1.00 26.91           C  \r
+ATOM    859  CA  VAL A 131      32.680  -5.051  43.569  1.00 27.89           C  \r
+ATOM    866  CA  CYS A 132      33.074  -2.246  41.018  1.00 28.46           C  \r
+ATOM    872  CA  SER A 133      36.266  -0.553  42.213  1.00 31.33           C  \r
+ATOM    878  CA  ASN A 134      37.861  -3.983  41.984  1.00 30.29           C  \r
+ATOM    886  CA  PHE A 135      36.318  -4.795  38.623  1.00 31.48           C  \r
+ATOM    897  CA  LEU A 136      37.926  -1.553  37.520  1.00 27.81           C  \r
+ATOM    905  CA  CYS A 137      41.417  -1.976  38.955  1.00 25.91           C  \r
+ATOM    911  CA  ASP A 138      41.605  -5.419  37.338  1.00 30.22           C  \r
+ATOM    919  CA  LEU A 139      40.462  -4.306  33.874  1.00 32.69           C  \r
+ATOM    927  CA  GLN A 140      42.851  -5.511  31.186  1.00 36.80           C  \r
+ATOM    936  CA  PRO A 141      43.380  -3.220  28.170  1.00 36.16           C  \r
+ATOM    943  CA  GLY A 142      40.864  -4.420  25.586  1.00 31.10           C  \r
+ATOM    947  CA  ASP A 143      38.129  -5.298  28.055  1.00 30.62           C  \r
+ATOM    955  CA  ASN A 144      34.690  -3.847  27.645  1.00 33.52           C  \r
+ATOM    963  CA  VAL A 145      33.430  -1.522  30.361  1.00 37.08           C  \r
+ATOM    970  CA  GLN A 146      29.817  -0.374  30.523  1.00 37.65           C  \r
+ATOM    979  CA  ILE A 147      29.547   3.413  31.045  1.00 30.95           C  \r
+ATOM    987  CA  THR A 148      26.637   5.791  31.832  1.00 29.95           C  \r
+ATOM    994  CA  GLY A 149      26.297   9.581  31.843  1.00 32.81           C  \r
+ATOM    998  CA  PRO A 150      27.785  12.148  31.800  1.00 34.98           C  \r
+ATOM   1005  CA  VAL A 151      26.376  12.668  35.275  1.00 36.53           C  \r
+ATOM   1012  CA  GLY A 152      26.196  15.756  37.474  1.00 43.09           C  \r
+ATOM   1016  CA  LYS A 153      26.048  19.528  37.068  1.00 48.37           C  \r
+ATOM   1025  CA  GLU A 154      26.921  20.540  40.633  1.00 49.70           C  \r
+ATOM   1034  CA  MET A 155      30.710  20.266  40.235  1.00 47.30           C  \r
+ATOM   1042  CA  LEU A 156      30.882  22.020  36.869  1.00 50.36           C  \r
+ATOM   1050  CA  MET A 157      33.362  24.883  36.404  1.00 55.29           C  \r
+ATOM   1058  CA  PRO A 158      32.521  28.612  36.605  1.00 54.88           C  \r
+ATOM   1065  CA  LYS A 159      32.291  30.776  33.464  1.00 54.92           C  \r
+ATOM   1074  CA  ASP A 160      34.497  33.503  34.939  1.00 57.22           C  \r
+ATOM   1082  CA  PRO A 161      38.055  32.687  33.759  1.00 58.62           C  \r
+ATOM   1089  CA  ASN A 162      39.524  35.240  36.163  1.00 60.44           C  \r
+ATOM   1097  CA  ALA A 163      37.814  33.910  39.279  1.00 55.80           C  \r
+ATOM   1102  CA  THR A 164      39.596  32.487  42.316  1.00 51.04           C  \r
+ATOM   1109  CA  ILE A 165      38.966  28.771  42.756  1.00 50.26           C  \r
+ATOM   1117  CA  ILE A 166      39.774  26.773  45.885  1.00 47.54           C  \r
+ATOM   1125  CA  MET A 167      39.883  23.014  45.324  1.00 46.38           C  \r
+ATOM   1133  CA  LEU A 168      39.700  20.963  48.522  1.00 42.18           C  \r
+ATOM   1141  CA  ALA A 169      40.377  17.316  47.770  1.00 36.41           C  \r
+ATOM   1146  CA  THR A 170      41.005  14.086  49.622  1.00 32.98           C  \r
+ATOM   1153  CA  GLY A 171      42.027  10.802  48.014  1.00 31.36           C  \r
+ATOM   1157  CA  THR A 172      40.386  10.037  44.680  1.00 30.48           C  \r
+ATOM   1164  CA  GLY A 173      38.640  13.335  45.359  1.00 33.99           C  \r
+ATOM   1168  CA  ILE A 174      41.418  15.036  43.394  1.00 35.66           C  \r
+ATOM   1176  CA  ALA A 175      39.758  13.585  40.300  1.00 36.00           C  \r
+ATOM   1181  CA  PRO A 176      37.445  16.385  39.155  1.00 39.41           C  \r
+ATOM   1188  CA  PHE A 177      40.109  18.971  39.976  1.00 43.21           C  \r
+ATOM   1199  CA  ARG A 178      42.726  17.119  37.955  1.00 41.09           C  \r
+ATOM   1210  CA  SER A 179      40.235  17.536  35.124  1.00 39.92           C  \r
+ATOM   1216  CA  PHE A 180      39.808  21.204  36.009  1.00 39.23           C  \r
+ATOM   1227  CA  LEU A 181      43.528  21.949  35.995  1.00 39.50           C  \r
+ATOM   1235  CA  TRP A 182      44.305  20.081  32.770  1.00 41.47           C  \r
+ATOM   1249  CA  LYS A 183      42.141  22.654  30.972  1.00 48.08           C  \r
+ATOM   1258  CA  MET A 184      43.477  25.547  33.062  1.00 52.79           C  \r
+ATOM   1266  CA  PHE A 185      47.102  25.043  32.014  1.00 57.35           C  \r
+ATOM   1277  CA  PHE A 186      48.075  21.921  30.051  1.00 55.98           C  \r
+ATOM   1288  CA  GLU A 187      45.758  23.173  27.297  1.00 54.44           C  \r
+ATOM   1297  CA  LYS A 188      44.908  26.236  25.196  1.00 51.29           C  \r
+ATOM   1306  CA  HIS A 189      41.395  27.080  24.003  1.00 51.35           C  \r
+ATOM   1316  CA  ASP A 190      40.108  29.972  21.873  1.00 54.30           C  \r
+ATOM   1324  CA  ASP A 191      37.199  30.481  24.249  1.00 53.95           C  \r
+ATOM   1332  CA  TYR A 192      38.816  29.937  27.634  1.00 50.68           C  \r
+ATOM   1344  CA  LYS A 193      41.916  31.388  29.230  1.00 51.00           C  \r
+ATOM   1353  CA  PHE A 194      42.322  30.967  32.956  1.00 52.09           C  \r
+ATOM   1364  CA  ASN A 195      43.672  34.234  34.312  1.00 56.46           C  \r
+ATOM   1372  CA  GLY A 196      42.616  34.078  37.969  1.00 57.17           C  \r
+ATOM   1376  CA  LEU A 197      43.874  31.920  40.843  1.00 57.92           C  \r
+ATOM   1384  CA  GLY A 198      43.549  28.151  41.086  1.00 56.67           C  \r
+ATOM   1388  CA  TRP A 199      44.258  26.886  44.592  1.00 51.55           C  \r
+ATOM   1402  CA  LEU A 200      44.411  23.170  45.379  1.00 49.17           C  \r
+ATOM   1410  CA  PHE A 201      44.558  21.335  48.709  1.00 48.60           C  \r
+ATOM   1421  CA  LEU A 202      45.122  17.570  48.598  1.00 45.34           C  \r
+ATOM   1429  CA  GLY A 203      44.885  15.480  51.742  1.00 48.55           C  \r
+ATOM   1433  CA  VAL A 204      46.225  11.936  51.755  1.00 50.23           C  \r
+ATOM   1440  CA  PRO A 205      47.942   9.740  54.365  1.00 51.51           C  \r
+ATOM   1447  CA  THR A 206      51.284   9.148  52.648  1.00 50.21           C  \r
+ATOM   1454  CA  SER A 207      53.551  10.483  49.894  1.00 49.38           C  \r
+ATOM   1460  CA  SER A 208      53.267   7.061  48.259  1.00 43.49           C  \r
+ATOM   1466  CA  SER A 209      49.588   8.049  48.093  1.00 42.57           C  \r
+ATOM   1472  CA  LEU A 210      49.990  11.424  46.364  1.00 42.65           C  \r
+ATOM   1480  CA  LEU A 211      48.121  11.446  43.035  1.00 39.33           C  \r
+ATOM   1488  CA  TYR A 212      49.516  13.214  39.935  1.00 40.89           C  \r
+ATOM   1500  CA  LYS A 213      52.128  15.234  41.873  1.00 45.88           C  \r
+ATOM   1509  CA  GLU A 214      54.518  15.406  38.899  1.00 53.22           C  \r
+ATOM   1518  CA  GLU A 215      51.680  16.911  36.889  1.00 55.16           C  \r
+ATOM   1527  CA  PHE A 216      50.757  19.475  39.514  1.00 60.55           C  \r
+ATOM   1538  CA  GLY A 217      54.488  20.153  39.524  1.00 66.64           C  \r
+ATOM   1542  CA  LYS A 218      54.575  21.110  35.850  1.00 68.86           C  \r
+ATOM   1551  CA  MET A 219      51.398  23.159  36.265  1.00 66.97           C  \r
+ATOM   1559  CA  LYS A 220      53.138  25.090  39.061  1.00 65.97           C  \r
+ATOM   1568  CA  GLU A 221      55.654  26.250  36.459  1.00 70.02           C  \r
+ATOM   1577  CA  ARG A 222      53.584  26.507  33.294  1.00 73.48           C  \r
+ATOM   1588  CA  ALA A 223      52.005  29.449  35.175  1.00 76.21           C  \r
+ATOM   1593  CA  PRO A 224      53.272  29.877  38.804  1.00 79.25           C  \r
+ATOM   1600  CA  GLU A 225      51.296  33.124  39.020  1.00 81.84           C  \r
+ATOM   1609  CA  ASN A 226      47.873  31.528  38.622  1.00 78.84           C  \r
+ATOM   1617  CA  PHE A 227      48.418  28.176  40.350  1.00 75.28           C  \r
+ATOM   1628  CA  ARG A 228      49.090  27.305  43.996  1.00 72.05           C  \r
+ATOM   1639  CA  VAL A 229      49.165  23.724  45.323  1.00 68.82           C  \r
+ATOM   1646  CA  ASP A 230      49.258  22.581  48.958  1.00 66.54           C  \r
+ATOM   1654  CA  TYR A 231      49.605  18.943  49.968  1.00 60.31           C  \r
+ATOM   1666  CA  ALA A 232      48.551  17.560  53.332  1.00 57.39           C  \r
+ATOM   1671  CA  VAL A 233      50.260  14.228  53.945  1.00 57.14           C  \r
+ATOM   1678  CA  SER A 234      48.465  13.579  57.244  1.00 60.81           C  \r
+ATOM   1684  CA  ARG A 235      50.959  11.010  58.514  1.00 60.74           C  \r
+ATOM   1695  CA  GLU A 236      54.268  12.594  57.481  1.00 59.17           C  \r
+ATOM   1704  CA  GLN A 237      53.494  16.197  58.450  1.00 59.62           C  \r
+ATOM   1713  CA  THR A 238      52.590  18.236  61.521  1.00 63.18           C  \r
+ATOM   1720  CA  ASN A 239      52.019  21.937  62.188  1.00 66.71           C  \r
+ATOM   1728  CA  ALA A 240      52.096  23.767  65.537  1.00 70.06           C  \r
+ATOM   1733  CA  ALA A 241      51.302  21.400  68.410  1.00 72.44           C  \r
+ATOM   1738  CA  GLY A 242      52.383  18.324  66.438  1.00 72.38           C  \r
+ATOM   1742  CA  GLU A 243      48.826  18.169  65.110  1.00 69.71           C  \r
+ATOM   1751  CA  ARG A 244      48.674  15.776  62.148  1.00 67.21           C  \r
+ATOM   1762  CA  MET A 245      48.712  17.796  58.933  1.00 64.20           C  \r
+ATOM   1770  CA  TYR A 246      45.246  17.082  57.556  1.00 60.65           C  \r
+ATOM   1782  CA  ILE A 247      43.617  18.437  54.409  1.00 62.98           C  \r
+ATOM   1790  CA  GLN A 248      42.035  21.001  56.761  1.00 64.64           C  \r
+ATOM   1799  CA  THR A 249      45.057  21.461  59.009  1.00 63.37           C  \r
+ATOM   1806  CA  ARG A 250      46.891  22.664  55.903  1.00 62.47           C  \r
+ATOM   1817  CA  MET A 251      44.123  25.201  55.251  1.00 63.35           C  \r
+ATOM   1825  CA  ALA A 252      44.571  26.305  58.854  1.00 65.73           C  \r
+ATOM   1830  CA  GLU A 253      47.973  27.809  58.076  1.00 65.97           C  \r
+ATOM   1839  CA  TYR A 254      46.267  30.063  55.517  1.00 65.83           C  \r
+ATOM   1851  CA  LYS A 255      42.991  30.559  57.379  1.00 70.30           C  \r
+ATOM   1860  CA  GLU A 256      43.578  34.326  57.320  1.00 73.73           C  \r
+ATOM   1869  CA  GLU A 257      44.189  34.738  53.593  1.00 71.52           C  \r
+ATOM   1878  CA  LEU A 258      41.459  32.202  52.893  1.00 73.38           C  \r
+ATOM   1886  CA  TRP A 259      38.790  34.074  54.853  1.00 76.72           C  \r
+ATOM   1900  CA  GLU A 260      39.721  37.275  53.006  1.00 78.61           C  \r
+ATOM   1909  CA  LEU A 261      38.580  35.553  49.815  1.00 75.71           C  \r
+ATOM   1917  CA  LEU A 262      35.391  33.881  51.047  1.00 73.74           C  \r
+ATOM   1925  CA  LYS A 263      33.562  37.165  50.535  1.00 73.64           C  \r
+ATOM   1934  CA  LYS A 264      34.299  38.143  46.954  1.00 72.48           C  \r
+ATOM   1943  CA  ASP A 265      31.954  37.554  43.993  1.00 69.65           C  \r
+ATOM   1951  CA  ASN A 266      34.660  35.649  42.106  1.00 65.06           C  \r
+ATOM   1959  CA  THR A 267      35.835  33.117  44.683  1.00 58.24           C  \r
+ATOM   1966  CA  TYR A 268      34.459  29.646  43.909  1.00 51.04           C  \r
+ATOM   1978  CA  VAL A 269      35.192  26.827  46.382  1.00 44.95           C  \r
+ATOM   1985  CA  TYR A 270      35.012  23.150  45.368  1.00 44.96           C  \r
+ATOM   1997  CA  MET A 271      35.162  20.122  47.656  1.00 41.72           C  \r
+ATOM   2005  CA  CYS A 272      35.314  16.468  46.632  1.00 37.19           C  \r
+ATOM   2011  CA  GLY A 273      36.343  13.080  47.951  1.00 37.65           C  \r
+ATOM   2015  CA  LEU A 274      36.040  10.886  51.020  1.00 39.39           C  \r
+ATOM   2023  CA  LYS A 275      33.076  12.283  52.955  1.00 44.86           C  \r
+ATOM   2032  CA  GLY A 276      34.322  13.183  56.400  1.00 49.16           C  \r
+ATOM   2036  CA  MET A 277      36.932  15.608  55.168  1.00 53.30           C  \r
+ATOM   2044  CA  GLU A 278      33.917  17.921  55.165  1.00 56.74           C  \r
+ATOM   2053  CA  LYS A 279      33.531  18.089  58.947  1.00 59.30           C  \r
+ATOM   2062  CA  GLY A 280      36.982  19.413  59.776  1.00 58.94           C  \r
+ATOM   2066  CA  ILE A 281      36.705  22.048  57.063  1.00 61.43           C  \r
+ATOM   2074  CA  ASP A 282      33.453  23.402  58.515  1.00 67.06           C  \r
+ATOM   2082  CA  ASP A 283      35.050  23.189  61.972  1.00 74.12           C  \r
+ATOM   2090  CA  ILE A 284      37.991  25.422  61.040  1.00 78.49           C  \r
+ATOM   2098  CA  MET A 285      35.456  27.566  59.201  1.00 82.25           C  \r
+ATOM   2106  CA  VAL A 286      32.941  27.959  62.027  1.00 83.44           C  \r
+ATOM   2113  CA  SER A 287      35.610  29.113  64.469  1.00 83.43           C  \r
+ATOM   2119  CA  LEU A 288      36.927  31.601  61.887  1.00 85.53           C  \r
+ATOM   2127  CA  ALA A 289      33.506  33.025  60.970  1.00 86.85           C  \r
+ATOM   2132  CA  GLU A 290      31.841  32.696  64.387  1.00 89.26           C  \r
+ATOM   2141  CA  LYS A 291      34.438  35.312  65.347  1.00 88.73           C  \r
+ATOM   2150  CA  ASP A 292      33.635  37.891  62.652  1.00 88.03           C  \r
+ATOM   2158  CA  GLY A 293      30.219  37.450  61.081  1.00 87.88           C  \r
+ATOM   2162  CA  ILE A 294      27.319  35.051  61.511  1.00 84.61           C  \r
+ATOM   2170  CA  ASP A 295      27.665  31.329  62.188  1.00 82.45           C  \r
+ATOM   2178  CA  TRP A 296      29.539  29.627  59.355  1.00 80.12           C  \r
+ATOM   2192  CA  PHE A 297      26.527  27.452  58.512  1.00 78.99           C  \r
+ATOM   2203  CA  ASP A 298      24.167  30.241  57.486  1.00 76.37           C  \r
+ATOM   2211  CA  TYR A 299      27.074  31.748  55.561  1.00 74.07           C  \r
+ATOM   2223  CA  LYS A 300      27.679  28.620  53.473  1.00 74.31           C  \r
+ATOM   2232  CA  LYS A 301      24.059  29.146  52.464  1.00 75.97           C  \r
+ATOM   2241  CA  GLN A 302      24.921  32.563  51.018  1.00 75.38           C  \r
+ATOM   2250  CA  LEU A 303      27.896  31.099  49.155  1.00 72.10           C  \r
+ATOM   2258  CA  LYS A 304      25.917  28.207  47.690  1.00 72.08           C  \r
+ATOM   2267  CA  ARG A 305      23.595  31.021  46.594  1.00 74.82           C  \r
+ATOM   2278  CA  GLY A 306      26.071  32.136  43.958  1.00 71.84           C  \r
+ATOM   2282  CA  ASP A 307      27.505  28.682  43.220  1.00 67.23           C  \r
+ATOM   2290  CA  GLN A 308      30.620  29.291  45.346  1.00 60.18           C  \r
+ATOM   2299  CA  TRP A 309      30.585  26.177  47.537  1.00 52.25           C  \r
+ATOM   2313  CA  ASN A 310      29.894  22.997  45.597  1.00 45.03           C  \r
+ATOM   2321  CA  VAL A 311      30.327  19.716  47.403  1.00 39.13           C  \r
+ATOM   2328  CA  GLU A 312      30.507  16.190  46.110  1.00 35.17           C  \r
+ATOM   2337  CA  VAL A 313      31.761  13.957  48.861  1.00 30.12           C  \r
+ATOM   2344  CA  TYR A 314      31.112  10.230  49.021  1.00 28.23           C  \r
+ATOM   2358  CA  ALA B   1       2.311  24.702  44.475  1.00 74.17           C  \r
+ATOM   2363  CA  THR B   2       3.590  24.207  48.055  1.00 74.76           C  \r
+ATOM   2370  CA  TYR B   3       3.069  20.876  49.837  1.00 73.52           C  \r
+ATOM   2382  CA  ASN B   4       3.748  19.874  53.435  1.00 75.75           C  \r
+ATOM   2390  CA  VAL B   5       6.618  17.399  53.868  1.00 75.95           C  \r
+ATOM   2397  CA  LYS B   6       7.769  15.523  56.983  1.00 77.70           C  \r
+ATOM   2406  CA  LEU B   7      11.351  14.325  57.458  1.00 78.91           C  \r
+ATOM   2414  CA  ILE B   8      11.807  11.511  59.985  1.00 81.00           C  \r
+ATOM   2422  CA  THR B   9      15.560  12.046  60.247  1.00 87.49           C  \r
+ATOM   2429  CA  PRO B  10      17.662   9.793  62.539  1.00 92.94           C  \r
+ATOM   2436  CA  GLU B  11      18.161  13.147  64.282  1.00 96.61           C  \r
+ATOM   2445  CA  GLY B  12      14.579  14.154  65.041  1.00 97.52           C  \r
+ATOM   2449  CA  GLU B  13      11.602  14.823  62.748  1.00 96.90           C  \r
+ATOM   2458  CA  VAL B  14      11.547  17.892  60.480  1.00 96.63           C  \r
+ATOM   2465  CA  GLU B  15       8.340  19.701  59.440  1.00 94.86           C  \r
+ATOM   2474  CA  LEU B  16       9.471  21.479  56.254  1.00 91.55           C  \r
+ATOM   2482  CA  GLN B  17       7.281  23.141  53.598  1.00 89.75           C  \r
+ATOM   2491  CA  VAL B  18       8.485  22.069  50.145  1.00 87.92           C  \r
+ATOM   2498  CA  PRO B  19       6.906  23.558  46.964  1.00 86.35           C  \r
+ATOM   2505  CA  ASP B  20       5.990  21.744  43.717  1.00 86.29           C  \r
+ATOM   2513  CA  ASP B  21       8.578  22.751  41.083  1.00 83.78           C  \r
+ATOM   2521  CA  VAL B  22      11.385  22.401  43.639  1.00 80.98           C  \r
+ATOM   2528  CA  TYR B  23      13.439  19.280  44.481  1.00 77.04           C  \r
+ATOM   2540  CA  ILE B  24      13.212  18.196  48.120  1.00 76.45           C  \r
+ATOM   2548  CA  LEU B  25      16.959  18.133  48.851  1.00 75.15           C  \r
+ATOM   2556  CA  ASP B  26      17.154  21.745  47.689  1.00 75.80           C  \r
+ATOM   2564  CA  GLN B  27      14.616  22.906  50.280  1.00 76.31           C  \r
+ATOM   2573  CA  ALA B  28      16.562  20.957  52.914  1.00 78.86           C  \r
+ATOM   2578  CA  GLU B  29      19.698  23.011  52.198  1.00 81.51           C  \r
+ATOM   2587  CA  GLU B  30      17.491  26.106  52.510  1.00 83.25           C  \r
+ATOM   2596  CA  ASP B  31      15.857  25.933  55.935  1.00 81.92           C  \r
+ATOM   2604  CA  GLY B  32      19.280  24.859  57.151  1.00 79.08           C  \r
+ATOM   2608  CA  ILE B  33      18.621  21.130  57.157  1.00 76.93           C  \r
+ATOM   2616  CA  ASP B  34      21.528  18.731  56.618  1.00 73.53           C  \r
+ATOM   2624  CA  LEU B  35      20.738  15.738  54.421  1.00 67.74           C  \r
+ATOM   2632  CA  PRO B  36      23.138  13.391  52.547  1.00 65.90           C  \r
+ATOM   2639  CA  TYR B  37      23.916  14.226  48.912  1.00 64.85           C  \r
+ATOM   2651  CA  SER B  38      26.659  13.373  46.412  1.00 62.58           C  \r
+ATOM   2657  CA  CYS B  39      26.193  13.603  42.652  1.00 60.99           C  \r
+ATOM   2663  CA  ARG B  40      22.908  15.441  43.251  1.00 58.35           C  \r
+ATOM   2674  CA  ALA B  41      21.699  14.108  39.886  1.00 56.38           C  \r
+ATOM   2679  CA  GLY B  42      19.886  10.955  40.991  1.00 56.66           C  \r
+ATOM   2683  CA  SER B  43      22.465   8.336  40.010  1.00 58.55           C  \r
+ATOM   2689  CA  CYS B  44      23.548   7.052  43.447  1.00 56.27           C  \r
+ATOM   2695  CA  SER B  45      22.057   5.987  46.791  1.00 58.20           C  \r
+ATOM   2701  CA  SER B  46      23.574   8.773  48.890  1.00 59.13           C  \r
+ATOM   2707  CA  CYS B  47      20.220  10.475  49.517  1.00 65.64           C  \r
+ATOM   2713  CA  ALA B  48      17.911   7.436  49.610  1.00 69.71           C  \r
+ATOM   2718  CA  GLY B  49      14.733   7.635  51.681  1.00 73.09           C  \r
+ATOM   2722  CA  LYS B  50      11.712   5.340  52.183  1.00 73.77           C  \r
+ATOM   2731  CA  VAL B  51       8.551   7.412  51.568  1.00 76.51           C  \r
+ATOM   2738  CA  VAL B  52       5.237   7.081  53.429  1.00 78.85           C  \r
+ATOM   2745  CA  SER B  53       2.180   9.376  53.647  1.00 79.57           C  \r
+ATOM   2751  CA  GLY B  54       2.118  10.991  50.218  1.00 76.32           C  \r
+ATOM   2755  CA  SER B  55       3.577  10.944  46.726  1.00 76.31           C  \r
+ATOM   2761  CA  VAL B  56       6.436  12.592  44.828  1.00 77.50           C  \r
+ATOM   2768  CA  ASP B  57       7.691  12.960  41.243  1.00 76.83           C  \r
+ATOM   2776  CA  GLN B  58      11.150  11.483  40.555  1.00 76.66           C  \r
+ATOM   2785  CA  SER B  59      10.976  10.827  36.792  1.00 80.19           C  \r
+ATOM   2791  CA  ASP B  60      14.688  11.644  36.510  1.00 83.51           C  \r
+ATOM   2799  CA  GLN B  61      15.175   8.137  37.916  1.00 85.74           C  \r
+ATOM   2808  CA  SER B  62      18.644   7.080  36.699  1.00 85.85           C  \r
+ATOM   2814  CA  TYR B  63      19.324   5.049  39.852  1.00 84.49           C  \r
+ATOM   2826  CA  LEU B  64      15.683   4.296  40.629  1.00 89.06           C  \r
+ATOM   2834  CA  ASP B  65      15.356   0.604  39.742  1.00 92.21           C  \r
+ATOM   2842  CA  ASP B  66      12.421  -1.791  39.331  1.00 92.35           C  \r
+ATOM   2850  CA  GLY B  67      10.747  -2.542  42.659  1.00 89.07           C  \r
+ATOM   2854  CA  GLN B  68      12.336   0.632  44.010  1.00 88.41           C  \r
+ATOM   2863  CA  ILE B  69       9.483   2.828  42.742  1.00 86.11           C  \r
+ATOM   2871  CA  ALA B  70       7.060   0.441  44.446  1.00 81.10           C  \r
+ATOM   2876  CA  ASP B  71       8.985  -0.310  47.648  1.00 76.82           C  \r
+ATOM   2884  CA  GLY B  72       8.653   3.423  48.186  1.00 73.00           C  \r
+ATOM   2888  CA  TRP B  73      12.342   4.386  48.095  1.00 67.93           C  \r
+ATOM   2902  CA  VAL B  74      13.052   8.007  47.136  1.00 63.84           C  \r
+ATOM   2909  CA  LEU B  75      16.093   9.940  45.892  1.00 58.37           C  \r
+ATOM   2917  CA  THR B  76      15.524  13.198  47.826  1.00 55.82           C  \r
+ATOM   2924  CA  CYS B  77      17.941  15.109  45.556  1.00 58.23           C  \r
+ATOM   2930  CA  HIS B  78      15.777  14.389  42.513  1.00 64.55           C  \r
+ATOM   2940  CA  ALA B  79      12.108  14.429  43.512  1.00 68.40           C  \r
+ATOM   2945  CA  TYR B  80       9.442  17.152  43.581  1.00 69.69           C  \r
+ATOM   2957  CA  PRO B  81       6.414  16.584  45.842  1.00 71.39           C  \r
+ATOM   2964  CA  THR B  82       3.015  16.014  44.179  1.00 73.67           C  \r
+ATOM   2971  CA  SER B  83       1.278  15.771  47.557  1.00 76.90           C  \r
+ATOM   2977  CA  ASP B  84       1.940  16.119  51.289  1.00 75.20           C  \r
+ATOM   2985  CA  VAL B  85       4.840  13.765  52.050  1.00 71.37           C  \r
+ATOM   2992  CA  VAL B  86       6.363  11.824  54.956  1.00 70.12           C  \r
+ATOM   2999  CA  ILE B  87       9.770  10.300  54.188  1.00 74.18           C  \r
+ATOM   3007  CA  GLU B  88      12.211   8.403  56.410  1.00 78.53           C  \r
+ATOM   3012  CA  THR B  89      15.541   9.964  55.407  1.00 79.79           C  \r
+ATOM   3019  CA  HIS B  90      19.062   8.538  55.881  1.00 79.40           C  \r
+ATOM   3029  CA  LYS B  91      17.584   5.099  55.099  1.00 84.52           C  \r
+ATOM   3038  CA  GLU B  92      20.016   2.596  53.549  1.00 91.64           C  \r
+ATOM   3047  CA  GLU B  93      20.192  -0.858  51.981  1.00 98.97           C  \r
+ATOM   3056  CA  GLU B  94      23.321  -2.924  51.298  1.00106.32           C  \r
+ATOM   3065  CA  LEU B  95      22.104  -6.552  51.453  1.00111.32           C  \r
+ATOM   3073  CA  THR B  96      18.778  -8.417  51.866  1.00116.01           C  \r
+ATOM   3080  CA  GLY B  97      18.877 -11.302  49.394  1.00116.63           C  \r
+ATOM   3084  CA  ALA B  98      22.056  -9.833  47.910  1.00116.02           C  \r
+ATOM   3091  CA  GLU C  19      26.080  -2.480  15.294  1.00 73.96           C  \r
+ATOM   3100  CA  SER C  20      23.405   0.198  14.956  1.00 67.27           C  \r
+ATOM   3106  CA  LYS C  21      22.937   3.927  15.380  1.00 59.27           C  \r
+ATOM   3115  CA  LYS C  22      19.198   3.481  15.874  1.00 58.42           C  \r
+ATOM   3124  CA  GLN C  23      17.251   3.141  19.137  1.00 59.89           C  \r
+ATOM   3133  CA  GLU C  24      17.931  -0.276  20.610  1.00 62.66           C  \r
+ATOM   3142  CA  GLU C  25      16.850  -0.453  24.226  1.00 64.27           C  \r
+ATOM   3151  CA  GLY C  26      13.211  -0.817  25.116  1.00 61.78           C  \r
+ATOM   3155  CA  VAL C  27      12.703  -2.073  21.582  1.00 58.37           C  \r
+ATOM   3162  CA  VAL C  28      10.779  -5.347  21.485  1.00 54.17           C  \r
+ATOM   3169  CA  THR C  29       9.481  -7.339  18.549  1.00 52.79           C  \r
+ATOM   3176  CA  ASN C  30       6.670  -9.775  17.786  1.00 51.30           C  \r
+ATOM   3184  CA  LEU C  31       4.863  -9.997  21.112  1.00 51.05           C  \r
+ATOM   3192  CA  TYR C  32       1.766 -11.297  19.327  1.00 50.51           C  \r
+ATOM   3204  CA  LYS C  33       1.373 -13.532  16.266  1.00 49.49           C  \r
+ATOM   3213  CA  PRO C  34      -1.609 -14.150  13.925  1.00 50.98           C  \r
+ATOM   3220  CA  LYS C  35      -2.450 -17.248  16.011  1.00 55.46           C  \r
+ATOM   3229  CA  GLU C  36      -2.977 -15.400  19.288  1.00 53.79           C  \r
+ATOM   3238  CA  PRO C  37      -3.251 -11.638  18.607  1.00 49.32           C  \r
+ATOM   3245  CA  TYR C  38      -3.674  -9.050  21.318  1.00 46.76           C  \r
+ATOM   3257  CA  VAL C  39      -7.276  -7.947  21.418  1.00 43.68           C  \r
+ATOM   3264  CA  GLY C  40      -7.415  -4.194  21.922  1.00 41.62           C  \r
+ATOM   3268  CA  ARG C  41     -10.273  -1.719  21.954  1.00 40.07           C  \r
+ATOM   3279  CA  CYS C  42     -11.026   1.064  19.477  1.00 36.37           C  \r
+ATOM   3285  CA  LEU C  43     -11.330   4.206  21.583  1.00 31.09           C  \r
+ATOM   3293  CA  LEU C  44     -11.337   6.671  18.673  1.00 28.46           C  \r
+ATOM   3301  CA  ASN C  45     -11.792   6.653  14.923  1.00 26.74           C  \r
+ATOM   3309  CA  THR C  46     -11.954   9.920  13.013  1.00 25.29           C  \r
+ATOM   3316  CA  LYS C  47     -11.667  10.775   9.352  1.00 21.50           C  \r
+ATOM   3325  CA  ILE C  48      -8.895  13.355   9.121  1.00 19.33           C  \r
+ATOM   3333  CA  THR C  49      -9.125  14.281   5.442  1.00 20.38           C  \r
+ATOM   3340  CA  GLY C  50     -11.630  16.676   3.855  1.00 20.12           C  \r
+ATOM   3344  CA  ASP C  51     -14.895  15.345   2.412  1.00 21.75           C  \r
+ATOM   3352  CA  ASP C  52     -13.889  16.693  -0.999  1.00 21.19           C  \r
+ATOM   3360  CA  ALA C  53     -10.651  14.683  -0.749  1.00 21.06           C  \r
+ATOM   3365  CA  PRO C  54     -10.036  11.974  -3.413  1.00 21.39           C  \r
+ATOM   3372  CA  GLY C  55      -9.982   9.067  -0.977  1.00 24.42           C  \r
+ATOM   3376  CA  GLU C  56     -10.374   9.298   2.857  1.00 22.08           C  \r
+ATOM   3385  CA  THR C  57      -7.723   8.611   5.517  1.00 20.31           C  \r
+ATOM   3392  CA  TRP C  58      -8.541   7.849   9.162  1.00 19.33           C  \r
+ATOM   3406  CA  HIS C  59      -6.758   8.520  12.438  1.00 22.68           C  \r
+ATOM   3416  CA  MET C  60      -7.645   5.951  15.108  1.00 27.16           C  \r
+ATOM   3424  CA  VAL C  61      -6.672   5.224  18.723  1.00 29.32           C  \r
+ATOM   3431  CA  PHE C  62      -6.669   1.704  20.220  1.00 34.23           C  \r
+ATOM   3442  CA  SER C  63      -6.102   0.643  23.847  1.00 37.05           C  \r
+ATOM   3448  CA  THR C  64      -3.096  -1.517  24.798  1.00 41.86           C  \r
+ATOM   3455  CA  GLU C  65      -3.169  -1.652  28.621  1.00 48.33           C  \r
+ATOM   3464  CA  GLY C  66       0.537  -0.885  28.318  1.00 52.45           C  \r
+ATOM   3468  CA  LYS C  67       0.955  -4.385  26.891  1.00 54.14           C  \r
+ATOM   3477  CA  ILE C  68       2.429  -3.211  23.570  1.00 51.52           C  \r
+ATOM   3485  CA  PRO C  69       5.602  -1.279  24.487  1.00 49.85           C  \r
+ATOM   3492  CA  TYR C  70       6.523  -0.180  20.967  1.00 44.48           C  \r
+ATOM   3504  CA  ARG C  71       9.185   2.353  19.993  1.00 40.96           C  \r
+ATOM   3515  CA  GLU C  72       8.727   5.317  17.688  1.00 33.49           C  \r
+ATOM   3524  CA  GLY C  73       8.913   3.876  14.164  1.00 30.16           C  \r
+ATOM   3528  CA  GLN C  74       7.423   0.399  14.427  1.00 31.26           C  \r
+ATOM   3537  CA  SER C  75       4.187  -0.913  12.966  1.00 33.65           C  \r
+ATOM   3543  CA  ILE C  76       1.454  -3.212  14.278  1.00 33.75           C  \r
+ATOM   3551  CA  GLY C  77      -0.295  -5.923  12.356  1.00 34.32           C  \r
+ATOM   3555  CA  VAL C  78      -4.060  -6.111  12.164  1.00 36.67           C  \r
+ATOM   3562  CA  ILE C  79      -6.137  -9.230  11.507  1.00 41.91           C  \r
+ATOM   3570  CA  ALA C  80      -9.427  -8.086  10.024  1.00 44.06           C  \r
+ATOM   3575  CA  ASP C  81     -12.530  -9.927  11.224  1.00 47.03           C  \r
+ATOM   3583  CA  GLY C  82     -13.972 -12.487   8.829  1.00 53.52           C  \r
+ATOM   3587  CA  VAL C  83     -12.521 -14.951   6.324  1.00 62.57           C  \r
+ATOM   3594  CA  ASP C  84     -11.856 -14.200   2.630  1.00 71.97           C  \r
+ATOM   3602  CA  LYS C  85     -12.935 -17.403   0.861  1.00 76.86           C  \r
+ATOM   3611  CA  ASN C  86     -13.690 -18.960   4.253  1.00 76.52           C  \r
+ATOM   3619  CA  GLY C  87     -10.006 -19.837   4.066  1.00 76.22           C  \r
+ATOM   3623  CA  LYS C  88      -8.802 -19.138   7.616  1.00 71.60           C  \r
+ATOM   3632  CA  PRO C  89      -8.651 -15.577   8.944  1.00 64.14           C  \r
+ATOM   3639  CA  HIS C  90      -7.547 -12.649   6.805  1.00 52.35           C  \r
+ATOM   3649  CA  LYS C  91      -3.753 -12.529   6.474  1.00 46.81           C  \r
+ATOM   3658  CA  VAL C  92      -2.180  -9.868   8.686  1.00 43.48           C  \r
+ATOM   3665  CA  ARG C  93      -1.491  -6.414   7.232  1.00 36.99           C  \r
+ATOM   3676  CA  LEU C  94       0.983  -3.882   8.601  1.00 32.95           C  \r
+ATOM   3684  CA  TYR C  95       0.340  -0.239   9.510  1.00 24.84           C  \r
+ATOM   3696  CA  SER C  96       3.003   2.101  10.803  1.00 23.32           C  \r
+ATOM   3702  CA  ILE C  97       2.244   3.502  14.236  1.00 24.12           C  \r
+ATOM   3710  CA  ALA C  98       1.243   7.179  13.932  1.00 22.32           C  \r
+ATOM   3715  CA  SER C  99       1.572   7.636  17.676  1.00 25.69           C  \r
+ATOM   3721  CA  SER C 100       4.752   7.924  19.726  1.00 28.83           C  \r
+ATOM   3727  CA  ALA C 101       5.741   5.521  22.508  1.00 35.61           C  \r
+ATOM   3732  CA  ILE C 102       3.906   7.635  25.079  1.00 38.39           C  \r
+ATOM   3740  CA  GLY C 103       0.899   7.826  22.742  1.00 31.93           C  \r
+ATOM   3744  CA  ASP C 104      -1.803  10.384  21.986  1.00 28.77           C  \r
+ATOM   3752  CA  PHE C 105      -3.050  10.293  25.607  1.00 37.05           C  \r
+ATOM   3763  CA  GLY C 106       0.503  10.389  26.967  1.00 39.36           C  \r
+ATOM   3767  CA  ASP C 107      -0.221   7.437  29.266  1.00 41.44           C  \r
+ATOM   3775  CA  SER C 108       1.566   4.766  27.217  1.00 42.18           C  \r
+ATOM   3781  CA  LYS C 109      -1.747   2.877  27.156  1.00 42.45           C  \r
+ATOM   3790  CA  THR C 110      -2.698   3.586  23.515  1.00 38.10           C  \r
+ATOM   3797  CA  VAL C 111      -1.603   2.971  19.906  1.00 32.79           C  \r
+ATOM   3804  CA  SER C 112      -2.671   5.020  16.872  1.00 29.60           C  \r
+ATOM   3810  CA  LEU C 113      -2.713   4.324  13.126  1.00 25.68           C  \r
+ATOM   3818  CA  CYS C 114      -3.142   6.498   9.999  1.00 24.23           C  \r
+ATOM   3824  CA  VAL C 115      -5.345   4.496   7.641  1.00 22.80           C  \r
+ATOM   3831  CA  LYS C 116      -6.221   5.196   4.015  1.00 22.11           C  \r
+ATOM   3840  CA  ARG C 117      -9.458   3.521   2.955  1.00 25.68           C  \r
+ATOM   3851  CA  LEU C 118      -8.447   1.440  -0.100  1.00 28.80           C  \r
+ATOM   3859  CA  ILE C 119     -11.140   1.661  -2.792  1.00 31.75           C  \r
+ATOM   3867  CA  TYR C 120     -10.086   0.716  -6.312  1.00 32.93           C  \r
+ATOM   3879  CA  THR C 121     -11.388  -0.733  -9.598  1.00 36.84           C  \r
+ATOM   3886  CA  ASN C 122     -10.258  -4.257 -10.546  1.00 36.90           C  \r
+ATOM   3894  CA  ASP C 123      -9.574  -5.562 -14.056  1.00 45.45           C  \r
+ATOM   3902  CA  ALA C 124     -13.196  -6.758 -14.269  1.00 44.66           C  \r
+ATOM   3907  CA  GLY C 125     -14.207  -3.102 -14.023  1.00 45.49           C  \r
+ATOM   3911  CA  GLU C 126     -16.059  -3.511 -10.722  1.00 45.54           C  \r
+ATOM   3920  CA  ILE C 127     -15.507  -1.321  -7.638  1.00 39.70           C  \r
+ATOM   3928  CA  VAL C 128     -13.846  -3.171  -4.762  1.00 38.09           C  \r
+ATOM   3935  CA  LYS C 129     -12.759  -2.512  -1.198  1.00 33.77           C  \r
+ATOM   3944  CA  GLY C 130      -9.566  -3.363   0.599  1.00 31.98           C  \r
+ATOM   3948  CA  VAL C 131     -10.443  -5.797   3.385  1.00 33.16           C  \r
+ATOM   3955  CA  CYS C 132      -8.241  -4.645   6.257  1.00 29.97           C  \r
+ATOM   3961  CA  SER C 133      -8.238  -0.898   5.607  1.00 30.67           C  \r
+ATOM   3967  CA  ASN C 134     -12.022  -0.902   5.268  1.00 30.35           C  \r
+ATOM   3975  CA  PHE C 135     -12.375  -2.946   8.424  1.00 29.86           C  \r
+ATOM   3986  CA  LEU C 136     -10.223  -0.334  10.195  1.00 29.42           C  \r
+ATOM   3994  CA  CYS C 137     -11.779   2.834   8.813  1.00 32.27           C  \r
+ATOM   4000  CA  ASP C 138     -15.116   1.280   9.724  1.00 34.29           C  \r
+ATOM   4008  CA  LEU C 139     -14.287   0.699  13.399  1.00 37.51           C  \r
+ATOM   4016  CA  GLN C 140     -16.635   2.170  16.028  1.00 43.76           C  \r
+ATOM   4025  CA  PRO C 141     -15.630   3.032  19.581  1.00 42.77           C  \r
+ATOM   4032  CA  GLY C 142     -16.082  -0.210  21.478  1.00 42.83           C  \r
+ATOM   4036  CA  ASP C 143     -15.117  -2.625  18.696  1.00 40.91           C  \r
+ATOM   4044  CA  ASN C 144     -12.182  -4.947  19.288  1.00 45.66           C  \r
+ATOM   4052  CA  VAL C 145      -9.056  -5.146  17.145  1.00 46.95           C  \r
+ATOM   4059  CA  GLN C 146      -6.707  -8.107  16.606  1.00 48.69           C  \r
+ATOM   4068  CA  ILE C 147      -3.249  -6.538  17.123  1.00 46.84           C  \r
+ATOM   4076  CA  THR C 148      -0.010  -8.392  16.264  1.00 46.26           C  \r
+ATOM   4083  CA  GLY C 149       3.543  -7.117  16.634  1.00 45.60           C  \r
+ATOM   4087  CA  PRO C 150       5.248  -4.818  17.394  1.00 44.97           C  \r
+ATOM   4094  CA  VAL C 151       7.423  -5.293  14.321  1.00 44.50           C  \r
+ATOM   4101  CA  GLY C 152      10.289  -3.716  12.438  1.00 45.33           C  \r
+ATOM   4105  CA  LYS C 153      13.599  -2.161  13.435  1.00 48.64           C  \r
+ATOM   4114  CA  GLU C 154      14.166  -0.437  10.074  1.00 48.20           C  \r
+ATOM   4123  CA  MET C 155      12.437   2.888  10.737  1.00 41.77           C  \r
+ATOM   4131  CA  LEU C 156      13.839   3.081  14.267  1.00 38.27           C  \r
+ATOM   4139  CA  MET C 157      15.076   6.540  15.308  1.00 34.29           C  \r
+ATOM   4147  CA  PRO C 158      18.782   7.419  15.339  1.00 34.05           C  \r
+ATOM   4154  CA  LYS C 159      20.262   7.521  18.845  1.00 35.82           C  \r
+ATOM   4163  CA  ASP C 160      22.076  10.792  18.273  1.00 35.95           C  \r
+ATOM   4171  CA  PRO C 161      19.683  13.401  19.809  1.00 35.63           C  \r
+ATOM   4178  CA  ASN C 162      21.563  15.948  17.758  1.00 33.92           C  \r
+ATOM   4186  CA  ALA C 163      21.028  14.172  14.487  1.00 30.82           C  \r
+ATOM   4191  CA  THR C 164      19.693  15.722  11.305  1.00 25.18           C  \r
+ATOM   4198  CA  ILE C 165      16.617  13.601  10.636  1.00 19.91           C  \r
+ATOM   4206  CA  ILE C 166      15.351  13.978   7.060  1.00 13.76           C  \r
+ATOM   4214  CA  MET C 167      11.843  12.550   6.703  1.00 14.98           C  \r
+ATOM   4222  CA  LEU C 168      10.385  11.831   3.251  1.00 16.64           C  \r
+ATOM   4230  CA  ALA C 169       6.747  10.808   3.007  1.00 15.85           C  \r
+ATOM   4235  CA  THR C 170       3.765  10.346   0.737  1.00 14.23           C  \r
+ATOM   4242  CA  GLY C 171       0.255   9.724   2.035  1.00 13.78           C  \r
+ATOM   4246  CA  THR C 172      -0.103   7.560   5.139  1.00 17.62           C  \r
+ATOM   4253  CA  GLY C 173       3.646   7.343   4.821  1.00 17.20           C  \r
+ATOM   4257  CA  ILE C 174       3.469  10.213   7.270  1.00 15.91           C  \r
+ATOM   4265  CA  ALA C 175       2.586   7.783  10.110  1.00 15.63           C  \r
+ATOM   4270  CA  PRO C 176       6.023   6.933  11.582  1.00 17.04           C  \r
+ATOM   4277  CA  PHE C 177       7.215  10.514  11.327  1.00 18.21           C  \r
+ATOM   4288  CA  ARG C 178       4.268  11.745  13.359  1.00 22.35           C  \r
+ATOM   4299  CA  SER C 179       5.563   9.289  15.983  1.00 25.22           C  \r
+ATOM   4305  CA  PHE C 180       9.139  10.593  15.614  1.00 25.98           C  \r
+ATOM   4316  CA  LEU C 181       7.925  14.180  15.767  1.00 29.12           C  \r
+ATOM   4324  CA  TRP C 182       5.625  13.641  18.714  1.00 31.35           C  \r
+ATOM   4338  CA  LYS C 183       8.488  12.385  20.871  1.00 30.92           C  \r
+ATOM   4347  CA  MET C 184      10.841  15.050  19.503  1.00 24.85           C  \r
+ATOM   4355  CA  PHE C 185       8.741  18.202  20.114  1.00 22.97           C  \r
+ATOM   4366  CA  PHE C 186       5.604  17.337  22.076  1.00 27.77           C  \r
+ATOM   4377  CA  GLU C 187       7.117  15.432  25.009  1.00 37.71           C  \r
+ATOM   4386  CA  LYS C 188       9.542  15.977  27.878  1.00 53.59           C  \r
+ATOM   4395  CA  HIS C 189      12.355  13.416  28.180  1.00 63.67           C  \r
+ATOM   4405  CA  ASP C 190      15.318  13.181  30.569  1.00 66.93           C  \r
+ATOM   4413  CA  ASP C 191      17.480  11.106  28.238  1.00 59.79           C  \r
+ATOM   4421  CA  TYR C 192      16.190  12.725  25.047  1.00 51.96           C  \r
+ATOM   4433  CA  LYS C 193      16.700  16.406  24.324  1.00 47.01           C  \r
+ATOM   4442  CA  PHE C 194      16.580  16.471  20.530  1.00 39.85           C  \r
+ATOM   4453  CA  ASN C 195      18.572  19.494  19.409  1.00 37.52           C  \r
+ATOM   4461  CA  GLY C 196      19.361  18.548  15.845  1.00 32.08           C  \r
+ATOM   4465  CA  LEU C 197      17.310  19.266  12.766  1.00 28.26           C  \r
+ATOM   4473  CA  GLY C 198      14.051  17.526  11.928  1.00 25.05           C  \r
+ATOM   4477  CA  TRP C 199      13.211  18.137   8.269  1.00 19.81           C  \r
+ATOM   4491  CA  LEU C 200       9.908  16.742   7.059  1.00 13.86           C  \r
+ATOM   4499  CA  PHE C 201       8.855  16.521   3.429  1.00 14.83           C  \r
+ATOM   4510  CA  LEU C 202       5.288  15.361   2.717  1.00 16.12           C  \r
+ATOM   4518  CA  GLY C 203       3.701  14.731  -0.681  1.00 13.79           C  \r
+ATOM   4522  CA  VAL C 204      -0.051  14.414  -1.182  1.00 11.75           C  \r
+ATOM   4529  CA  PRO C 205      -2.113  15.264  -4.308  1.00 14.66           C  \r
+ATOM   4536  CA  THR C 206      -4.553  17.737  -2.778  1.00 16.37           C  \r
+ATOM   4543  CA  SER C 207      -4.756  20.169   0.120  1.00 18.01           C  \r
+ATOM   4549  CA  SER C 208      -7.780  18.225   1.280  1.00 17.59           C  \r
+ATOM   4555  CA  SER C 209      -5.452  15.198   1.550  1.00 16.19           C  \r
+ATOM   4561  CA  LEU C 210      -2.972  16.940   3.860  1.00 14.22           C  \r
+ATOM   4569  CA  LEU C 211      -2.255  14.980   7.059  1.00 14.43           C  \r
+ATOM   4577  CA  TYR C 212      -1.624  16.449  10.549  1.00 18.94           C  \r
+ATOM   4589  CA  LYS C 213      -0.818  19.896   9.150  1.00 22.61           C  \r
+ATOM   4598  CA  GLU C 214      -2.039  21.572  12.352  1.00 25.73           C  \r
+ATOM   4607  CA  GLU C 215       0.152  19.413  14.514  1.00 19.23           C  \r
+ATOM   4616  CA  PHE C 216       3.216  20.178  12.439  1.00 17.80           C  \r
+ATOM   4627  CA  GLY C 217       2.478  23.890  12.512  1.00 19.90           C  \r
+ATOM   4631  CA  LYS C 218       2.578  24.001  16.294  1.00 25.54           C  \r
+ATOM   4640  CA  MET C 219       5.810  22.021  16.188  1.00 26.79           C  \r
+ATOM   4648  CA  LYS C 220       7.224  24.606  13.819  1.00 31.85           C  \r
+ATOM   4657  CA  GLU C 221       6.071  27.341  16.219  1.00 38.62           C  \r
+ATOM   4666  CA  ARG C 222       7.760  25.760  19.233  1.00 39.10           C  \r
+ATOM   4677  CA  ALA C 223      11.124  24.971  17.668  1.00 35.43           C  \r
+ATOM   4682  CA  PRO C 224      11.696  27.100  14.528  1.00 32.99           C  \r
+ATOM   4689  CA  GLU C 225      15.425  26.331  14.360  1.00 33.87           C  \r
+ATOM   4698  CA  ASN C 226      15.038  22.591  14.986  1.00 30.46           C  \r
+ATOM   4706  CA  PHE C 227      12.088  21.755  12.732  1.00 24.98           C  \r
+ATOM   4717  CA  ARG C 228      11.351  22.384   9.075  1.00 19.87           C  \r
+ATOM   4728  CA  VAL C 229       8.435  21.010   7.118  1.00 14.21           C  \r
+ATOM   4735  CA  ASP C 230       7.739  21.452   3.398  1.00 12.26           C  \r
+ATOM   4743  CA  TYR C 231       4.627  20.147   1.722  1.00 14.42           C  \r
+ATOM   4755  CA  ALA C 232       4.334  19.003  -1.872  1.00  9.99           C  \r
+ATOM   4760  CA  VAL C 233       0.778  19.232  -3.168  1.00 10.49           C  \r
+ATOM   4767  CA  SER C 234       1.043  17.769  -6.694  1.00 19.00           C  \r
+ATOM   4773  CA  ARG C 235      -2.240  19.042  -8.206  1.00 23.13           C  \r
+ATOM   4784  CA  GLU C 236      -2.069  22.459  -6.578  1.00 17.58           C  \r
+ATOM   4793  CA  GLN C 237       1.546  23.511  -6.623  1.00 15.89           C  \r
+ATOM   4802  CA  THR C 238       4.202  24.018  -9.275  1.00 17.86           C  \r
+ATOM   4809  CA  ASN C 239       7.922  24.800  -9.182  1.00 15.15           C  \r
+ATOM   4817  CA  ALA C 240       9.558  27.791 -10.892  1.00 21.51           C  \r
+ATOM   4822  CA  ALA C 241       9.475  25.887 -14.174  1.00 24.05           C  \r
+ATOM   4827  CA  GLY C 242       5.741  25.110 -13.938  1.00 26.25           C  \r
+ATOM   4831  CA  GLU C 243       5.999  21.359 -13.153  1.00 25.92           C  \r
+ATOM   4840  CA  ARG C 244       3.679  19.536 -10.704  1.00 24.04           C  \r
+ATOM   4851  CA  MET C 245       5.076  19.643  -7.174  1.00 18.58           C  \r
+ATOM   4859  CA  TYR C 246       5.784  16.047  -6.100  1.00 14.16           C  \r
+ATOM   4871  CA  ILE C 247       7.910  15.343  -3.034  1.00 16.78           C  \r
+ATOM   4879  CA  GLN C 248      11.089  15.070  -5.120  1.00 18.72           C  \r
+ATOM   4888  CA  THR C 249      10.168  18.255  -6.921  1.00 20.93           C  \r
+ATOM   4895  CA  ARG C 250       9.962  20.031  -3.567  1.00 19.25           C  \r
+ATOM   4906  CA  MET C 251      13.275  18.471  -2.561  1.00 19.40           C  \r
+ATOM   4914  CA  ALA C 252      14.910  19.812  -5.760  1.00 20.48           C  \r
+ATOM   4919  CA  GLU C 253      14.456  23.418  -4.569  1.00 18.19           C  \r
+ATOM   4928  CA  TYR C 254      16.804  22.515  -1.673  1.00 17.80           C  \r
+ATOM   4940  CA  LYS C 255      19.038  20.415  -3.902  1.00 20.66           C  \r
+ATOM   4949  CA  GLU C 256      22.452  21.603  -2.682  1.00 16.05           C  \r
+ATOM   4958  CA  GLU C 257      21.544  21.914   0.993  1.00 15.89           C  \r
+ATOM   4967  CA  LEU C 258      20.377  18.297   0.919  1.00 20.74           C  \r
+ATOM   4975  CA  TRP C 259      23.388  16.939  -0.965  1.00 23.45           C  \r
+ATOM   4989  CA  GLU C 260      25.645  18.669   1.563  1.00 24.08           C  \r
+ATOM   4998  CA  LEU C 261      23.573  17.378   4.477  1.00 24.74           C  \r
+ATOM   5006  CA  LEU C 262      24.020  13.928   2.938  1.00 26.14           C  \r
+ATOM   5014  CA  LYS C 263      27.792  14.091   3.402  1.00 25.40           C  \r
+ATOM   5023  CA  LYS C 264      27.457  14.521   7.176  1.00 31.47           C  \r
+ATOM   5032  CA  ASP C 265      27.877  11.474   9.425  1.00 35.31           C  \r
+ATOM   5040  CA  ASN C 266      24.934  12.482  11.620  1.00 29.63           C  \r
+ATOM   5048  CA  THR C 267      22.321  12.795   8.832  1.00 28.00           C  \r
+ATOM   5055  CA  TYR C 268      19.556  10.160   8.808  1.00 27.00           C  \r
+ATOM   5067  CA  VAL C 269      17.143   9.903   5.884  1.00 24.65           C  \r
+ATOM   5074  CA  TYR C 270      13.890   8.016   6.276  1.00 23.37           C  \r
+ATOM   5086  CA  MET C 271      11.373   7.327   3.518  1.00 18.93           C  \r
+ATOM   5094  CA  CYS C 272       7.834   6.074   4.043  1.00 18.24           C  \r
+ATOM   5100  CA  GLY C 273       4.784   5.874   1.826  1.00 22.39           C  \r
+ATOM   5104  CA  LEU C 274       3.837   4.483  -1.568  1.00 26.95           C  \r
+ATOM   5112  CA  LYS C 275       6.305   2.384  -3.532  1.00 32.36           C  \r
+ATOM   5121  CA  GLY C 276       7.741   4.199  -6.514  1.00 37.46           C  \r
+ATOM   5125  CA  MET C 277       7.714   7.455  -4.608  1.00 28.76           C  \r
+ATOM   5133  CA  GLU C 278      11.430   6.639  -4.425  1.00 32.22           C  \r
+ATOM   5142  CA  LYS C 279      12.017   6.321  -8.153  1.00 29.94           C  \r
+ATOM   5151  CA  GLY C 280      11.317  10.057  -8.293  1.00 24.18           C  \r
+ATOM   5155  CA  ILE C 281      13.766  10.673  -5.460  1.00 23.68           C  \r
+ATOM   5163  CA  ASP C 282      16.431   8.365  -6.934  1.00 26.58           C  \r
+ATOM   5171  CA  ASP C 283      16.211  10.530 -10.054  1.00 28.70           C  \r
+ATOM   5179  CA  ILE C 284      17.089  13.937  -8.538  1.00 27.28           C  \r
+ATOM   5187  CA  MET C 285      19.706  12.222  -6.388  1.00 27.45           C  \r
+ATOM   5195  CA  VAL C 286      21.377  10.712  -9.470  1.00 30.74           C  \r
+ATOM   5202  CA  SER C 287      21.619  14.159 -11.061  1.00 32.14           C  \r
+ATOM   5208  CA  LEU C 288      23.240  15.463  -7.873  1.00 34.20           C  \r
+ATOM   5216  CA  ALA C 289      25.801  12.653  -7.874  1.00 40.16           C  \r
+ATOM   5221  CA  GLU C 290      26.837  12.825 -11.536  1.00 41.84           C  \r
+ATOM   5230  CA  LYS C 291      27.855  16.387 -10.793  1.00 43.17           C  \r
+ATOM   5239  CA  ASP C 292      30.299  15.115  -8.139  1.00 41.84           C  \r
+ATOM   5247  CA  GLY C 293      31.237  12.232 -10.420  1.00 46.12           C  \r
+ATOM   5251  CA  ILE C 294      30.053   9.669  -7.864  1.00 45.54           C  \r
+ATOM   5259  CA  ASP C 295      27.399   6.998  -8.480  1.00 41.14           C  \r
+ATOM   5267  CA  TRP C 296      24.222   7.605  -6.479  1.00 30.67           C  \r
+ATOM   5281  CA  PHE C 297      23.381   3.910  -6.151  1.00 31.97           C  \r
+ATOM   5292  CA  ASP C 298      26.856   2.916  -4.907  1.00 38.12           C  \r
+ATOM   5300  CA  TYR C 299      26.671   5.875  -2.540  1.00 39.05           C  \r
+ATOM   5312  CA  LYS C 300      23.196   4.971  -1.294  1.00 41.63           C  \r
+ATOM   5321  CA  LYS C 301      24.542   1.489  -0.577  1.00 43.40           C  \r
+ATOM   5330  CA  GLN C 302      27.207   3.064   1.608  1.00 43.79           C  \r
+ATOM   5339  CA  LEU C 303      24.476   5.181   3.238  1.00 41.51           C  \r
+ATOM   5347  CA  LYS C 304      22.138   2.343   4.264  1.00 45.18           C  \r
+ATOM   5356  CA  ARG C 305      25.322   0.535   5.256  1.00 46.65           C  \r
+ATOM   5367  CA  GLY C 306      25.613   3.181   7.945  1.00 40.29           C  \r
+ATOM   5371  CA  ASP C 307      21.954   3.487   8.940  1.00 41.21           C  \r
+ATOM   5379  CA  GLN C 308      21.463   6.730   7.023  1.00 35.55           C  \r
+ATOM   5388  CA  TRP C 309      18.961   5.674   4.361  1.00 31.22           C  \r
+ATOM   5402  CA  ASN C 310      16.018   3.728   5.752  1.00 31.61           C  \r
+ATOM   5410  CA  VAL C 311      13.120   2.841   3.452  1.00 32.13           C  \r
+ATOM   5417  CA  GLU C 312       9.705   1.332   4.261  1.00 31.51           C  \r
+ATOM   5426  CA  VAL C 313       7.466   1.606   1.209  1.00 26.39           C  \r
+ATOM   5433  CA  TYR C 314       4.403  -0.343   0.111  1.00 25.42           C  \r
diff --git a/examples-jbake/assets/PF00111_seed.stk b/examples-jbake/assets/PF00111_seed.stk
new file mode 100644 (file)
index 0000000..d98c09f
--- /dev/null
@@ -0,0 +1,523 @@
+# STOCKHOLM 1.0
+#=GF ID   Fer2
+#=GF AC   PF00111.22
+#=GF DE   2Fe-2S iron-sulfur cluster binding domain
+#=GF PI   fer2; 
+#=GF AU   Sonnhammer ELL
+#=GF SE   Prosite
+#=GF GA   20.70 15.00;
+#=GF TC   20.70 15.70;
+#=GF NC   20.60 14.90;
+#=GF BM   hmmbuild HMM.ann SEED.ann
+#=GF SM   hmmsearch -Z 15929002 -E 1000 --cpu 4 HMM pfamseq
+#=GF TP   Domain
+#=GF WK   Ferredoxin
+#=GF DR   INTERPRO; IPR001041;
+#=GF DR   PROSITE; PDOC00175;
+#=GF DR   PROSITE; PDOC00642;
+#=GF DR   SCOP; 3fxc; fa;
+#=GF DR   HOMSTRAD; fer2;
+#=GF DR   HOMSTRAD; Ald_Xan_dh_1;
+#=GF SQ   206
+#=GS FER_GLEJA/8-82        AC P00233.1
+#=GS FER2_RAPSA/9-84       AC P14937.1
+#=GS Q39648_CITSI/61-136   AC Q39648.1
+#=GS FER3_MAIZE/63-138     AC P27788.1
+#=GS FER6_MAIZE/66-141     AC P94044.1
+#=GS FER1_SYNP2/9-83       AC P31965.2
+#=GS FER1_EQUAR/7-81       AC P00235.1
+#=GS FER2_EQUAR/7-80       AC P00237.1
+#=GS FER2_EQUAR/7-80       DR PDB; 1WRI A; 7-80;
+#=GS FER2_PLEBO/10-85      AC P46035.2
+#=GS P95533_PSEPU/253-328  AC P95533.1
+#=GS KSHB_MYCTU/273-348    AC P96853.1
+#=GS Q44253_ACISP/251-326  AC Q44253.1
+#=GS Q59656_PLEBO/573-647  AC Q59656.1
+#=GS P71846_MYCTU/600-675  AC P71846.3
+#=GS O84985_PSEPU/271-347  AC O84985.2
+#=GS PAAE_ECOLI/266-342    AC P76081.1
+#=GS HCR_ECOLI/241-316     AC P75824.3
+#=GS O87803_PSEST/5-82     AC O87803.2
+#=GS TMOF_PSEME/4-81       AC Q03304.1
+#=GS O32476_PSESP/4-81     AC O32476.1
+#=GS Q51944_BURPI/5-82     AC Q51944.1
+#=GS Q53028_RHOCO/4-80     AC Q53028.1
+#=GS Q45344_BURPI/10-88    AC Q45344.1
+#=GS Q9ZNP1_COMTE/9-88     AC Q9ZNP1.1
+#=GS Q9Z418_PSEPU/11-90    AC Q9Z418.1
+#=GS Q9ZAN6_9BURK/12-91    AC Q9ZAN6.1
+#=GS FERN_PSEPU/7-85       AC P23263.1
+#=GS O24827_ACISP/7-85     AC O24827.1
+#=GS FERX_PSEPU/8-86       AC P23103.1
+#=GS Q52061_PSEPU/8-86     AC Q52061.1
+#=GS Q52167_PSEPU/8-86     AC Q52167.1
+#=GS O84964_9RALS/4-82     AC O84964.1
+#=GS Q9Z3W9_9SPHN/8-85     AC Q9Z3W9.1
+#=GS DMPP_PSEUF/5-82       AC P19734.3
+#=GS O84963_9RALS/4-81     AC O84963.1
+#=GS Q52574_PSESP/5-83     AC Q52574.1
+#=GS Q9ZNP2_COMTE/5-82     AC Q9ZNP2.1
+#=GS Q43983_ACICA/5-82     AC Q43983.1
+#=GS O87617_PSEAE/3-78     AC O87617.1
+#=GS O52378_9RALS/3-78     AC O52378.1
+#=GS Q51492_PSEAE/3-78     AC Q51492.1
+#=GS NDOR_PSEPU/3-78       AC Q52126.1
+#=GS Q52140_PSEPU/3-78     AC Q52140.1
+#=GS Q9Z9X8_9GAMM/242-317  AC Q9Z9X8.1
+#=GS VANB_PSEUH/234-309    AC O05617.1
+#=GS VANB_PSES9/231-306    AC P12580.1
+#=GS VANB_PSEPU/231-307    AC O54037.1
+#=GS VANB_ACIAD/234-309    AC O24840.1
+#=GS O88034_STRCO/230-305  AC O88034.1
+#=GS P94680_COMTE/234-309  AC P94680.1
+#=GS CBAB_COMTE/232-307    AC Q44257.2
+#=GS POBB_PSEPS/236-311    AC Q52186.1
+#=GS YEAX_ECOLI/237-313    AC P76254.1
+#=GS Q47914_SPHCR/241-316  AC Q47914.2
+#=GS PDR_BURCE/241-314     AC P33164.3
+#=GS PDR_BURCE/241-314     DR PDB; 2PIA A; 240-313;
+#=GS PHT2_PSEPU/243-316    AC Q05182.1
+#=GS O86347_MYCTU/231-301  AC O86347.3
+#=GS YFAE_ECOLI/4-77       AC P0ABW3.1
+#=GS Y1309_HAEIN/3-75      AC P45154.1
+#=GS O31003_VIBAN/5-73     AC O31003.1
+#=GS RFBI_SALTY/5-76       AC P26395.1
+#=GS P95461_9PSED/17-94    AC P95461.1
+#=GS O85971_SPHAR/13-90    AC O85971.1
+#=GS XYLA_PSEPU/20-97      AC P21394.1
+#=GS YCBX_ECOLI/293-362    AC P75863.1
+#=GS P96096_THIFE/9-86     AC P96096.1
+#=GS MMOC_METTR/7-81       AC Q53563.1
+#=GS O85675_ACIAD/8-85     AC O85675.1
+#=GS BENC_ACIAD/19-98      AC P07771.2
+#=GS BENC_ACIAD/19-98      DR PDB; 1KRH B; 9-88;
+#=GS BENC_ACIAD/19-98      DR PDB; 1KRH A; 9-88;
+#=GS XYLZ_PSEPU/8-86       AC P23101.1
+#=GS CBDC_BURCE/8-85       AC Q51603.1
+#=GS O66892_AQUAE/7-72     AC O66892.1
+#=GS O85226_PSEFL/27-86    AC O85226.1
+#=GS O29575_ARCFU/14-75    AC O29575.1
+#=GS O27878_METTH/21-82    AC O27878.1
+#=GS Y092_METJA/14-73      AC Q57557.1
+#=GS FER5_RHOCA/10-107     AC P37097.2
+#=GS Q44501_AZOVI/10-107   AC Q44501.1
+#=GS Q46508_DESFR/6-74     AC Q46508.1
+#=GS Q9ZBV9_STRCO/15-78    AC Q9ZBV9.1
+#=GS NUOG_MYCTU/19-82      AC P95175.2
+#=GS O87815_CUPNE/22-85    AC O87815.1
+#=GS NQO3_THET8/4-88       AC Q56223.2
+#=GS NQO3_THET8/4-88       DR PDB; 3M9S C; 4-88;
+#=GS NQO3_THET8/4-88       DR PDB; 3M9S 3; 4-88;
+#=GS P74022_SYNY3/6-69     AC P74022.1
+#=GS P94157_SYNP6/6-69     AC P94157.1
+#=GS Q44513_ANAVA/6-69     AC Q44513.1
+#=GS P77908_MOOTH/4-67     AC P77908.3
+#=GS Q9ZJW1_HELPJ/4-65     AC Q9ZJW1.1
+#=GS O05397_BACSU/11-72    AC O05397.1
+#=GS YJGC_BACSU/7-68       AC O34720.1
+#=GS NUOG_SALTI/4-72       AC P0A1Y5.2
+#=GS O66748_AQUAE/6-70     AC O66748.1
+#=GS NDUS1_DICDI/5-71      AC Q34312.1
+#=GS NQO3_PARDE/7-71       AC P29915.4
+#=GS NDUS1_NEUCR/38-101    AC P24918.2
+#=GS NUOG_RICPR/4-67       AC Q9ZCF6.1
+#=GS NDUS1_SOLTU/70-133    AC Q43644.1
+#=GS NDUS1_RECAM/4-67      AC O21241.1
+#=GS NDUS1_BOVIN/34-97     AC P15690.1
+#=GS O52683_THEMA/3-65     AC O52683.1
+#=GS Q46606_DESVU/3-71     AC Q46606.1
+#=GS HOXU_CUPNH/5-66       AC P22318.2
+#=GS P72305_RHOOP/5-66     AC P72305.1
+#=GS Q59261_CLOSA/4-67     AC Q59261.1
+#=GS Q9ZNE4_CLOPE/4-67     AC Q9ZNE4.1
+#=GS PHF1_CLOPA/4-67       AC P29166.1
+#=GS Q59262_CLOAB/4-66     AC Q59262.1
+#=GS P74801_SYNY3/5-63     AC P74801.1
+#=GS XDHE_BACSU/18-77      AC O32143.1
+#=GS HCRC_THAAR/7-66       AC O33818.1
+#=GS HCRC_THAAR/7-66       DR PDB; 1SB3 F; 7-66;
+#=GS HCRC_THAAR/7-66       DR PDB; 1RM6 C; 7-66;
+#=GS HCRC_THAAR/7-66       DR PDB; 1RM6 F; 7-66;
+#=GS HCRC_THAAR/7-66       DR PDB; 1SB3 C; 7-66;
+#=GS P95635_RHOPA/15-74    AC P95635.1
+#=GS XDHC_ECOLI/11-69      AC Q46801.1
+#=GS YAGT_ECOLI/65-124     AC P77165.1
+#=GS DCMS_HYDPS/8-67       AC P19915.2
+#=GS Q52589_9PSED/8-67     AC Q52589.1
+#=GS O52837_BRAJA/6-65     AC O52837.1
+#=GS O53709_MYCTU/5-64     AC O53709.1
+#=GS O87682_ARTNI/8-67     AC O87682.1
+#=GS Q59128_ARTNI/14-73    AC Q59128.1
+#=GS P72223_PSEPU/14-73    AC P72223.1
+#=GS P72223_PSEPU/14-73    DR PDB; 1T3Q A; 14-73;
+#=GS P72223_PSEPU/14-73    DR PDB; 1T3Q D; 14-73;
+#=GS Q9ZBN8_STRCO/5-65     AC Q9ZBN8.1
+#=GS O54050_RHOCA/5-68     AC O54050.1
+#=GS O54050_RHOCA/5-68     DR PDB; 1JRP A; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W3R A; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W3S A; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 1JRP G; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W54 E; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 1JRP E; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W55 A; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W3R E; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W3S E; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W54 G; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W3R G; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W54 A; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 1JRO A; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 1JRO E; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W55 E; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W55 C; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W3R C; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 1JRO C; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W54 C; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W3S G; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W55 G; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 2W3S C; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 1JRO G; 5-68;
+#=GS O54050_RHOCA/5-68     DR PDB; 1JRP C; 5-68;
+#=GS O23887_MAIZE/15-85    AC O23887.1
+#=GS ALDO4_ARATH/8-78      AC Q7G191.2
+#=GS ALDO1_ARATH/23-95     AC Q7G193.2
+#=GS O30328_ACEEU/4-63     AC O30328.1
+#=GS IORA_BREDI/4-64       AC Q51697.1
+#=GS XDH_EMENI/39-108      AC Q12553.2
+#=GS O61198_CAEEL/8-78     AC O61198.2
+#=GS O17892_CAEEL/18-86    AC O17892.1
+#=GS XDH_DROSU/13-83       AC P91711.1
+#=GS O17506_BOMMO/19-89    AC O17506.1
+#=GS Q17250_BOMMO/18-88    AC Q17250.2
+#=GS ADO_BOVIN/9-79        AC P48034.2
+#=GS XDH_BOVIN/8-78        AC P80457.4
+#=GS XDH_BOVIN/8-78        DR PDB; 1V97 B; 8-78;
+#=GS XDH_BOVIN/8-78        DR PDB; 3NVY A; 8-78;
+#=GS XDH_BOVIN/8-78        DR PDB; 3NVY J; 8-78;
+#=GS XDH_BOVIN/8-78        DR PDB; 3NRZ J; 8-78;
+#=GS XDH_BOVIN/8-78        DR PDB; 3NVV A; 8-78;
+#=GS XDH_BOVIN/8-78        DR PDB; 3NRZ A; 8-78;
+#=GS XDH_BOVIN/8-78        DR PDB; 1N5X A; 8-78;
+#=GS XDH_BOVIN/8-78        DR PDB; 1N5X B; 8-78;
+#=GS XDH_BOVIN/8-78        DR PDB; 1V97 A; 8-78;
+#=GS XDH_BOVIN/8-78        DR PDB; 1VDV A; 8-78;
+#=GS XDH_BOVIN/8-78        DR PDB; 3NVV J; 8-78;
+#=GS XDH_BOVIN/8-78        DR PDB; 1VDV B; 8-78;
+#=GS XDH_BOVIN/8-78        DR PDB; 3NS1 A; 8-78;
+#=GS XDH_BOVIN/8-78        DR PDB; 3NS1 J; 8-78;
+#=GS MOP_DESGI/6-65        AC Q46509.1
+#=GS MOP_DESGI/6-65        DR PDB; 1VLB A; 6-65;
+#=GS MOP_DESGI/6-65        DR PDB; 1SIJ A; 6-65;
+#=GS O53669_MYCTU/13-78    AC O53669.1
+#=GS O29566_ARCFU/5-80     AC O29566.1
+#=GS O30225_ARCFU/5-84     AC O30225.1
+#=GS NQRF_CHLTR/46-122     AC O84745.1
+#=GS NQRF_HAEIN/43-119     AC O05012.1
+#=GS NQRF_VIBAL/39-115     AC Q56584.1
+#=GS O84062_CHLTR/8-83     AC O84062.1
+#=GS Q9Z8H9_CHLPN/8-83     AC Q9Z8H9.1
+#=GS CSMJ_CHLTE/5-82       AC O68983.1
+#=GS CSMI_CHLTE/5-82       AC O68988.1
+#=GS FER_TRIVA/13-90       AC P21149.1
+#=GS FER_TRIVA/13-90       DR PDB; 1L5P A; 5-83;
+#=GS FER_TRIVA/13-90       DR PDB; 1L5P C; 5-83;
+#=GS FER_TRIVA/13-90       DR PDB; 1L5P B; 5-83;
+#=GS P73774_SYNY3/7-88     AC P73774.1
+#=GS FER_BUCAP/10-92       AC O51882.1
+#=GS O69222_AZOVI/11-93    AC O69222.1
+#=GS FER_HAEIN/10-92       AC P44428.2
+#=GS FER_PSEAE/10-92       AC Q51383.2
+#=GS ADRX_YEAST/67-149     AC Q12184.1
+#=GS ADX_PIG/71-155        AC P00258.2
+#=GS FER2_RICPR/11-93      AC Q9ZDW6.1
+#=GS O49551_ARATH/44-127   AC O49551.1
+#=GS ETP1_SCHPO/525-592    AC Q10361.2
+#=GS ETP1_SCHPO/525-592    DR PDB; 2WLB A; 525-607;
+#=GS ETP1_SCHPO/525-592    DR PDB; 2WLB B; 525-607;
+#=GS O07876_SPHSX/8-91     AC O07876.1
+#=GS Q9ZAM5_SPHSX/8-91     AC Q9ZAM5.1
+#=GS FER2_CAUCR/8-91       AC P37098.1
+#=GS FER6_RHOCA/7-91       AC P80306.1
+#=GS FER6_RHOCA/7-91       DR PDB; 1UWM A; 7-91;
+#=GS P74447_SYNY3/31-113   AC P74447.1
+#=GS P73171_SYNY3/7-85     AC P73171.1
+#=GS FER1_AQUAE/3-83       AC O67065.1
+#=GS FER4_RHOCA/7-86       AC P16022.1
+#=GS P74283_SYNY3/5-88     AC P74283.1
+#=GS PUTX_PSEPU/8-92       AC P00259.3
+#=GS PUTX_PSEPU/8-92       DR PDB; 1PDX A; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1OQR C; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1OQR B; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1XLP C; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1R7S A; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1OQR A; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1YJJ A; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1R7S C; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1OQQ B; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1XLP A; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1XLP B; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1R7S B; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1OQQ A; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1XLN B; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1YJI A; 7-91;
+#=GS PUTX_PSEPU/8-92       DR PDB; 1XLN A; 7-91;
+#=GS TERPB_PSESP/8-92      AC P33007.2
+#=GS P95277_MYCTU/9-84     AC P95277.1
+#=GS O05933_PSEPU/11-88    AC O05933.1
+#=GS DESET_MYCTU/303-373   AC O05875.1
+#=GS O23344_ARATH/57-131   AC O23344.1
+#=GS P74159_SYNY3/11-86    AC P74159.1
+#=GS FER2_SYNP6/8-83       AC P08451.2
+#=GS P73388_SYNY3/9-84     AC P73388.1
+#=GS FER1_HALMA/35-108     AC P00217.2
+#=GS P74449_SYNY3/11-88    AC P74449.1
+#=GS FER2_NOSMU/10-85      AC P00249.2
+#=GS FER2_APHSA/10-86      AC P00251.2
+#=GS FER1_CYAPA/10-85      AC P17007.3
+#=GS FER_PORPU/10-85       AC P51320.2
+#=GS FER_ODOSI/10-85       AC P49522.2
+#=GS FER_BUMFI/9-84        AC P13106.1
+#=GS FER3_CYACA/9-84       AC P00241.1
+#=GS FER2_CYACA/8-83       AC P15789.1
+#=GS FER_BRYMA/8-83        AC P07838.1
+#=GS FER_APHSA/9-83        AC P00250.2
+#=GS FER_THEVL/9-84        AC P0A3D1.2
+#=GS FER_PERBI/6-80        AC P10770.1
+#=GS FER3_RAPSA/8-82       AC P14938.1
+#=GS FER1_SPIOL/58-132     AC P00221.2
+#=GS FER_SILPR/57-131      AC P04669.1
+#=GS FER_WHEAT/54-128      AC P00228.2
+#=GS FER_SAMNI/8-82        AC P00226.1
+#=GS FERA_ALOMA/8-82       AC P81372.1
+#=GS FER_ARCLA/8-82        AC P00223.1
+#=GS FER_DATST/8-82        AC P68165.1
+#=GS FER_PALPL/9-83        AC P07484.1
+#=GS FER_EUGVI/8-82        AC P22341.1
+#=GS FER_CHLFU/6-80        AC P56408.1
+#=GS FER_SYNY4/9-83        AC P00243.2
+#=GS FER1_PHYAM/8-82       AC P00229.1
+#=GS FER2_PHYAM/9-83       AC P00231.1
+#=GS FER2_SPIOL/8-82       AC P00224.1
+#=GS FER_PHYPA/57-132      AC O04166.1
+#=GS FER_MARPO/7-81        AC P09735.1
+FER_GLEJA/8-82                   LTPDGE...RTIEVPDDKF.ILDAGE...E.A.GLDLPYSCRA.......GA....CSSCTGKLLDGRV.....DQSE...QSFLDDDQMAEGFV.....................LTCVAYPA
+FER2_RAPSA/9-84                  IGPEGE..ENEFEVQDDQF.ILDAAE...E.A.GVDLPYSCRA.......GA....CSTCAGQIVKGQV.....DQSE...GSFLEDDHFEKGFV.....................LTCVAYPQ
+Q39648_CITSI/61-136              IGPMGE..EHEFEAQEDQY.ILDAAE...E.A.GVDLPYSCRA.......GA....CSTCAGKLVSGSV.....DQSD...GSFLDDNQMEAGYL.....................LTCISYPT
+FER3_MAIZE/63-138                VGPEGE..EHEFDAPDDAY.ILDAAE...T.A.GVELPYSCRA.......GA....CSTCAGKIESGSV.....DQSD...GSFLDDGQQEEGYV.....................LTCVSYPK
+FER6_MAIZE/66-141                VGPDGT..EHEFEAPDDTY.ILEAAE...T.A.GVELPFSCRA.......GS....CSTCAGRMSAGEV.....DQSE...GSFLDDGQMAEGYL.....................LTCISYPK
+FER1_SYNP2/9-83                  ITPDGE...VSYDAPDDEY.ILDSAG...D.A.GYDLPASCRA.......GA....CSTCAGKIVSGTV.....DQSE...QSFLDDDQIEAGYV.....................LTCIAYPQ
+FER1_EQUAR/7-81                  KTPSGE...FTLDVPEGTT.ILDAAE...E.A.GYDLPFSCRA.......GA....CSSCLGKVVSGSV.....DESE...GSFLDDGQMEEGFV.....................LTCIAIPE
+FER2_EQUAR/7-80                  KTPDGD...ITFDVEPGER.LIDIGS...E.K..ADLPLSCQA.......GA....CSTCLGKIVSGTV.....DQSE...GSFLDDEQIEQGYV.....................LTCIAIPE
+#=GR FER2_EQUAR/7-80       SS    E-----...EEEEE-----.TT----...-.S..S----SS--.......--....-STT---EEE-EE.....E---...-----HHHHH----.....................-TTT-EEE
+FER2_PLEBO/10-85                 NKKRNL..DITLPVDEDTT.VLEAAE...E.A.ELDLPFSCHS.......GA....CSSCVGKVVEGEI.....NQDD...QTFLDEEQVAKGFV.....................LLCVTYPR
+P95533_PSEPU/253-328             VLMKGQ..THAVPVRAGEL.LLSAML...R.A.GLPAPHACRV.......GE....CASCMCRLQAGEVQ....RLDS....SVLDEDDVAAG.W...................L.LACRTRAA
+KSHB_MYCTU/273-348               VELDGQ..THTVSWPRTAK.LLDVLL...A.A.GLDAPFSCRE.......GH....CGACACTLRAGKVN....MGVN....DVLEQQDLDEG.L...................I.LACQSRPE
+Q44253_ACISP/251-326             FMLNGI..KNSVMCSEDDFILNEIIK......AGINVPSSCCA.......GN....CGSCMCLLVSGDVI....LESN....TVLDASDEEDGWI.....................LACRSKPR
+Q59656_PLEBO/573-647             FAQSGK....EITCTQDDL.ILDIAD.....QAEVAIESSCRS.......GT....CGSCKCTLLEGEV.....SYDS..EPDVLDEHDRASGQI.....................LTCIARPV
+P71846_MYCTU/600-675             FTLSGQ..RAIFDLVPGDS.ILEGAL...G..LRSDAPYACMG.......GA....CGTCRAKLIEGNVE....MD....HNFALRKAELDAGYI.....................LTCQSHPT
+O84985_PSEPU/271-347             VISDGR..ALTFDLPRNTQNVLDAGN...A.I.GAELPYSCKA.......GV....CSTCKCRVIEGEV.....EMDS...NHALEDYEVAAGYV.....................LSCQTYPV
+PAAE_ECOLI/266-342               VRQDGR..DREIVLNADDESILDAAL...R.Q.GADLPYACKG.......GV....CATCKCKVLRGKV.....AMET...NYSLEPDELAAGYV.....................LSCQALPL
+HCR_ECOLI/241-316                FTKLQP..AREFYAPVGTT.LLEALE.....SNNVPVVAACRA.......GV....CGCCKTKVVSGEY.....TVSS...TMTLTDAEIAEGYV.....................LACSCHPQ
+O87803_PSEST/5-82                IKIADT..DVEFTISDRDT.ILRAAL...R.D.GIPISYECNS.......GG....CGSCKIDVVEGQVE...TLWGE...APGLSPRDKRK.SR...................K.LACQCLAS
+TMOF_PSEME/4-81                  IQSDDL..LHHFEADSNDT.LLSAAL...R.A.ELVFPYECNS.......GG....CGACKIELLEGEVS...NLWPD...APGLAARELRK.NR...................F.LACQCKPL
+O32476_PSESP/4-81                LKIEGQ..APGTCG.SGKS.LLVSAL...A.N.GIGFPYECAS.......GG....CGVCKFELLEGNVQ...SMWPD...APGLSSRDREKGNR...................H.LACQCVAL
+Q51944_BURPI/5-82                ITIEGG..SAFSVAADEDT.LLRGAL...R.G.GIALPHECSV.......GG....CGACRFDLLSGLVE...SIWPE...APGLSERDRKR.GK...................H.LACQSRPL
+Q53028_RHOCO/4-80                INVQPF..SHEYSCEDGES.LLDGAL..RN...SLLLKYGCKH.......GG....CGTCKVRLLDGDV.....EEPG..SSFALTPEDRENDVI.....................LACASVPL
+Q45344_BURPI/10-88               YAWNRP..RSTTHARPPKA.SLTGML...R.LGRKGIPVGCVN.......GG....CGVCKVRVLDGST......RLGR.RQPCPRQRRRRSAGL...................T.LACREAPL
+Q9ZNP1_COMTE/9-88                VSVEQT..GDTYACGTHES.LLSGML...R.LGRKGIPVGCVN.......GG....CGVCKVQVLEGAV.....RHLGP.VSCAHVSDLERDQGY...................T.LACRVAPL
+Q9Z418_PSEPU/11-90               VHVMQT..GETFPCATDES.LLQGML...R.LGRKGIPVGCVN.......GG....CGVCKVHVIEGQC.....RPLGP.VSRAHVSAAEEARGF...................T.LACRVAPV
+Q9ZAN6_9BURK/12-91               VHVAQT..DETFPCAGNES.LLTGMV...R.LGRKGIPVGCVN.......GG....CGVCKVRIVEGQI.....KALGP.ISRAHVTLDEENQGY...................T.LACRVAPQ
+FERN_PSEPU/7-85                  ITVQPG..GERFVCQPQQS.ALHAME...T.QGKRCLPVGCRG.......GG....CGLCKVRVLAGDY......ESGR.VSCKHLPVEAREQGY...................A.LACRLFAR
+O24827_ACISP/7-85                ITEQCS..GQRFPCKAGQS.VLKAME...Q.QGLECAPVGCRG.......GG....CGLCKVTVREGDY......ECGK.MSRVHAPPEALAQGE...................V.LACRIYPL
+FERX_PSEPU/8-86                  VFEVLS..GQSFRCAEGQS.VLRAME...A.QGKRCIPVGCRG.......GG....CGLCRVRVLSGAY......RSGR.MSRGHVPAKAAAEAL...................A.LACQVFPQ
+Q52061_PSEPU/8-86                IRETVS..GQTFRCLPDQS.VLSAME...Q.QGKRCVPVGCRG.......GG....CGLCKVRVLSGTY......QCHK.MSCNHVPPEAAKQGL...................A.LACQLFPQ
+Q52167_PSEPU/8-86                VHETNS..GQSFTCRPDQS.VLRAME...E.QGKRCVPVGCRG.......GG....CGLCKVRVLSGDY......QCGR.MSCSQVPPEAAQQGL...................A.LACQLYPR
+O84964_9RALS/4-82                VEIADS..GQRYPCDPGQN.LLRAME...V.LGQRGIPAGCRG.......GG....CGVCKVRIESGRY......RTGK.MSRACLSEAEQGQGL...................V.LACKAFPD
+Q9Z3W9_9SPHN/8-85                IRILGG..GQ.FACPEGER.VLIAME...Q.FGSSDIGVGCRG.......GG....CGFCLVRVVEGEY......RTGK.MSTAKVSVADQAKGY...................A.LACRIYPM
+DMPP_PSEUF/5-82                  VTIEPT..GEVIEVEDGQT.ILQAAL...R.Q.GVWLPFACGH.......GT....CATCKVQVVEGEVD...IGEAS...PFALMDIERDERKV.....................LACCAIPL
+O84963_9RALS/4-81                LTIEPI..GQTIPIAPGQT.VLDACL...R.S.GVWLPHACCH.......GL....CATCKVQVVEGEVD...QGEAS..SFALMDFER.DNGQC.....................LACCATAQ
+Q52574_PSESP/5-83                LTIEPL..GRTLDVAEGQT.LLDAAL...R.S.GVYIPHACGH.......GL....CGTCKVQVTSGEVD...HGAAN..PLRRSWISSGEEGKT.....................LACCATAL
+Q9ZNP2_COMTE/5-82                LTLEPL..GASIEVEEGQT.LLDAAL...R.Q.GIYIPHACGH.......GL....CGTCKIQVCDGDVD...HGAAN..PFALMDMER.EDGMT.....................LACCATLQ
+Q43983_ACICA/5-82                VTIEPA..GTIIQVEEDQT.ILDAAL...R.Q.GVWLPFACGH.......GT....CGTCKVQVTDGFYD...VGEAS..PFALMDIER.EENKV.....................LACCCKPE
+O87617_PSEAE/3-78                LHIQPL..GQTLSVDSGAN.LLEALR...A.AE.VPISYSCMA.......GR....CGTCRCKVLKGQV......L..E.SGREATLTNPHADDY...................V.LACMSAIT
+O52378_9RALS/3-78                LVVEPL..NLHLNAETGST.LLDVLR...S.NE.VPISYSCMS.......GR....CGTCRCRVIAGHL......R..D.NGPETGRPQAGKGTY...................V.LACQAVLT
+Q51492_PSEAE/3-78                LLVLPN..NRRLPFDSGAN.LLEVLR...E.HR.VGISYSCMS.......GR....CGTCRCRVIDGSV......I..S.SAAKSGDSNRIEEHY...................V.LACQSVLT
+NDOR_PSEPU/3-78                  LLIQPN..NRIIPFSAGAN.LLEVLR...E.NG.VAISYSCLS.......GR....CGTCRCRVIDGSV......I..D.SGAENGQSNLTDKQY...................V.LACQSVLT
+Q52140_PSEPU/3-78                LLIQPN..NRLISFSPGAN.LLEVLR...E.NG.VAISYSCMS.......GR....CGTCRCRVTDGSV......I..D.SGTGSGLPHLVDEHY...................V.LACRSVLT
+Q9Z9X8_9GAMM/242-317             VRIASS..GATVHVDKHTT.IVAALA...S.I.GIEVDTSCGE.......GV....CGTCMVDVVSGTP.....EHRD....HCLSKAERASGKV...................I.CCCVSRAR
+VANB_PSEUH/234-309               VRIHST..GQVLQVPADQT.VSQVLD...A.A.GIIVPVSCEQ.......GI....CGTCITRVVDGEP.....DHRD....FFLTDAEKAKNDQ...................F.TPCCSRAK
+VANB_PSES9/231-306               GRLARS..GLTLQVPAERS.VAQVLD...D.A.GVCIPLACEQ.......GI....CGTCLTRVLDGEP.....EHRD....SFLTDAERARNDQ...................F.TPCCSRAR
+VANB_PSEPU/231-307               VQLNST..GQVFEVPADQS.VVHVLE...Q.H.GIAIAMSCEQ.......GI....CGTCLTRVLSGTPE....ASRP....VFLTEQEQALNDQ...................F.TPCCSRSK
+VANB_ACIAD/234-309               IEVLGS..DRKIEVSAHQT.ATQALL...E.H.GFDVPVSCEQ.......GI....CGTCITRVVSGTP.....DHRD....VFMTDEEHALNDQ...................F.TPCCSRAK
+O88034_STRCO/230-305             VVLARS..GRTVAVPPGTS.VLDAVR...E.T.GVEVLYSCTE.......GT....CGTCETEVVEGEP.....DHRD....SVLTEEERAAGET...................M.LICVSRCR
+P94680_COMTE/234-309             LVLQRA..GLSTTVDAHES.VLDAME...R.V.GVDFPWSCRE.......GI....CGTCEAPVLEGEV.....QHLD....YVLSPEERAEQRR...................M.MVCVSRCG
+CBAB_COMTE/232-307               VNLARS..GAQYVVREGET.ILDVLR...N.A.GHHVTSSCRQ.......GI....CGMCETTLISGVP.....DHRD....RLLTDSEKASGRT...................M.LICCSRAL
+POBB_PSEPS/236-311               VHLARS..GRTIPIAAGCT.ILDALQ...A.G.GVAVPSSCQQ.......GV....CGICETAVLAGVP.....DHRD....LVLSDQERAAGRT...................M.MICCSGSK
+YEAX_ECOLI/237-313               LVLARS..GKEFVVPEEMT.ILQVIE...N.NKAAKVECLCRE.......GV....CGTCETAILEGEA.....DHRD....QYFSDEERASQQS...................M.LICCSRAK
+Q47914_SPHCR/241-316             VLARRS..GQEFTVEPGMT.ILETLL...Q.N.GISRNYSCTQ.......GV....CGTCETKVLEGEP.....DHRD....WVLSDEKKASNST...................M.LICCSLSK
+PDR_BURCE/241-314                VRLSRS..GTSFEIPANRS.ILEVLR...D.A.NVRVPSSCES.......GT....CGSCKTALCSGEA.....DHRD....MVLRDD..EKGTQ...................I.MVCVSRAK
+#=GR PDR_BURCE/241-314     SS    EEES--..--EEEE-TTS-.HHHHHH...H.T.T-----S---.......--....----EEEEEE--E.....E---....SS--TT..T---E...................E.ETTT-EES
+PHT2_PSEPU/243-316               VTLGRS..GIDLEIPVDRS.ILEVLR...D.N.GIRAPSSCES.......GT....CGSCRTRLIEGDV.....EHRD....MVLREDEQH..DQ...................I.MICVSRAR
+O86347_MYCTU/231-301             LELARS..RRVLRVPANRS.ALDVML.....DWDPTTAYSCQQ.......GF....CGTCKVRVLAGQV.....DRRG....RIIEGDN.....E...................M.LVCVSRAV
+YFAE_ECOLI/4-77                  VTLRIT..GTQLLCQDEHP.SLLAAL...E.SHNVAVEYQCRE.......GY....CGSCRTRLVAGQV......D......WIAEPLAFIQPGE...................I.LPCCCRAK
+Y1309_HAEIN/3-75                 IHLIRH..NTTLEFNNET..SLLDHL...E.KNNIHHEYQCRS.......GY....CGSCRVKIKKGKV......S......YKEMPLAFIQPDE...................I.LLCCCHVE
+O31003_VIBAN/5-73                VIVKPS..GVEYQSG..RN.ILDDAF...A.S.SISLEHSCKT.......GD....CGVCCAEVISGLV.....ENEN........GELVTQG.H...................I.LTCQSKAK
+RFBI_SALTY/5-76                  IKIFPS..NIEFSGREDES.ILDAAL...S.A.GIHLEHSCKA.......GD....CGICESDLLAGEVV....DSKG.........NIFGQGDK...................I.LTCCCKPK
+P95461_9PSED/17-94               VQILPQ..DVTIVLEPGQT.LLEAAL...A.N.GIAYPHDCTV.......GT....CASCKTRLKQGRVR...EATPF...GYTLSKAELDA.GY...................I.LACQAFPR
+O85971_SPHAR/13-90               VTVEGS..PTTLDIPAGKT.LLEAML...D.A.GLAMPHDCKV.......GS....CGTCKFKLVSGKIG...ELSPS...ALALEGDELRS.GF...................R.LACQAIPR
+XYLA_PSEPU/20-97                 VSVRGQ..GFQFKVPRGQT.ILESAL...H.Q.GIAFPHDCKV.......GS....CGTCKYKLISGRVN...ELTSS...AMGLSGDLYQS.GY...................R.LGCQCIPK
+YCBX_ECOLI/293-362               IDWQGQ....AFRGNNQQV.LLEQLE.....NQGIRIPYSCRA.......GI....CGSCRVQLLEGEV......T.P......LKKSAMGDDGT....................ILCCSCVPK
+P96096_THIFE/9-86                HTRDKQ..QVSFVCSEAED.LLSAAD...R.G.SILLPSQCRK.......GT....CGACVATVTAGTYH...LGEVS..MEALPEKAQ.ARGDV.....................LLCRTYPR
+MMOC_METTR/7-81                  ETEDGE..TCRRMR.PSED.WISR.A...E.A.ERNLLASCRA.......G.....CATCKADCTDGDYE...LIDVK..VQAVPPDEE.EDGKV.....................LLCRTFPR
+O85675_ACIAD/8-85                NFADGK..TFFIAVQEDEL.LLDAAV...R.Q.GINLPLDCRE.......GV....CGTCQGTCETGIYE...QEYVD..EDALSERDL.AKRKM.....................LACQTRVK
+BENC_ACIAD/19-98                 QFEDGV..TRFIRIAQGET.LSDAAY...R.Q.QINIPMDCRE.......GA....CGTCRAFCESGNYD...MPEDNY.IEDALTPEEAQQGYV.....................LACQCRPT
+#=GR BENC_ACIAD/19-98      SS    E-----..EEEEEE-----.HHHHHH...H.T.T---S-S---.......--....----EEEEEE-EEE...--GGGS.-TTT--HHHHH---E.....................ETTT-EEE
+XYLZ_PSEPU/8-86                  DFEDGV..TRFIDANTGET.VADAAY...R.Q.GINLPLDCRD.......GA....CGACKCFAESGRYS...LGEE.YIEDALSEAEA.EQGYV.....................LTCQMRAE
+CBDC_BURCE/8-85                  RFEDDV..TYFITSSEHET.VADAAY...Q.H.GIRIPLDCRN.......GV....CGTCKGFCEHGEYD...GGDY.I.EDALSADEA.REGFV.....................LPCQMQAR
+O66892_AQUAE/7-72                RYSDGDFRWEEYEVDGEGKTVLEILQNIKEIDPTLSFRAMCRA.......GI....CGTCVVKVN.....................GEHK..........................LACNTRVY
+O85226_PSEFL/27-86               VTA.AL..GETVLSVIQATGLRQVAR...N.DHGQLVGAYCGM.......GV....CHCCLVQIDG...................RHKR...........................RACQTLVK
+O29575_ARCFU/14-75               AYWQSFEVPAKR.GMTVLEALYYIKE...NLDSSLAFRASCRM.......GI....CGSCAMKIN.....................DKP..........................RLACETQVL
+O27878_METTH/21-82               PHLESYEIPSKE.KMKVLDALQLINK...IHGANIAFRSSCRA.......GQ....CGSCAVKMN.....................GEV..........................VLACRAEVE
+Y092_METJA/14-73                 EYLESYEVP..E.NITVLEALEYINK...HYEANILFRASCRN.......AQ....CGSCAVTIN.....................GEP..........................RLACETKVE
+FER5_RHOCA/10-107                IMKKDK..TIYAVAGNTATILALAKE...H.AIPIPF..ECG........DG...DCASCLIEVTHLDN.....KPAMAMMLTEKEKARLKELQMITAEEIEAA..EVSDLPPRFRLACQFIPR
+Q44501_AZOVI/10-107              LMPHNK..KVQAVAGKRSTLLGVAQE...N.GVKIPF..ECQ........DG...NCGSCLVKITHLDG.....ERIKGMLLTDKERNVLKSVGKLPKSEEERA..AVRDLPPTYRLACQTIVT
+Q46508_DESFR/6-74                ITIDGK..TTSVPE...GSTILDAAK...T.L.DIDIPTLCYLNLEALSINNKAASCRVCVVE.....................VEGRRN....L....................APSCATPVT
+Q9ZBV9_STRCO/15-78               FTLDGQ..EARVPE...GSTILDACR...A.A.GKDVPTLCEGDT..LAPKN...ACRVCVVD.....................VEGART....L....................APACSRKAE
+NUOG_MYCTU/19-82                 LTIDGV..EISVPK...GTLVIRAAE...L.M.GIQIPRFCDHPL..LEPVG...ACRQCLV.....................EVEGQR....KP....................LASCTTVAT
+O87815_CUPNE/22-85               LEVDGV..SVTVPA...GTSVMRAAM...E.A.QIAVPKLCATDS..LRNFG...SCRLCLV.....................EIEGRR....GY....................PASCTTPVE
+NQO3_THET8/4-88                  VKVNDR..IVEVPP...GTSVMDAVF...H.A.GYDVPLFCSEKH..LSPIG...ACRMCLVRIGLPKKGPDGKPLLNEKGEPEIQWQP....KL....................AASCVTAVA
+#=GR NQO3_THET8/4-88       SS    EE-SS-..EEEE--...--BHHHHHH...H.-.------SS--TT..S----...----SEEB-------------------------S....S-....................EETTT-B--
+P74022_SYNY3/6-69                LTIDDK..AIAIEE...GASILQAAK...E.A.GVPIPTLCHLEG..ISEAA...ACRLCMVE.....................VEGTNK....L....................MPACVTAVS
+P94157_SYNP6/6-69                LQIDDQ..ELAANV...GQTVLQVAR...E.A.SIPIPTLCHLQG..VSDVG...ACRLCVVE.....................VAGSPK....L....................QPACLLTVS
+Q44513_ANAVA/6-69                LTINDQ..LISAQE...EETLLQAAQ...E.A.GIHIPTLCHLEG..VGDVG...ACRLCLVE.....................VAGSNK....L....................LPACVTKVA
+P77908_MOOTH/4-67                LTIDGQ..RVTAPE...GMTILEVAR...E.N.GIHIPTLCHHPK..LRPLG...YCRLCLVD.....................IEGAAK....P....................MTACNTPVA
+Q9ZJW1_HELPJ/4-65                MNINGK..TIECQE...GQSVLEAAR...S.A.GIYIPTICYLSG..CSPTV...ACKMCMV........................EMDG...KR....................IYSCNTKAK
+O05397_BACSU/11-72               VRVDGT..EIQARA...GATILDILN...E.N.GIEYPQICHVPE..VDPIQ...TCDTCIV........................EANG...KL....................VRSCATVAE
+YJGC_BACSU/7-68                  ITINGV..EMEASE...EQTVLQLLN...N.S.SIEVPQVCYHPS..LGPIE...TCDTCIV........................SING...EL....................KRSCSAELK
+NUOG_SALTI/4-72                  IHVDGK....EYEVNGADN.LLQACL...S.L.GLDIPYFCWHPAL.GSVGA....CRQCAVK..................QYQNAEDTR...GR...................LVMSCMTPAT
+O66748_AQUAE/6-70                KIYIDD...VEIEAEKGKTVLQVALE..N....GIDIPYFCYHPR..LSIAG...ACRMCVVY.......................WEDINR......................LVISCNLPVQ
+NDUS1_DICDI/5-71                 FKINEI..ECEVNEEKEDITILQACT...A.N.GIEIPRFCYHEK..LTIAG...NCRMCLV.....................YVTNEE....KL....................LAACGIPLD
+NQO3_PARDE/7-71                  IKIDDT....IIEVDPNMT.LIQACE...M.A.GIEVPRFCYHER..LSIAG...NCRMCLVEVVGG........PPK........PA............................ASCAMQVK
+NDUS1_NEUCR/38-101               LTIDGK..KVSIEA...GSALIQACE...K.A.GVTIPRYCYHEK..LMIAG...NCRMCLV.....................EVEKVP....KP....................VASCAWPVQ
+NUOG_RICPR/4-67                  LIIDGS..EIEISE...GSTVYQACI...Q.A.GKEIPHFCYHAR..LKIAG...NCRMCLV.....................EIEKSQ....KP....................VASCAMPVS
+NDUS1_SOLTU/70-133               VFVDGY..PVKIPK...GMTVLQACE...I.A.GVDIPRFCYHSR..LSIAG...NCRMCLV.....................EVEKSP....KP....................VASCAMPAL
+NDUS1_RECAM/4-67                 VFVDGL..SVEVKK...GATILQACA...Q.V.GIEIPRFCYHER..LSIAG...NCRMCLV.....................EVEKSP....KP....................VASCAMPVM
+NDUS1_BOVIN/34-97                VFVDGQ..SVMVEP...GTTVLQACE...K.V.GMQIPRFCYHER..LSVAG...NCRMCLV.....................EIEKAP....KV....................VAACAMPVM
+O52683_THEMA/3-65                IYVDGR..EVIIN..DNERNLLEALK.....NVGIEIPNLCYLS.....EASIYGACRMCLVEIN.......................GQIT........................TSCTLKPY
+Q46606_DESVU/3-71                AFINGK..EVRCEP...GRTILEAAR...E.N.GHFIPTLCELADIGHAPGT....CRVCLVE.....................IWRDKEAGPQI....................VTSCTTPVE
+HOXU_CUPNH/5-66                  ITIDGK..TLTTEE...GRTLVDVAA...E.N.GVYIPTLCYLKDK.PCLGT....CRVCSVKVN.....................GN......V....................AAACTVRVS
+P72305_RHOOP/5-66                IEIDGV..TVTTEE...SRTLVDVAA...E.A.GVYIPTLCYLKGK.PSLGT....CRVCSVK.....................LNGTV..........................VAACTIRVA
+Q59261_CLOSA/4-67                IVIDEK..TIQVQE...NTTVIQAAL...A.N.GIDIPSLCYLNEC.GNVGK....CGVCAVE.....................IEGKNN....L....................ALACITKVE
+Q9ZNE4_CLOPE/4-67                IIINDK..TIEFDG...DKTILDLAR...E.N.GFDIPVLCELKNC.GNKGQ....CGVCLVE.....................QEGNDR....L....................LRSCAIKAK
+PHF1_CLOPA/4-67                  IIINGV..QFNTDE...DTTILKFAR...D.N.NIDISALCFLNNCNNDINK....CEICTVE.....................VEGTG.....L....................VTACDTLIE
+Q59262_CLOAB/4-66                IILNGN..EVHTDK...DITILELAR...E.N.NVDIPTLCFLKDC.GNFGK....CGVCMVE.....................VEGKG.....F....................RAACVAKVE
+P74801_SYNY3/5-63                IHFLPD..DVTVAARVGEPILDVAER......AGVFIPTGCLM.......GS....CHACEVELG.......................DGTP.......................ICACISAVP
+XDHE_BACSU/18-77                 MTVNGQ..AWEV.AAVPTTHLSDLLR...KEFQLTGTKVSCGI.......GR....CGACSILID.....................GK......L....................ANACMTMAY
+HCRC_THAAR/7-66                  LTLNGR..ARED.LVPDNMLLLDYLR...ETVGLTGTKQGCDG.......GE....CGACTVLVD.....................DR......P....................RLACSTLAH
+#=GR HCRC_THAAR/7-66       SS    EEE---..EEEE.EEETT-BHHHHHH...HT------------.......--....----EEEET.....................TE......E....................EEGGGSBGG
+P95635_RHOPA/15-74               LNVNGR..WRED.AVTDDMLLVDYLR...DIAGLTGVKTGCDG.......GE....CGACTVLID.....................GE......A....................APSCLVLAV
+XDHC_ECOLI/11-69                 CTINGM..PFQLHAAPGTP.LSELLR...E.QGLLSVKQGCCV.......GE....CGACTVLVD....................G..TAID.........................SCLYLAA
+YAGT_ECOLI/65-124                LKVNGK..TEQL.EVDTRTTLLDTLR...ENLHLIGTKKGCDH.......GQ....CGACTVLVN.....................GR......R....................LNACLTLAV
+DCMS_HYDPS/8-67                  VNVNGK..AQEK.AVEPRTLLIHFLR...EELNLTGAHIGCET.......SH....CGACTVDID.....................GR......S....................VKSCTHLAV
+Q52589_9PSED/8-67                MTVNGR..KVEE.AVEARTLLVHFLR...EKLNLTGTHIGCDT.......SH....CGACTVDVD.....................GK......S....................IKSCTHLAV
+O52837_BRAJA/6-65                LIVNGN..PVTA.NVDPRTLLVQFLR...ENLRLTGTHVGCDT.......SQ....CGACVVHLD.....................GK......A....................VKSCTTLAV
+O53709_MYCTU/5-64                MTVNGE..PVTA.EVEPRMLLVHFLR...DQLRLTGTHWGCDT.......SN....CGTCVVEVD.....................GV......P....................VKSCTMLAV
+O87682_ARTNI/8-67                VEVNGV..THAT.DVEPRRLLADFLR...DDLHLRGTRVGCEH.......GV....CGSCTVLLD.....................GQ......P....................VRSCTVLAV
+Q59128_ARTNI/14-73               VEVNGR..RRTV.AVDARETLADHLR...NDQKLTGIKLGCEH.......GV....CGACTILMD.....................GA......A....................VRSCLTLAA
+P72223_PSEPU/14-73               ATINGK..PRVF.YVEPRMHLADALR...EVVGLTGTKIGCEQ.......GV....CGSCTILID.....................GA......P....................MRSCLTLAV
+#=GR P72223_PSEPU/14-73    SS    EEE---..EEEE.EE-TTSBHHHHHH...HT------------.......--....----EEEE-.....................--......E....................EEGGGSBGG
+Q9ZBN8_STRCO/5-65                LTVNGR..PQEADDVWEGESLLYVLR...ERMGLPGSKNACEQ.......GE....CGSCTVRLD.....................GVP..........................VCSCLVAAG
+O54050_RHOCA/5-68                FLLNGE..TRRVRIEDPTQSLLELLR...A.EGLTGTKEGCNE.......GD....CGACTVMIRD.................AAGSR......A....................VNACLMMLP
+#=GR O54050_RHOCA/5-68     SS    EEE---..EEEEE-S-TT-BHHHHHH...H.------------.......--....----EEEEES.................----E......E....................EETTTSBGG
+O23887_MAIZE/15-85               LAVNGK..RYEAAGVAPSTSLLEFLR...TQTPVRGPKLGCGE.......GG....CGACVVLVSK.................YDPATDEVTEFS....................ASSCLTLLH
+ALDO4_ARATH/8-78                 FAVNGE..KFEVLSVNPSTTLLEFLR...SNTCFKSVKLSCGE.......GG....CGACIVILSK.................YDPVLDQVEEYS....................INSCLTLLC
+ALDO1_ARATH/23-95                FAINGQRFELELSSIDPSTTLVDFLR...NKTPFKSVKLGCGE.......GG....CGACVVLLSK.................YDPLLEKVDEFT....................ISSCLTLLC
+O30328_ACEEU/4-63                FRLNGR..EVTV.DVPGDTPLLWVIR...DEVGLTGTKFGCGI.......GM....CGACTIHIG.....................GR......A....................TRSCVTPVS
+IORA_BREDI/4-64                  FILNGQ..PVRVTEVPEDAPLLWVVR...EHLKLSGTKFGCGL.......GL....CGACTVHIN.....................GE......A....................ARSCITPLS
+XDH_EMENI/39-108                 FYLNGT..KVILDSVDPEITLLEYLR...G.IGLTGTKLGCAE.......GG....CGACTVVVS..........QIN.....PTTKKL....YHA..................SINACIAPLV
+O61198_CAEEL/8-78                FNVNGK..DIKEENVDPELTLAYYLR...NKLGLRGTKLGCEE.......GV....CGSCTVVLGT.................WDDSLNKAVYSA....................VNACLVPLF
+O17892_CAEEL/18-86               FYVNGK..RVEEKDVDPKMTLATYLR...DKLKLTGTKIGCNE.......GG....CGACTIMISH.................IENGE..IKHFS....................ANSCLMPVC
+XDH_DROSU/13-83                  FFVNGK..KVTDTNPDPECTLLTYLR...DKLRLCGTKLGCAE.......GG....CGACTVMISR.................MDRGQHKIRHLA....................VNACLTPVC
+O17506_BOMMO/19-89               FYVNGK..KVIESSPDPEWTLLWYLR...KKLRLTGTKLGCAE.......GG....CGACTVMVSK.................YNRQENKIIHLA....................VNACLAPVC
+Q17250_BOMMO/18-88               FFVNGK..KVLESNPDPEWTLLFYLR...KKLKLTGTKYGCGE.......GG....CGACTVMVSK.................YLKNEDRINHIA....................VNACLISVC
+ADO_BOVIN/9-79                   FYVNGR..KVTEKNVDPETMLLPYLR...KKLRLTGTKYGCGG.......GG....CGACTVMISR.................YNPITKKIRHYP....................ANACLTPIC
+XDH_BOVIN/8-78                   FFVNGK..KVVEKNADPETTLLAYLR...RKLGLRGTKLGCGE.......GG....CGACTVM............LSK.....YDRLQDKIIHFS....................ANACLAPIC
+#=GR XDH_BOVIN/8-78        SS    EEE---..EEEETT--TT-BHHHHHH...HT------------.......--....----EEE............EEE.....EETTTTEEEEEE....................EETTT-BGG
+MOP_DESGI/6-65                   ITVNGI..EQNL.FVDAEALLSDVLR...QQLGLTGVKVGCEQ.......GQ....CGACSVILD.....................GK......V....................VRACVTKMK
+#=GR MOP_DESGI/6-65        SS    EEE---..EEEE.EE-TTSBHHHHHH...HT------------.......--....----EEEE-.....................--......E....................EEGGG-BGG
+O53669_MYCTU/13-78               DESCGELREFTVEVNEGEVVLDVILRLQQTQTPDLAVRWNCKA.......GK....CGSCSAEIN.....................GKPR..........................LMCMTRMS
+O29566_ARCFU/5-80                TFL.PS..GKRAEVDEGKTILSAAQE...I.GEGIRS..LCGG.......KG...SCGKCL..VVVR........KGDVEILSEEAHEKFVRE..K.................GYYLACQTAVK
+O30225_ARCFU/5-84                TFE.PV..GKKVE.DEPDTILEIARR...N.GVLIRS..DCGG.......KG...VCGKCK..VVVVDY......RGSLSDITDHERKHLIEEEISK................GYRLACQARVE
+NQRF_CHLTR/46-122                NND.DS..LTKTV.DSGKTLLSSLLD...S.GIAIPS..PCGG.......KA...ACKQCK..VRIT.........KNADEPLETDRSTFSKQQLEQ................GWRLSCQTKVQ
+NQRF_HAEIN/43-119                NDD.PE..KAITL.PAGGKLLGALAS...K.GIFVSS..ACGG.......GG...SCGQCI..VKVK.........NGGGEILPTELSHINKREAKE................GYRLACQVNVK
+NQRF_VIBAL/39-115                NDD.PS..LAIVT.QPGGKLLSALAG...A.GVFVSS..ACGG.......GG...SCGQCR..VKVK.........SGGGDILPTELDHITKGEARE................GERLACQVAMK
+O84062_CHLTR/8-83                ADD......ENQEFHLEDGSSIAEV......CEHSGVPLACT........EG...VCGTCVIEVLEGA........DNLSDFSEAEYDFLGDPEDS.................NERLACQCCIK
+Q9Z8H9_CHLPN/8-83                SDD......EQQEFELEDNSEIAEP......CESMGIPFACT........EG...VCGTCVIEVLEGR........ENLSEFTEPEYDFLGEPEDS.................NERLACQCRIK
+CSMJ_CHLTE/5-82                  IND......KPCNAKVGDLLLNTAK......LNKAHIGYICGG.......NG...ICQSCFVYVLEGA........ECLSEPGEDEKAFISDKLFAE................GGRLACRTTIV
+CSMI_CHLTE/5-82                  IND......KTASSSVGQTIGKAAR......LNHAHVGYVCGG.......HG...LCQACYITVQEGA........DCLAPLTDVEKAFLSPRQIAA................GGRIACQATIA
+FER_TRIVA/13-90                  AVKGGVKKQLKFEDDQTLFTVLTEAG.......LMSADDTCQG.......NK...ACGKCICKHVSGKV......A.A..E..DDEKEFLEDQPAN..................ARLACAITLS
+#=GR FER_TRIVA/13-90       SS    EE----EEEE---TTEEHHHHHHT--.......----TTS---.......--...-----EEEEEE---......-.-..-..HHHHHHCTTS-TT..................EEEGGG-EE-
+P73774_SYNY3/7-88                LICLPD..NRLLEIDSNETILDALLK..G....DIAHISVCGG.......KA...NCSTCRIMVLDGIK.....NCSPPTSIEQALAKKLDFPFHV..................R.LACQTKLS
+FER_BUCAP/10-92                  KLLLPK..GGCFECKEGETILNVALK...N.NIKLEHA..CEK.......SC...ACSTCH..CIIRKG......FLSLSGWSEKEEDVLDKAWGLE...............STSRLSCQAIIG
+O69222_AZOVI/11-93               EVHCPE..GRVVEAETGESILEAALR...N.DIEIEHA..CEM.......SC...ACTTCH..VIVRDG......FDSLEPSDELEDDMLDKAWGLE...............PESRLSCQARVG
+FER_HAEIN/10-92                  EDFCPE..GMVVDAATGDN.LLEVAH...N.A.GVEIHHACDG.......SC...ACTTCHVIVREG........FDSLNETSDQEEDMLDKAWGLE...............MDSRLSCQCVVG
+FER_PSEAE/10-92                  ADHCPE..GAVFEAKPGET.ILDAAL...R.N.GIEIEHACEK.......SC...ACTTCHVIVREG........LDSMEPSDELEDDMLDKAWGLE...............PDSRLSCQAVVA
+ADRX_YEAST/67-149                LKD.GS..QKTYEVCEGETILDIAQG...H.NLDMEG..ACGG.......SC...ACSTCH.VIVDPDY......YDALPEPEDDENDMLDLAYGLT...............ETSRLGCQIKMS
+ADX_PIG/71-155                   NRD.GK..TLTTQGKVGDSLLDVVIE...N.NLDIDGFGACEG.......TL...ACSTCH.LIFEDHI......FEKLEAITDEENDMLDLAYGLT...............DRSRLGCQICLT
+FER2_RICPR/11-93                 IND.EE..ERTVEAPIGLSILEIAHS...N.DLDLEG..ACEG.......SL...ACATCH.VMLEEEF......YNKLKKPTEAEEDMLDLAFGLT...............DTSRLGCQIILT
+O49551_ARATH/44-127              DKD.GE..EIHIKVPVGMNILEAAHE...N.DIELEG..ACEG.......SL...ACSTCHVIVMDTKY......YNKLEEPTDEENDMLDLAFGLT...............ATSRLGCQVIAK
+ETP1_SCHPO/525-592               TPE.GR..EIMIE....GN......E...E.G.......ACEG.......SV...ACSTCHVIVDPEHY.....ELLD..PPEEDEEDMLDLAFGLE...............ETSRLGCQVLLR
+#=GR ETP1_SCHPO/525-592    SS    ---.--..EEEE-....--......-...-.-.......----.......--...--STT-EEE-HHHH.....HHS-..---HHHHHHHCTB----...............TTEE-----B--
+O07876_SPHSX/8-91                AAD.GR..EIETNVDIGTDLMHAGLY...N.SVPGLLG.ECSG.......GL...ACATCR.VHVPAEW......QGVLPAALPAEAELLGFCEESP...............PEARLSCQIKMT
+Q9ZAM5_SPHSX/8-91                SED.GS..ELETTVDVGVDLMHAGLY...N.SIPGILG.ECSG.......GL...ACATCR.VRVPVEW......QSILPPAFPSEAELLGFCDEAP...............PEARLSCQIKMT
+FER2_CAUCR/8-91                  QHD.GA..EQVIDVKPGLTVMEGAVK...N.NVPGIDA.DCGG.......AC...ACATCH.VYVDEAW......LDKTGDKSAMEESMLDFAENVE...............PNSRLSCQIKVS
+FER6_RHOCA/7-91                  EHN.GT..RHEVEAKPGLTVMEAARD...N.GVPGIDA.DCGG.......AC...ACSTCH.AYVDPAW......VDKLPKALPTETDMIDFAYEPNP..............ATSRLTCQIKVT
+#=GR FER6_RHOCA/7-91       SS    ---.--..EEEEE-----BHHHHHHT...-.-------.----.......--...SS-TTE.EEE-HHH......HTTS----HHHHHHHTTSSS--T..............TTEEEGGG-B--
+P74447_SYNY3/31-113              IKLDPIDLKVAIETNDNLLSGLLGQD........LRIMKECGG.......RG...MCATCHVYITAGMES...LSPLNRREQRTLEVITTHNRYS...................R.LACQARVL
+P73171_SYNY3/7-85                SFPQTKFLPLSLEFNACLAEYLTPDN........SPILFGCRT.......GL....CGTCLVKVVGEIL......SPEAEEREILAILAPDDVQA...................R.LACQIKLT
+FER1_AQUAE/3-83                  VIINGK....EFDIPKGVRFGELSHE.....IEKAGIEFGCTD.......GQ....CGVCVARVIKGMECL..NEPSEEEEETLWRVGAVDEDQR.....................LTCQLVIE
+FER4_RHOCA/7-86                  TFTDVS...ITVNVPTGTRIIEMSEK......VGSGITYGCRE.......GE....CGTCMTHILEGSE.....NLSEPTALEMRVLEENLGGKD...................DRLACQCRVL
+P74283_SYNY3/5-88                FVKEQK....DIVVAQGANLREKALQNGVDIYTLKGKLMNCGG......YGQ....CGTCIVEITAGME.....NLSPKTDFENRVLRKKPDNFR.....................LACQTLVN
+PUTX_PSEPU/8-92                  SHD.GT..RRELDVADGVS.LMQAAV...S.NGIYDIVGDCGG.......SA...SCATCHVYVN................EAFTDKVP.....AANEREIGMLECVTAELKPNSRLCCQIIMT
+#=GR PUTX_PSEPU/8-92       SS    E--.--..EEEEE-----B.HHHHHH...H.---TTG------.......--...SSSTTEEEE-................TTTGTTS-.....---TTT---GGGSSS---TTEEEGGG-B--
+TERPB_PSESP/8-92                 DEQSGE...YAVDAQDGQS.LMEVAT...Q.NGVPGIVAECGG.......SC...VCATCRIEIEDAWV......E.......IVGEANPDENDLLQSTGE........PMTAGTRLSCQVFID
+P95277_MYCTU/9-84                GYSDGT..HKTMPVRCDQT.VLDAAE.....EHGVAIVNECQS.......GI....CGTCVATCTAGRYQ....MG.R...TEGLSDVERAARKI.....................LTCQTFVT
+O05933_PSEPU/11-88               NFSDGV..SRSFDVEAGTS.ILDAAI.....ESEIPLLYQCRS.......GS....CSTCIAQLTEGEAH....TRAG..ASSTLLASEYASGQR.....................LLCLCQAQ
+DESET_MYCTU/303-373              FARSGK....SVAADAATS.LMDAGE.....GAGVQLPFGCRM.......GI....CQSCVVDLVEGHV......R.D.....LRTGQRHEPGTR....................VQTCVSAAS
+O23344_ARATH/57-131              VEHDGK..TTELEVEPDETILSKALD...S...GLDVPYDCNL.......GV....CMTCPAKLVTGTV.....DQSG....GMLSDDVVERGYT.....................LLCASYPT
+P74159_SYNY3/11-86               DRQNEK..DYSVIVSDDRYILHQAED...Q...GFELPFSCRN.......GA....CTACAVRVISGQIH....QP....EAMGLSPDLQRQGYA.....................LLCVSYAQ
+FER2_SYNP6/8-83                  VIYQGQ..SQTFTADSDQS.VLDSAQ...A.A.GVDLPASCLT.......GV....CTTCAARILSGEV.....DQPD...AMGVGPEPAKQGYT.....................LLCVAYPR
+P73388_SYNY3/9-84                IQHQGQ..TYTISVPEDKT.VLQAAD...D.E.GIQLPTSCGA.......GV....CTTCAALITEGTA.....EQAD...GMGVSAELQAEGYA.....................LLCVAYPR
+FER1_HALMA/35-108                DEDYGS.....LEVNEGEY.ILEAAE...A.Q.GYDWPFSCRA.......GA....CANCAAIVLEGDI.....DM..D.MQQILSDEEVEDKNV....................RLTCIGSPD
+P74449_SYNY3/11-88               NPATGS..DVTIEVAEDEL.ILEAAE...N.Q.GLDLPYSCRA.......AS....CVACAGRLLEGTVE...HTDKG...SDFLKPEELAAGCV.....................LLCAAYAT
+FER2_NOSMU/10-85                 NAAEGL..DETIEVPDDEY.ILDAAE...E.A.GLDLPFSCRS.......GS....CSSCNGILKKGTV.....DQSD...QNFLDDDQIAAGNV.....................LTCVAYPT
+FER2_APHSA/10-86                 NEEEGI..NAILEVADDQT.ILDAGE...E.A.GLDLPSSCRA.......GS....CSTCAGKLVSGAA.......PNQDDQAFLDDDQLAAGWV.....................MTCVAYPT
+FER1_CYAPA/10-85                 CEEQGL..DTTIECPDDEY.ILDAAE...E.Q.GIDLPYSCRA.......GA....CSTCAGKVVEGTV.....DQSD...QSFLDDAQLAAGYV.....................LTCVAYPS
+FER_PORPU/10-85                  SEDEGI..DVTFDCSEDTY.ILDAAE...E.A.GIELPYSCRA.......GA....CSTCAGKVTEGSV.....DQSD...QSFLDDEQLLKGYV.....................LTCIAYPE
+FER_ODOSI/10-85                  SEEHDI..DATIDCNDDVF.LLDAAE...E.Q.GIELPYSCRA.......GA....CSTCAGKVTEGDI.....DQSE...QTFLDDDQVGAGFV.....................LTCIAYPK
+FER_BUMFI/9-84                   NEEKNI..NAVIKCPDDQF.ILDAAE...E.Q.GIELPYSCRA.......GA....CSTCAGKVLSGTI.....DQSE...QSFLDDDQMGAGFL.....................LTCVAYPT
+FER3_CYACA/9-84                  NKDQGI..DETIECPDDQY.ILDAAE...E.Q.GLDLPYSCRA.......GA....CSTCAGKLLEGEV.....DQSD...QSFLDDDQVKAGFV.....................LTCVAYPT
+FER2_CYACA/8-83                  NQKEGV..DVTINCPGDQY.ILDAAE...E.Q.GVDLPYSCRA.......GA....CSTCAGKLVKGSV.....DQSD...QSFLDEEQINNGFI.....................LTCVAYPT
+FER_BRYMA/8-83                   KLDDGS..EAVIDCDEDSF.ILDVAE...E.E.GIDIPFSCRS.......GS....CSTCAGKIEGGTV.....DQSE...QTFLDDDQMEEGYV.....................LTCVAYPT
+FER_APHSA/9-83                   KTPDGD..NVIT.VPDDEY.ILDVAE...E.E.GLDLPYSCRA.......GA....CSTCAGKLVSG........PAPDEDQSFLDDDQIQAGYI.....................LTCVAYPT
+FER_THEVL/9-84                   VRPDGS..ETTIDVPEDEY.ILDVAE...E.Q.GLDLPFSCRA.......GA....CSTCAGKLLEGEV.....DQSD...QSFLDDDQIEKGFV.....................LTCVAYPR
+FER_PERBI/6-80                   DTPDGK...KSFECPGDSY.ILDKAE...E.E.GLELPYSCRA.......GS....CSSCAGKVLTGSI.....DQSD...QAFLDDDQGGDGYC.....................LTCVTYPT
+FER3_RAPSA/8-82                  ITPEGE...QEVECDDDVY.VLDAAE...E.A.GIDLPYSCRA.......GS....CSSCAGKVVSGSV.....DQSD...QSFLDDDQIAEGFV.....................LTCAAYPT
+FER1_SPIOL/58-132                VTPTGN...VEFQCPDDVY.ILDAAE...E.E.GIDLPYSCRA.......GS....CSSCAGKLKTGSL.....NQDD...QSFLDDDQIDEGWV.....................LTCAAYPV
+FER_SILPR/57-131                 TKESGT...VTFDCPDDVY.VLDQAE...E.E.GIDLPYSCRA.......GS....CSSCAGKVVAGSV.....DQSD...QSFLDDDQIEAGWV.....................LTCAAYPS
+FER_WHEAT/54-128                 VTPEGE...VELEVPDDVY.ILDQAE...E.E.GIDLPYSCRA.......GS....CSSCAGKLVSGEI.....DQSD...QSFLDDDQMEAGWV.....................LTCHAYPK
+FER_SAMNI/8-82                   ITPDGP...QEFECPDDVY.ILEHAE...E.L.GIDIPYSCRA.......GS....CSSCAGKLVAGSV.....DQSD...QSFLDDEQIEEGWV.....................LTCVAYPK
+FERA_ALOMA/8-82                  VTPQGQ...QEFDCPDDVY.ILDQAE...E.E.GIDLPYSCRA.......GS....CSSCAGKVKQGEV.....DQSD...GSFLDDEQMEQGWV.....................LTCVAFPT
+FER_ARCLA/8-82                   ITPEGK...QEFEVPDDVY.ILDHAA...E.E.VGDLPYSCRA.......GS....CSSCAGKVTAGSV.....DQSD...GSYLDDDQMEAGWV.....................LTCVAYPT
+FER_DATST/8-82                   VTPDGP...VEFNCPDDVY.ILDQAE...E.E.GHDLPYSCRA.......GS....CSSCAGKVTAGTV.....DQSD...GNYLDDDQMADGFV.....................LTCVAYPQ
+FER_PALPL/9-83                   STPGGV...EEIEGDETTY.VLDSAE...D.Q.GIDLPYSCRA.......GA....CSTCAGIVELGTV.....DQSD...QSFLDDDQLNDSFV.....................LTCVAYPT
+FER_EUGVI/8-82                   INPDGE..VTI.ECGEDQY.ILDAAE...D.A.GIDLPYSCRA.......GA....CSSCTGIVKEGTV.....DQSD...QSFLDDDQMAKGFC.....................LTCTTYPT
+FER_CHLFU/6-80                   KTPSGE...ETIECPEDTY.ILDAAE...E.A.GLDLPYSCRA.......GA....CSSCAGKVESGEV.....DQSD...QSFLDDAQMGKGFV.....................LTCVAYPT
+FER_SYNY4/9-83                   ITPDGE...NSIECSDDTY.ILDAAE...E.A.GLDLPYSCRA.......GA....CSTCAGKITAGSV.....DQSD...QSFLDDDQIEAGYV.....................LTCVAYPT
+FER1_PHYAM/8-82                  VTPSGT...QTIDCPDDTY.VLDAAE...E.A.GLDLPYSCRA.......GS....CSSCTGKVTAGTV.....DQED...QSFLDDDQIEAGFV.....................LTCVAFPK
+FER2_PHYAM/9-83                  VTPSGT...NTITCPADTY.VLDAAE...E.S.GLDLPYSCRA.......GA....CSSCAGKVTAGAV.....NQED...GSFLEEEQMEAGWV.....................LTCVAYPT
+FER2_SPIOL/8-82                  VTPSGS...QVIECGDDEY.ILDAAE...E.K.GMDLPYSCRA.......GA....CSSCAGKVTSGSV.....DQSD...QSFLEDGQMEEGWV.....................LTCIAYPT
+FER_PHYPA/57-132                 DGETGA..ENVXECSDEEY.XLDAAE...R.A.GMDLPYSCRA.......GA....CSSCAGIIKAGEV.....DQSD...QSFLDDSQIDDGFV.....................LTCVAYPA
+FER_MARPO/7-81                   NTPTGQ...SVIDVEDDEY.ILDAAE...E.A.GLSLPYSCRA.......GA....CSSCAGKVTAGEV.....DQSD...ESFLDDDQMDEGYV.....................LTCIAYPT
+#=GC SS_cons                     EEESS-EEEEEEEEEETTCBHHHHHH...HTT-TTTGTTSS--TT..S..--...SSSTTEEEEEEHCEE....EHCCS..TTHHHHHHHTTSSET-TTT---GGGSSS---TTEEECCCSBGG
+#=GC seq_cons                    hphsup..thphpsssspp.lLcshc...p.t.slslshuCps.......Gs....CusCtsplhtu.................hpspphttt.h.....................LuCtshsp
+//
diff --git a/examples-jbake/assets/RF00031_folded.stk b/examples-jbake/assets/RF00031_folded.stk
new file mode 100644 (file)
index 0000000..e7a76fb
--- /dev/null
@@ -0,0 +1,227 @@
+# STOCKHOLM 1.0
+
+#=GF ID SECIS_1
+#=GF AC RF00031
+#=GF DE Selenocysteine insertion sequence 1
+#=GF AU Griffiths-Jones SR
+#=GF GA 20.0
+#=GF NC 0.0
+#=GF TC 22.6
+#=GF PI SECIS
+#=GF SE Gautheret D, PMID:12458087
+#=GF SS Published; PMID:12458087
+#=GF TP Cis-reg;
+#=GF BM cmbuild  -F CM SEED; cmcalibrate --mpi -s 1 CM
+#=GF BM cmsearch  -Z 169604 -E 1000  --toponly  CM SEQDB
+#=GF DR SO:1001274 SO:SECIS_element
+#=GF DR GO:0001514 GO:selenocysteine incorporation
+#=GF RN [1]
+#=GF RM 8634917
+#=GF RT A novel RNA structural motif in the selenocysteine insertion element
+#=GF RT of eukaryotic selenoprotein mRNAs.
+#=GF RA Walczak R, Westhof E, Carbon P, Krol A;
+#=GF RL RNA 1996;2:367-379.
+#=GF RN [2]
+#=GF RM 12458087
+#=GF RT A survey of metazoan selenocysteine insertion sequences.
+#=GF RA Lambert A, Lescure A, Gautheret D;
+#=GF RL Biochimie 2002;84:953-959.
+#=GF CC The incorporation of selenocysteine into a protein sequence
+#=GF CC is directed by an in-frame UGA codon (usually a stop codon)
+#=GF CC within the coding region of the mRNA.  Selenoprotein mRNAs
+#=GF CC contain a conserved secondary structure in the 3' UTR that
+#=GF CC is required for the distinction of UGA stop from UGA 
+#=GF CC selenocysteine.  The selenocysteine insertion sequence 
+#=GF CC (SECIS) is around 60 nt in length and adopts a hairpin 
+#=GF CC structure which is sufficiently well-defined and conserved
+#=GF CC to act as a computational screen for selenoprotein genes [2].
+#=GF WK http://en.wikipedia.org/wiki/SECIS_element
+#=GF SQ 61
+
+#=GS D.melanogaster.1 AC AY119185.1/838-902
+#=GS D.melanogaster.2 AC AC092237.1/57223-57161
+#=GS D.melanogaster.3 AC AY060611.1/560-627
+#=GS O.niloticus.1    AC Y11109.1/1272-1330
+#=GS O.niloticus.2    AC Y11109.1/927-987
+#=GS O.niloticus.3    AC Y11111.1/1260-1324
+#=GS D.rerio.1        AC AF322071.1/1577-1642
+#=GS X.laevis.1       AC L28111.1/1299-1365
+#=GS G.gallus.1       AC AF125575.1/5781-5843
+#=GS G.gallus.2       AC Y11110.1/1218-1277
+#=GS G.gallus.3       AC Y11273.1/1139-1211
+#=GS M.musculus.1     AC AF195142.1/461-524
+#=GS M.musculus.2     AC AF021345.1/10097-10160
+#=GS M.musculus.3     AC X03920.1/1172-1235
+#=GS M.musculus.4     AC AF096875.1/5504-5568
+#=GS M.musculus.5     AC AF241527.2/359-424
+#=GS M.musculus.6     AC AF136399.1/1808-1868
+#=GS M.musculus.7     AC X84742.1/5239-5302
+#=GS M.musculus.8     AC AF288740.1/1291-1357
+#=GS M.musculus.9     AC AF274027.1/835-900
+#=GS M.musculus.10    AC AB030643.1/4176-4241
+#=GS M.musculus.11    AC AL645723.11/192421-192359
+#=GS M.musculus.12    AC AC002327.1/156204-156268
+#=GS M.musculus.13    AC AF333036.1/2190-2249
+#=GS M.musculus.14    AC U43285.1/2009-2075
+#=GS R.norvegicus.1   AC X57999.1/1526-1586
+#=GS R.norvegicus.2   AC M63574.1/1465-1528
+#=GS R.norvegicus.3   AC AF390544.1/1076-1142
+#=GS R.norvegicus.4   AC AF072865.1/1887-1947
+#=GS R.norvegicus.5   AC X12367.1/703-764
+#=GS R.norvegicus.6   AC U25264.1/366-432
+#=GS R.norvegicus.7   AC L24896.1/600-665
+#=GS H.sapiens.1      AC AF201385.1/3055-3117
+#=GS H.sapiens.2      AC AL049837.4/130674-130738
+#=GS H.sapiens.3      AC U67171.1/375-442
+#=GS H.sapiens.4      AC AF195141.1/689-759
+#=GS H.sapiens.5      AC X53463.1/847-903
+#=GS H.sapiens.6      AC AF093774.1/5851-5916
+#=GS H.sapiens.7      AC X58295.1/1384-1453
+#=GS H.sapiens.8      AC AL833145.1/1479-1545
+#=GS H.sapiens.9      AC S48220.1/1731-1788
+#=GS H.sapiens.10     AC X71973.1/730-791
+#=GS H.sapiens.11     AC AF166127.1/1919-1981
+#=GS H.sapiens.12     AC U43286.1/2054-2120
+#=GS H.sapiens.13     AC BC003127.1/865-928
+#=GS H.sapiens.14     AC S79854.1/1605-1666
+#=GS H.sapiens.15     AC X13710.1/946-1008
+#=GS B.taurus.1       AC D88033.3/5711-5774
+#=GS B.taurus.2       AC D25220.1/1493-1556
+#=GS B.taurus.3       AC AB017534.1/661-726
+#=GS B.taurus.4       AC AB032826.1/1401-1464
+#=GS B.taurus.5       AC AB022283.1/1669-1729
+#=GS B.taurus.6       AC AF053984.1/1951-2017
+#=GS B.taurus.7       AC X13684.1/700-760
+#=GS O.aries.1        AC U67853.1/375-442
+#=GS S.scrofa.1       AC AF380118.1/366-433
+#=GS S.scrofa.2       AC L12743.1/694-758
+#=GS S.scrofa.3       AC AF532927.1/678-740
+#=GS S.scrofa.4       AC X76008.1/2709-2772
+#=GS C.elegans.1      AC U61947.2/4246-4309
+#=GS S.mansoni.1      AC L37762.1/2940-3006
+
+D.melanogaster.1          G.AGCC.CU...AUGAUCGAUGAUUGG.CAAA.UCCUCUC..GAGG..A.......ACCGAUC.G.U.UGAGAA..CCCCU.....UUGCCUU
+#=GR D.melanogaster.1 SS  ................(((((((((((......((((......)))..)........)))))).).).)))......................
+D.melanogaster.2          C.AUUCAACU.UAUGAGGAUUAUUUCU.UAAA.GGCCUCU...GGC..U.......CGGAAAU.A.G.UCUGAA...CCU........UAUUG
+#=GR D.melanogaster.2 SS  ................(((((((((((......((((......)))..)........)))))).).).)))......................
+D.melanogaster.3          G.UGGCGCU..UAUGACGCAGUUGUCU.UAAA.CUCGAAC..UCGA.GC........GGGCAA.U.U.GCUGAU...UACG...AUUAACCAC
+#=GR D.melanogaster.3 SS  (.(((...(....((((((((((((((......((((......))).).........)))))).).).)).).)...)).....)....))))
+O.niloticus.1             G.UUUCUCA...GUGAAGGCUACAGAU.UAAA..CCUCU....GGC...........CUCUGG.A.G.CCAGAU..GCAUU.......GAAAC
+#=GR O.niloticus.1 SS     ......(((...(((..(((((.((..........)).)....)))...........)((((.......))))....)))).......))...
+O.niloticus.2             U.GUUUAUU..AAUGACGGCUACAGAU.UAAA..CCUUU....AGC...........CUCUGG.A.G.CCAGAU..GCAUU......CAAACA
+#=GR O.niloticus.2 SS     ..((((.....((((..(((((.((..........)).)....)))...........)((((.......))))....)))).......)))).
+O.niloticus.3             G.UGUCUCU...GUGAAGUUCGGUUUU.UAAA.AGGGUCA...UCC..A.......GAAAACC.G.ACACUGAU..GUUUC......CGACAC
+#=GR O.niloticus.3 SS     (.((((..........(((((((((((.(......((.......))..........))))))).).).))).................)))))
+D.rerio.1                 A.UGUGGUCUUUAUGAAGGCAGGUGCA.GAAA.CUAUGCA...CUA.GU........GGUGUC.U.G.UCUGAU..GUUUG.......GCCAU
+#=GR D.rerio.1 SS         ...((((((.......(((((((..(.....(.(((........)).)).........)..)).).).))).........).......)))))
+X.laevis.1                G.UGUUUGCA.AAUGACGACCGAUUUU.GAAA.UGGUCUCACGGCC..A.......AAAACUC.GUG.UCCGAC...AUC........AACCC
+#=GR X.laevis.1 SS        .................((((((.(((......(((((....))))..)........))).)).).).)).......................
+G.gallus.1                G.UGUGUUU...AUGAAGAGCACUAAC.AAAA.GAGUAAU.UGACU..C.......AGUUGGU.G.U.UCAGAU..GCU.........CUCAC
+#=GR G.gallus.1 SS        (.((.(..(...((...((((((((((......((((......)))..)........)))))).).).))..))..)...........).)))
+G.gallus.2                U.AUUUGUC...AUGACAGUCACAGCA.UAAA..GCGCA....GAC...........GGCUGU.G.A.CCUGAU..UUUAG......AAAAUA
+#=GR G.gallus.2 SS        ................((((((((((................................))))).).)..))).....................
+G.gallus.3                U.AUUUCUU..UGUGAUGACCGAUUUU.GAAA.UGGGUUU...CUC..UAAUGCCAGGAAAUC.GUG.UCUGAU...GUUG.....UCAAGUA
+#=GR G.gallus.3 SS        ......(((...(..((((((((((((......((((((..........))).))).)))))).).).)).......)).......).)))..
+M.musculus.1              G.UCACCGA...AUGAUCUGCUCUGGU.CAAA.UCCUUCU...AUG..C......CAGCCAGG.G.U.GGUGAU..GACCC.......GUGAC
+#=GR M.musculus.1 SS      (.((((.(....((.(((.((((((((..............................)))))).).).))).)).....)........)))))
+M.musculus.2              G.UUACAUU..AAUGAGAACAGAAACA.UAAA..CUAUGA.CCUAG.G.........GGUUUC.U.G.UUGGAU..AGCUU.......GUAAU
+#=GR M.musculus.2 SS      (.(((((..........(((((((((........(((......)))............))))).).).))..........).......)))))
+M.musculus.3              G.GUUCUUC..CAUGAUGGUGUUUCCUCUAAA..UUUGC....ACG...........GAGAAA.C.A.CCUGAU.UUCCAG.....GAAAAUC
+#=GR M.musculus.3 SS      (.(((.(((..(..((.((((((((.(((................)...........)))))).).).))......))..).....)))))))
+M.musculus.4              G.UGUGCGA...AUGAUAACUACUGAC.GAAA.GAGCUGU.CUGCU..C.......AGUCUGU.G.G.UUGGAU...GUAG......UCACAC
+#=GR M.musculus.4 SS      (.(((((.........(((((((.(((......((((......)))..)........))).)).).).))).........).......)))))
+M.musculus.5              G.CCGCUUC...AUGACAGGAAGGACU.GAAA.UGUCUUA...GAC..C.....UGUGGUCUU.U.C.CUCGAU..GUUCC......UGCGGC
+#=GR M.musculus.5 SS      (.((((..(...((...((((((((((.(.....(((......)))..........))))))).).).))..))..)...........)))))
+M.musculus.6              G.UCAGAUG...AUGAUGGCCUGGGCA.GAAA.CCCCAUG..UGGG..C........CGCCCA.G.G.UUUGAA...CCC........CUGGC
+#=GR M.musculus.6 SS      (.((((...........(((((((((..(.....(((......)))..).........))))).).).))..................)))))
+M.musculus.7              G.UGUCUCU...AUGAAGGAGGGGCCC.GAAG.CCCUUGU...GGG..C........GGGCCU.C.C.CCUGAG...CCCG....UCUGUGGU
+#=GR M.musculus.7 SS      ................(((.(((((((....(.(((.......)))..)........)))))).)...)))..(...(((........).)))
+M.musculus.8              U.UUGCAUU..AAUGAGGAUUACACAG.AAAA.CCUUUGU..UAAG.GA.......CUUGUGU.AGA.UCUGAU..AAUUG.......GCAAA
+#=GR M.musculus.8 SS      ..((((......((.(((.((((((((......((((......))).).........)))))).))..))).))..............)))).
+M.musculus.9              C.CGGCACU..CAUGAAGGUCUGCUUG.AAAA.CCAGCCU..GCUG.GU........GGGGCA.G.U.CCUGAG.GACCUG.......GCGUG
+#=GR M.musculus.9 SS      (.(((..((..((....((.((((((.....(.((((......))).)).........))))).)...))))))...)).).......)....
+M.musculus.10             C.CGGCACU..CAUGAAGGUCUGCCUG.AAAA.CCAGCCU..GCUG.GU........GGGGCA.G.U.CCUGAG.GACCUG.......GCGUG
+#=GR M.musculus.10 SS     (.(((..((..((....((.((((((.....(.((((......))).)).........))))).)...))))))...)).).......)....
+M.musculus.11             U.AUUUGUG..UAUGAUGGUCACAGUG.UAAA..GUUCC....CAC...........AGCUGU.G.A.CUUGAU..UUUUA....AAAAUGUC
+#=GR M.musculus.11 SS     (.((((...........((((((((((.(...............))...........).)))).).).))................)))))..
+M.musculus.12             C.UCAGCAG..GAUGAUGAGAAGGGCU.GAAA.UGCUGCC..AAAC..C.......AGGUCCU.U.U.UCUGAU..GGUGG.......CUGGG
+#=GR M.musculus.12 SS     (.(((((..........((((((((((......((....)..)..............)))))).).).))..........).......)))))
+M.musculus.13             C.AUGCGUC..CAUGAAGUCACUGGCC.UCAA.GCCCAA....GUG.GU........GGGCAG.U.G.ACAGAA...GA.........GCUGC
+#=GR M.musculus.13 SS     (.(((......))))..(((((((.((......(((.........).))........)).))).).).)).......................
+M.musculus.14             C.UCUGAUA...AUGAUGUCUCUCCCU.CUAA.CUCCCAGUAAGGA..C........UGGGAG.A.G.GCUGAACAAACCU.......CAGAG
+#=GR M.musculus.14 SS     (.(((((.........(((.((..(((.(.....(((((((....)..)........)))))).).).)..)))))....).......)))))
+R.norvegicus.1            A.UAUUUGUU.UAUGAUGGUCACAGUG.UAAA..GUUCA....CAC...........AGCUGU.G.A.CUUGAU..UUUUA.......AAAAU
+#=GR R.norvegicus.1 SS    ....((((.........((((((((((.(...............))...........).)))).).).)).........)).......))...
+R.norvegicus.2            G.UUACAUU..GAUGAGAACAGAAACA.UAAA..CUAUGA.CCUAG.G.........GGUUUC.U.G.UUGGAU..AGCUC.......GUAAU
+#=GR R.norvegicus.2 SS    ............((((((((((((((........(((......)))............))))).).).))........))).......))...
+R.norvegicus.3            U.UUGCAUU..AAUGAGGAUUACACAG.AAAA.CCUUUGU..UAAGGGU........UUGUGUCG.A.UCUGCU..AAUUG.......GCAAA
+#=GR R.norvegicus.3 SS    ..((((..........(((((((((((.(....((((......)))).)........)))))).).).))).................)))).
+R.norvegicus.4            G.UCAGAUG...AUGACGGCCUGUGCA.GAAA.CCCCCAC.GUGGG..C........UGC.CA.G.G.UUUGAA...CCC........CUGGC
+#=GR R.norvegicus.4 SS    (.(((........)))).(((..((...(.......)..).)..))..).........((.((.(.(............)........)))))
+R.norvegicus.5            G.UUUUUCC...AUGACGGUGUUUCCUCUAAA..UUUAC....AUG...........GAGAAA.C.A.CCUGAU.UUCCAG......AAAAAU
+#=GR R.norvegicus.5 SS    (.((((((......(((((((((((.((((..............))...........)))))).).).)).).).)....)......))))))
+R.norvegicus.6            G.CCGCUUC...AUGACAGGAAGGACU.GAAA.UGUCUCA.AAGAC..C.....UGUGGUCUU.U.C.UUCGAU..GUUCU.......GCGGC
+#=GR R.norvegicus.6 SS    (.((((..(...((((..(((((((((.(.....(((......)))..........))))))).).).))).))..)...........)))))
+R.norvegicus.7            C.CGGCACU..CAUGACGGUCUGCCUG.AAAA.CCAGCCC..GCUG.GU........GGGGCA.G.U.CCCGAG.GACCUG.......GCGUG
+#=GR R.norvegicus.7 SS    (.(((..((..(.....((.((((((.....(.((((......))).)).........))))).)...)).)))...)).).......)....
+H.sapiens.1               G.CCAGAUG...AUGACGACCUGGGUG.GAAA.CCUACCC.UGUGG..G........CACCCA.U.G.UCCGAG...CCCC.......CUGGC
+#=GR H.sapiens.1 SS       (.((((...........(((.((((((......(((((....))))..)........))))))...).))..................)))))
+H.sapiens.2               G.UGUGCGG...AUGAUAACUACUGAC.GAAA.GAGUCAU.CGACU..C.......AGUUAGU.G.G.UUGGAU...GUAG......UCACAU
+#=GR H.sapiens.2 SS       (.(((((.........(((((((((((......(((((....))))..)........)))))).).).))).........).......)))))
+H.sapiens.3               G.ACGCUUC...AUGAUAGGAAGGACU.GAAA.AGUCUUG.UGGAC..A.....CCUGGUCUU.U.C.CCUGAU..GUUCU......CGUGGC
+#=GR H.sapiens.3 SS       ..(((...(...((.(..(((((((((.......(((......)))...........)))))).).).).).))..)..........)))...
+H.sapiens.4               G.ACUGACAU.UAUGAAGGCCUGUACU.GAAG.ACAGCAA..GCUG..U.......UAGUACA.G.A.CCAGAU..GCUUU..CUUGGCAGGC
+#=GR H.sapiens.4 SS       ...(((.((.....(((((((((((((....(.((((......)))..).......))))))).)...........)))))..).)).)))..
+H.sapiens.5               U.UCACAGA...AUGAUGGCACCUUCC.UAA...ACCCU....CAU...........GGGUGG.U.G.UCUGAG..AGGC........GUGAA
+#=GR H.sapiens.5 SS       ..((((...........((((((...........((((...................)))))).).).))..................)))).
+H.sapiens.6               G.UGUGCGG...AUGAUAACUACUGAC.GAAAGAGUCAUC...GAC..C.....UCAGUUAGU.G.G.UUGGAU...GUAG......UCACAU
+#=GR H.sapiens.6 SS       (.(((((.........(((((((((((....((.(((......)))..).....)..)))))).).).))).........).......)))))
+H.sapiens.7               U.GGCGUCUU.CAUGAGGGAGGGGCCC..AAA.GCCCUUG..UGGG..C........GGACCU.C.C.CCUGAG...CCUGUCUGAGGGGCCA
+#=GR H.sapiens.7 SS       ..(((.((((.((...((((((((.........((((......)))..)...............).).)))......)))...))))))))).
+H.sapiens.8               U.UUGCUUU..AAUGAGAAUAGAAACG.UAAA..CUAUGA.CCUAG.G.........GGUUUC.U.G.UUGGAU.AAUUAG.....CAGUUUA
+#=GR H.sapiens.8 SS       ..(((((..........(((((((((........(((......)))............))))).).).)).........)).....)))....
+H.sapiens.9               U.AUUUGUU..UAUGAUGGCCACAGCC.UAAA..GUACA....CAC...........GGCUGU.G.A.CUUGAU...UCA........AAAGA
+#=GR H.sapiens.9 SS       .............(((.((.(((((((..............................)))))).)...)).......))).............
+H.sapiens.10              C.CGGCACU..CAUGACGGCCUGCCUG.CAAA..CCUGC....UGG..U........GGGGCA.G.A.CCCGAA.AAUCCA.......GCGUG
+#=GR H.sapiens.10 SS      ...((((....(......)..))))............((....(((..(........(((........))))......))).......))...
+H.sapiens.11              G.CCGGAUG...AUGACGACCUGGGUG.GAAA.CCUACCC.UGUGG..G........CACCCA.U.G.UCCGAG...CCCC.......CUGGC
+#=GR H.sapiens.11 SS      (.((((...........(((.((((((......(((((....))))..)........))))))...).))..................)))))
+H.sapiens.12              C.UCUGUUA...AUGACGUCUCUCCCUCUAAA.CCCCAUU.AAGGA..C........UGGGAG.A.G.GCAGAGCAAGCCU.......CAGAG
+#=GR H.sapiens.12 SS      (.((((.......((..(((((((((.......((........)).............))))).).).))....))............)))))
+H.sapiens.13              G.UCACUGC...AUGAUCCGCUCUGGU.CAAA.CCCUUCC...AGG..C......CAGCCAGA.G.U.GGGGAU..GGUCU.......GUGAC
+#=GR H.sapiens.13 SS      (.((((.((.......(((((((((((......((.........))...........)))))).).).)))......)).........)))))
+H.sapiens.14              C.ACUGCUG...AUGACGAACUAUCUC.UAAC.UGGUCUU..GACC..A.......CGAGCUA.G.U.UCUGAA...UU.G.......CAGGG
+#=GR H.sapiens.14 SS      ...((((.(...((...((((((.(((......((((......)))..)........))).)).).).))...)...)).).......)))..
+H.sapiens.15              U.UUUCAUC..UAUGAGGGUGUUUCCUCUAAA..CCUACG...AGG...........GAGGAA.C.A.CCUGAU...CUUA.....CAGAAAA
+#=GR H.sapiens.15 SS      .......((..(.((((((((((.(((((................)...........)))))).).).)).......))))......)))...
+B.taurus.1                C.UUGCGUU..AAUGAGAACAGAAACG.UAAA..CUAUAA.CCUAG.G.........GGUUUC.U.G.UUGGAU..GGUUG.......GCAAC
+#=GR B.taurus.1 SS        ......(((..(((.(.(((((((((........(((......)))............))))).).).))...)...)))).......))...
+B.taurus.2                C.UUGCGUU..AAUGAGAACAGAAACG.AAAA..CUAUAA.CCUAG.G.........GGUUUC.U.G.UUGGAU..GGUUG.......GCAAC
+#=GR B.taurus.2 SS        ......(((..(((.(.(((((((((........(((......)))............))))).).).))...)...)))).......))...
+B.taurus.3                C.CCGGUGCC.UAUGACGGUCUGUCUG.AAAA.CCAGCCC...CUG.GU........GGGGCA.G.A.CCUGAG.AACCUG.......GCGUG
+#=GR B.taurus.3 SS        (.(.(((..(.(.....(((((((((.....(.((((......))).)).........))))).).).))..))..))).).......)....
+B.taurus.4                ACUUGCGUU..AAUGAGAACAGAAACG.UAAA..CUAUAA.CCUAG.G.........GGUUUC.U.G.UUGGAU..GGUUG.......GCAA.
+#=GR B.taurus.4 SS        ......(((..(((.(.(((((((((........(((......)))............))))).).).))...)...)))).......))...
+B.taurus.5                G.CCAGAUG...AUGAGGACCUGUGCG.GAAA.CCCCCCG..CGGG..C........UGCCCA.U.G.UCUGAG...CCC........CUGGC
+#=GR B.taurus.5 SS        (.((((((....(((.((.((((((.(.(.......))))..)))).............)))).).).)))).)...)...............
+B.taurus.6                G.AUGCGUC..CAUGAAGUCACCAGCC.CCAA.GCCCCUC...GUG.GU........GGGUGG.U.G.AUGGAA.CCGUCA.....AAGCAGU
+#=GR B.taurus.6 SS        (.(((..((..((.....((((((.((.(((.............)).).........)).))).).).)))))...)))).............
+B.taurus.7                U.UUUGCCC...AUGAAGGUGUUCCCUCUAAA..CCUAC....GUG...........GAGGAA.U.G.CCUGAU.GUCCAG.......GAAAA
+#=GR B.taurus.7 SS        (.((((..(...((..(((((((((.((((..............))...........)))))).).).))).)).)..))).......))...
+O.aries.1                 G.ACGCUUC...AUGACAGGAAGGACU.GAAA.UGUCUCU.UGGAC.GC......CUGGUCCU.U.C.CUUGAU..GUUCU......CACGGC
+#=GR O.aries.1 SS         (.(.((.((...(....((((((((((.(....((((......))).)........))))))).).).)))))...))..)......).....
+S.scrofa.1                G.ACGCUUC...AUGACAGGAAGGACU.GAAA.UGUCUUG.UGGAC.GC......CUGGUCCU.U.C.CCUGAU..GUUCU......CAUGGC
+#=GR S.scrofa.1 SS        .......((...(((((((((((((((.(....((((......))).)........))))))).)...))))........)......))))).
+S.scrofa.2                C.UGGCACC..CAUGACAGUCUGCCUA.AAAA.CCAGCCC...CUG.GU........GGGGCA.G.A.CUCGAG.AACCUG.......GCGUG
+#=GR S.scrofa.2 SS        .....((((..((.(.((((((((((.....(.((((......))).)).........))))).).).)).).....).)).......).)))
+S.scrofa.3                A.UUUUAUC..CAUGAAAGUGUUUCCUCUAAA..CCUAU....GUG...........GAGGAA.C.A.CCUGAU.GUCCAG......GAAAAU
+#=GR S.scrofa.3 SS        ...........(((....))).((((((((..............))...........)))))).....((((......)))......).....
+S.scrofa.4                C.UGGCACC..CAUGACAGUCUGCCUA.AAAA.CCAGCC....CUG.GU........GGGGCA.G.A.CUCGAG.AACCUG.......GCGUG
+#=GR S.scrofa.4 SS        .....((((..((.(.((((((((((.....(.(((........)).)).........))))).).).)).).....).)).......).)))
+C.elegans.1               G.AGGCAGCUUUGUGACGACCUUUGGC.UAAA.CUCCAUC..GUGA.GC........GCCUCU.G.G.UCUGAU...GC.........GCCUC
+#=GR C.elegans.1 SS       (.((((.((...((.(.((((...(((......(((........)).).........)))....).).))).))...)).........)))))
+S.mansoni.1               C.UCGCUAU...AUGACGAUGGCAAUC.UCAA..AUGUU....CAU..U........GGUUGC.C.A.UUUGAU..GAAAUCAGUUUUGUGUG
+#=GR S.mansoni.1 SS       ...(((.((...(.(((((((((((((..............................)))))).).).)).............))).))))))
+#=GC SS_cons              <-<<<<-----------<<<<<<<<<<-------<<<______>>>----------->>>>>>->->->>------------------>>>>>
+#=GC RF                   g.ucucauu..uAUGAuGgccucuccc.uAAA.ucccuuu...ggg..c........gggaga.g.g.cCuGAU..gcuug.......gagac
+//
diff --git a/examples-jbake/assets/css/ie6.css b/examples-jbake/assets/css/ie6.css
new file mode 100644 (file)
index 0000000..3640d98
--- /dev/null
@@ -0,0 +1,73 @@
+#nav #navInner
+{
+margin-top:0x;
+}
+
+
+#sddm
+{
+       position:relative;
+       top:0;
+}
+
+
+#sddm li a.download-right
+{
+position:absolute;
+top:28px;
+left:270px;
+}
+
+#sddm li
+{
+padding-top:30px;
+padding-bottom:30px;
+}
+
+#sddm div
+{      position: absolute;
+       visibility: hidden;
+       margin: 0;
+       padding: 0;
+       top:80px;
+       z-index:9999;
+       width:0;
+       display:none;
+}
+
+
+       #sddm div a
+       {       position: relative;
+               display: block;
+               margin: 0;
+               padding:8px;
+               width: 200px;
+               white-space: nowrap;
+               text-align: left;
+               text-decoration: none;
+               background: #555;
+               color: #fff;
+               border: 1px solid #000000;
+               background: #555;
+               z-index:100;
+               left:-1100px;
+       }
+       
+       
+#nav
+{
+position:relative;
+z-index:2;
+   clear:both;
+    float:left;
+    width:100%;                /* width of whole page */
+}
+
+#content 
+{
+position:relative;
+z-index:2;
+   clear:both;
+    float:left;
+    width:100%;                /* width of whole page */
+}
diff --git a/examples-jbake/assets/css/ie7.css b/examples-jbake/assets/css/ie7.css
new file mode 100644 (file)
index 0000000..251303c
--- /dev/null
@@ -0,0 +1,67 @@
+#sddm\r
+{\r
+       position:relative;\r
+       top:0;\r
+}\r
+\r
+\r
+#sddm li a.download-right\r
+{\r
+position:relative;\r
+left:0;\r
+}\r
+\r
+#sddm li\r
+{\r
+padding-top:30px;\r
+padding-bottom:30px;\r
+}\r
+\r
+#sddm div\r
+{      position: absolute;\r
+       visibility: hidden;\r
+       margin: 0;\r
+       padding: 0;\r
+       background: #555;\r
+       border: 1px solid #000000;\r
+       top:80px;\r
+       z-index:9999;\r
+       width:120px;\r
+}\r
+\r
+\r
+       #sddm div a\r
+       {       position: relative;\r
+               display: block;\r
+               margin: 0;\r
+               padding:8px;\r
+               width: 200px;\r
+               white-space: nowrap;\r
+               text-align: left;\r
+               text-decoration: none;\r
+               background: #555;\r
+               color: #fff;\r
+               border: 1px solid #000000;\r
+               background: #555;\r
+               z-index:100;\r
+               left:-80px;\r
+       }\r
+       \r
+       \r
+#nav\r
+{\r
+position:relative;\r
+z-index:2;\r
+   clear:both;\r
+    float:left;\r
+    width:100%;                /* width of whole page */\r
+}\r
+\r
+#content \r
+{\r
+position:relative;\r
+z-index:2;\r
+   clear:both;\r
+    float:left;\r
+    width:100%;                /* width of whole page */\r
+}\r
diff --git a/examples-jbake/assets/css/reset.css b/examples-jbake/assets/css/reset.css
new file mode 100644 (file)
index 0000000..c9cdbf1
--- /dev/null
@@ -0,0 +1,95 @@
+/* http://meyerweb.com/eric/tools/css/reset/ 
+
+   v2.0 | 20110126
+
+   License: none (public domain)
+
+*/
+
+
+
+html, body, div, span, applet, object, iframe,
+
+h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+
+a, abbr, acronym, address, big, cite, code,
+
+del, dfn, em, img, ins, kbd, q, s, samp,
+
+small, strike, strong, sub, sup, tt, var,
+
+b, u, i, center,
+
+dl, dt, dd, ol, ul, li,
+
+fieldset, form, label, legend,
+
+table, caption, tbody, tfoot, thead, tr, th, td,
+
+article, aside, canvas, details, embed, 
+
+figure, figcaption, footer, header, hgroup, 
+
+menu, nav, output, ruby, section, summary,
+
+time, mark, audio, video {
+
+       margin: 0;
+
+       padding: 0;
+
+       border: 0;
+
+       font-size: 100%;
+
+       font: inherit;
+
+       vertical-align: baseline;
+
+}
+
+/* HTML5 display-role reset for older browsers */
+
+article, aside, details, figcaption, figure, 
+
+footer, header, hgroup, menu, nav, section {
+
+       display: block;
+
+}
+
+body {
+
+       line-height: 1;
+
+}
+
+ol, ul {
+
+       list-style: none;
+
+}
+
+blockquote, q {
+
+       quotes: none;
+
+}
+
+blockquote:before, blockquote:after,
+
+q:before, q:after {
+
+       content: '';
+
+       content: none;
+
+}
+
+table {
+
+       border-collapse: collapse;
+
+       border-spacing: 0;
+
+}
\ No newline at end of file
diff --git a/examples-jbake/assets/css/style.css b/examples-jbake/assets/css/style.css
new file mode 100644 (file)
index 0000000..c9634cd
--- /dev/null
@@ -0,0 +1,439 @@
+@import url(http://fonts.googleapis.com/css?family=Lato);
+@import url(http://fonts.googleapis.com/css?family=Oswald);
+
+/*****************
+HTML 5 Elements
+******************/
+new
+
+
+article, aside, details, figcaption, figure, 
+footer, header, hgroup, menu, nav, section 
+{
+    display: block;
+}
+
+
+.clearfix:after
+ {
+    visibility: hidden;
+    display: block;
+    font-size: 0;
+    content: " ";
+    clear: both;
+    height: 0;
+}
+
+
+/****************
+Body
+****************/
+
+body
+
+{
+  font: 76% arial,Helvetica,sans-serif;
+  text-align:left; 
+  background:#fff; 
+  color:#000;
+  border-top: 20px solid #555555;
+}
+
+
+
+/*********************
+Page Wrapper
+********************/
+
+#pageWrap 
+
+{
+       width: 960px;
+       margin: 0 auto;
+       position:relative;
+}
+
+/**********************
+HEADER
+************************/
+
+#header 
+{
+  display: block;
+  height: 180px;
+  margin: 0 auto 8px;
+  width: 960px;
+  position:relative;
+}
+
+#logo a 
+{
+  background-image: url("../images/logo.jpg");
+  background-repeat: no-repeat;
+  height: 87px;
+  left: 0;
+  position: absolute;
+  top: 50px;
+  width: 361px;
+  margin-bottom:50px;
+}
+
+#buttons
+{
+height:88px;
+width:252px;
+float:right;
+ right: 0;
+  position: absolute;
+  top: 50px;
+}
+
+#buttons li
+{
+margin-bottom:10px;
+}
+
+#buttons #applet a
+{
+  background-image: url("../images/applet.jpg");
+  background-repeat: no-repeat;
+    height:50px;
+  width:250px;
+  position: absolute;
+         opacity: 1;
+   transition: opacity .25s ease-in-out;
+   -moz-transition: opacity .25s ease-in-out;
+   -webkit-transition: opacity .25s ease-in-out;
+   text-shadow: 2px 2px 10px #000000;
+}
+
+#buttons #desktop a
+{
+  background-image: url("../images/desk.jpg");
+  background-repeat: no-repeat;
+  height:50px;
+  width:250px;
+  position: absolute;
+  top:45px;
+         opacity: 1;
+   transition: opacity .25s ease-in-out;
+   -moz-transition: opacity .25s ease-in-out;
+   -webkit-transition: opacity .25s ease-in-out;
+   text-shadow: 2px 2px 10px #000000;
+}
+
+#buttons #applet a:hover
+{
+ opacity: 0.8;
+}
+
+#buttons #desktop a:hover
+{
+ opacity: 0.8;
+}
+
+/*****************************
+NAV
+*********************************/
+#nav
+{
+width:100%;
+max-width:100%;
+color:#fff;
+background:#555;
+height:80px;
+}
+
+#navInner
+{
+width:960px;
+margin:0 auto;
+position:relative;
+}
+
+
+#sddm
+{      margin: 0;
+       padding: 0;
+       z-index: 30;
+       position:relative;
+       top:27px;
+}
+
+#sddm li
+{      margin: 0;
+       padding:0;
+       list-style: none;
+       float: left;
+}
+
+#sddm li a
+{ 
+       color: #FFFFFF;
+    font-size: 13pt;
+    padding: 27px 15px 25px;
+    text-align: center;
+    text-decoration: none;
+           font-family: 'Lato',sans-serif;
+}
+
+#sddm li a.community:hover
+{
+background:#F78E1E;
+}
+
+#sddm li a.development:hover
+{
+background:#AEBF45;
+}
+
+#sddm li a.training:hover
+{
+background:#009DDC;
+}
+
+#sddm li a.download-right
+{
+float:right;
+position:relative;
+left:345px;
+display:block;
+clear:left;
+ margin-top: -27px;
+    padding: 27px 15px 25px;
+}
+
+
+ul#sddm li a:hover 
+{          
+       text-decoration: none;
+       background:#0083A9;
+}
+
+#sddm div
+{      position: absolute;
+       visibility: hidden;
+       margin: 0;
+       padding: 0;
+       background: #555;
+       border: 1px solid #000000;
+       top:50px;
+}
+
+       #sddm div a
+       {       position: relative;
+               display: block;
+               margin: 0;
+               padding:8px;
+               width: 200px;
+               white-space: nowrap;
+               text-align: center;
+               text-decoration: none;
+               background: #555;
+               color: #fff;
+               border: 1px solid #000000;
+               background: #555;
+       }
+       
+
+
+/*****************************
+CONTENT
+*****************************/
+
+#content
+{
+  font-size: 10pt;
+  height: auto;
+  width: 710px;
+  padding-top:23px;
+  padding-bottom:12px;
+  overflow-x:auto; 
+  overflow-y:hidden; 
+}
+#content h1
+{
+       padding-top:29px;
+       font-size: 15pt;
+       font-style: bold;
+}
+#content h2
+{
+       padding-top:27px;
+       font-size: 13pt;
+       font-style: bold;
+}
+#content h3
+{
+       padding-top:25px;
+       font-size: 12pt;
+       font-style: bold italic;
+}
+#content pre
+{
+       font-family: monospace;
+}
+#sideNav
+{
+width:200px;
+float:left;
+padding-top:29px;
+margin-right:50px;
+}
+#content ul
+{
+       list-style-type: disc;
+}
+#content li
+{
+       margin-left: 11px;
+       padding-bottom:11px;
+}
+       
+#sideNav li
+{
+  height: 40px;
+    list-style-image: none;
+    list-style-type: none;
+    margin-bottom: 20px;
+}
+
+#sideNav a
+{
+   color: #555555;
+    display: block;
+    font-size: 13pt;
+    padding: 8px 0 0 15px;
+    text-decoration: none;
+}
+
+#sideNav a:hover
+{
+    text-decoration: underline;
+}
+#sideNav .about-nav-title
+{
+background: url("../images/normal-arrow-3-normal.png") no-repeat scroll 0 0 transparent;
+    color: #FFFFFF;
+    font-family: 'Lato',sans-serif;
+    font-size: 18pt;
+    font-weight: normal;
+    height: 40px;
+    margin-bottom: 20px;
+    padding-left: 5px;
+}
+
+#sideNav .jvlite-nav-title
+{
+background: url("../images/jvlite-arrow-3-small.png") no-repeat scroll 0 0 transparent;
+    color: #FFFFFF;
+    font-family: 'Lato',sans-serif;
+    font-size: 18pt;
+    font-weight: normal;
+    height: 40px;
+    margin-bottom: 20px;
+    padding-left: 5px;
+}
+
+#sideNav .jvlite-nav-small
+{
+background: url("../images/jvlite-arrow-3-small.png") no-repeat scroll 0 0 transparent;
+    color: #FFFFFF;
+    font-family: 'Lato',sans-serif;
+    font-size: 18pt;
+    font-weight: normal;
+    height: 40px;
+    margin-bottom: 20px;
+    padding-left: 0px;
+}
+
+#sideNav .com-nav-title
+{
+background: url("../images/com-arrow-3-small.png") no-repeat scroll 0 0 transparent;
+    color: #FFFFFF;
+    font-family: 'Lato',sans-serif;
+    font-size: 18pt;
+    font-weight: normal;
+    height: 40px;
+    margin-bottom: 20px;
+    padding-left: 5px;
+}
+
+#sideNav .dev-nav-title
+{
+background: url("../images/dev-arrow-3-normal.png") no-repeat scroll 0 0 transparent;
+    color: #FFFFFF;
+    font-family: 'Lato',sans-serif;
+    font-size: 18pt;
+    font-weight: normal;
+    height: 40px;
+    margin-bottom: 20px;
+    padding-left: 5px;
+}
+
+#sideNav .train-nav-title
+{
+background: url("../images/train-arrow-3-normal.png") no-repeat scroll 0 0 transparent;
+    color: #FFFFFF;
+    font-family: 'Lato',sans-serif;
+    font-size: 18pt;
+    font-weight: normal;
+    height: 40px;
+    margin-bottom: 20px;
+    padding-left: 5px;
+}
+
+#content .borderTable td
+{
+       border: 1px solid black;
+}
+#content .borderTable tr
+{
+       border-bottom: 2px solid black;
+}
+
+td
+{
+    vertical-align: middle;
+}
+
+/********************************
+FOOTER
+***********************************/
+
+#footer
+{
+max-width:100%;
+width:100%;
+color:#fff;
+background:#555;
+height:140px;
+padding-top:10px;
+clear:both;
+}
+#innerFooter a
+{
+       color: #EEEEEE;
+       visited: #DDDDDD;
+       
+}
+
+#innerFooter
+{
+width:960px;
+margin:0 auto;
+height:140px;
+padding-top:10px;
+}
+
+
+#copyright
+{
+float:left;
+}
+
+#cite
+{
+float:right;
+width:555px;
+}
\ No newline at end of file
diff --git a/examples-jbake/assets/exampleFeatures.txt b/examples-jbake/assets/exampleFeatures.txt
new file mode 100755 (executable)
index 0000000..ed69412
--- /dev/null
@@ -0,0 +1,328 @@
+#-------------------------------------------------------------------------------
+# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8)
+# Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle
+# 
+# This file is part of Jalview.
+# 
+# Jalview is free software: you can redistribute it and/or
+# modify it under the terms of the GNU General Public License 
+# as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+#  
+# Jalview is distributed in the hope that it will be useful, but 
+# WITHOUT ANY WARRANTY; without even the implied warranty 
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+# PURPOSE.  See the GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+#-------------------------------------------------------------------------------
+ST-TURN-IIL    705b23
+GAMMA-TURN-CLASSIC     788763
+BETA-TURN-IR   9a6a94
+BETA-TURN-IL   d6a6ca
+BETA-BULGE     1dc451
+Pfam   dc206a
+PHOSPHORYLATION (S)    b974a5
+PHOSPHORYLATION (Y)    7d3881
+Cath   93b1d2
+ASX-TURN-IR    4ccc6e
+BETA-BULGE-LOOP-5      4066da
+CATMAT-4       4dc465
+CATMAT-3       3eb555
+GAMMA-TURN-INVERSE     7881c7
+SCHELLMANN-LOOP-6      a28bbb
+METAL  cc9900
+ALPHA-BETA-MOTIF       7bd649
+ASX-MOTIF      6addbb
+NEST-LR        3e16d0
+ASX-TURN-IIR   6a4062
+NEST-RL        3e16b2
+ASX-TURN-IIL   a67c98
+BETA-TURN-IIR  c79792
+PHOSPHORYLATION (T)    c88395
+BETA-TURN-IIL  8b5b50
+ST-MOTIF       ac25a1
+
+STARTGROUP     uniprot
+Iron-sulfur (2Fe-2S)   FER_CAPAA       -1      39      39      METAL
+Iron-sulfur (2Fe-2S)   FER_CAPAA       -1      44      44      METAL
+Iron-sulfur (2Fe-2S)   FER_CAPAA       -1      47      47      METAL
+Iron-sulfur (2Fe-2S)   FER_CAPAA       -1      77      77      METAL
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 8_8</a></html> FER_CAPAA       -1      8       83      Pfam
+Ferredoxin_fold Status: True Positive  FER_CAPAA       -1      3       93      Cath
+Iron-sulfur (2Fe-2S)   FER_CAPAN       -1      86      86      METAL
+Iron-sulfur (2Fe-2S)   FER_CAPAN       -1      91      91      METAL
+Iron-sulfur (2Fe-2S)   FER_CAPAN       -1      94      94      METAL
+Iron-sulfur (2Fe-2S)   FER_CAPAN       -1      124     124     METAL
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 55_13</a></html>       FER_CAPAN       -1      55      130     Pfam
+Ferredoxin_fold Status: True Positive  FER_CAPAN       -1      45      140     Cath
+Iron-sulfur (2Fe-2S)   FER1_SOLLC      -1      86      86      METAL
+Iron-sulfur (2Fe-2S)   FER1_SOLLC      -1      91      91      METAL
+Iron-sulfur (2Fe-2S)   FER1_SOLLC      -1      94      94      METAL
+Iron-sulfur (2Fe-2S)   FER1_SOLLC      -1      124     124     METAL
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 55_13</a></html>       FER1_SOLLC      -1      55      130     Pfam
+Ferredoxin_fold Status: True Positive  FER1_SOLLC      -1      45      140     Cath
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 55_13</a></html>       Q93XJ9_SOLTU    -1      55      130     Pfam
+Ferredoxin_fold Status: True Positive  Q93XJ9_SOLTU    -1      45      140     Cath
+Iron-sulfur (2Fe-2S)   FER1_PEA        -1      91      91      METAL
+Iron-sulfur (2Fe-2S)   FER1_PEA        -1      96      96      METAL
+Iron-sulfur (2Fe-2S)   FER1_PEA        -1      99      99      METAL
+Iron-sulfur (2Fe-2S)   FER1_PEA        -1      129     129     METAL
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 60_13</a></html>       FER1_PEA        -1      60      135     Pfam
+Ferredoxin_fold Status: True Positive  FER1_PEA        -1      50      145     Cath
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 63_13</a></html>       Q7XA98_TRIPR    -1      63      138     Pfam
+Ferredoxin_fold Status: True Positive  Q7XA98_TRIPR    -1      53      148     Cath
+Iron-sulfur (2Fe-2S)   FER1_MESCR      -1      90      90      METAL
+Iron-sulfur (2Fe-2S)   FER1_MESCR      -1      95      95      METAL
+Iron-sulfur (2Fe-2S)   FER1_MESCR      -1      98      98      METAL
+Iron-sulfur (2Fe-2S)   FER1_MESCR      -1      128     128     METAL
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 59_13</a></html>       FER1_MESCR      -1      59      134     Pfam
+Ferredoxin_fold Status: True Positive  FER1_MESCR      -1      49      144     Cath
+Iron-sulfur (2Fe-2S)   FER1_SPIOL      -1      89      89      METAL
+Iron-sulfur (2Fe-2S)   FER1_SPIOL      -1      94      94      METAL
+Iron-sulfur (2Fe-2S)   FER1_SPIOL      -1      97      97      METAL
+Iron-sulfur (2Fe-2S)   FER1_SPIOL      -1      127     127     METAL
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 58_13</a></html>       FER1_SPIOL      -1      58      133     Pfam
+Ferredoxin_fold Status: True Positive  FER1_SPIOL      -1      48      143     Cath
+Iron-sulfur (2Fe-2S)   FER3_RAPSA      -1      39      39      METAL
+Iron-sulfur (2Fe-2S)   FER3_RAPSA      -1      44      44      METAL
+Iron-sulfur (2Fe-2S)   FER3_RAPSA      -1      47      47      METAL
+Iron-sulfur (2Fe-2S)   FER3_RAPSA      -1      77      77      METAL
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 8_8</a></html> FER3_RAPSA      -1      8       83      Pfam
+Ferredoxin_fold Status: True Positive  FER3_RAPSA      -1      3       93      Cath
+Iron-sulfur (2Fe-2S)   FER_BRANA       -1      39      39      METAL
+Iron-sulfur (2Fe-2S)   FER_BRANA       -1      44      44      METAL
+Iron-sulfur (2Fe-2S)   FER_BRANA       -1      47      47      METAL
+Iron-sulfur (2Fe-2S)   FER_BRANA       -1      77      77      METAL
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 8_8</a></html> FER_BRANA       -1      8       83      Pfam
+Ferredoxin_fold Status: True Positive  FER_BRANA       -1      2       96      Cath
+Iron-sulfur (2Fe-2S)   FER2_ARATH      -1      91      91      METAL
+Iron-sulfur (2Fe-2S)   FER2_ARATH      -1      96      96      METAL
+Iron-sulfur (2Fe-2S)   FER2_ARATH      -1      99      99      METAL
+Iron-sulfur (2Fe-2S)   FER2_ARATH      -1      129     129     METAL
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 60_13</a></html>       FER2_ARATH      -1      60      135     Pfam
+Ferredoxin_fold Status: True Positive  FER2_ARATH      -1      50      145     Cath
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 60_11</a></html>       Q93Z60_ARATH    -1      60      118     Pfam
+Ferredoxin_fold Status: True Positive  Q93Z60_ARATH    -1      52      118     Cath
+Iron-sulfur (2Fe-2S)   FER1_MAIZE      -1      91      91      METAL
+Iron-sulfur (2Fe-2S)   FER1_MAIZE      -1      96      96      METAL
+Iron-sulfur (2Fe-2S)   FER1_MAIZE      -1      99      99      METAL
+Iron-sulfur (2Fe-2S)   FER1_MAIZE      -1      129     129     METAL
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 60_13</a></html>       FER1_MAIZE      -1      60      135     Pfam
+Ferredoxin_fold Status: True Positive  FER1_MAIZE      -1      50      145     Cath
+<html>Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 52_12</a></html>       O80429_MAIZE    -1      52      127     Pfam
+Ferredoxin_fold Status: True Positive  O80429_MAIZE    -1      42      137     Cath
+ENDGROUP       uniprot
+
+
+STARTGROUP     netphos
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P83527&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 89_8</a></html>       FER_CAPAA       -1      89      89      PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q43517&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 22_2</a></html>       FER1_SOLLC      -1      22      22      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q43517&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 38_3</a></html>       FER1_SOLLC      -1      38      38      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q43517&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 102_10</a></html>     FER1_SOLLC      -1      102     102     PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q43517&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 136_13</a></html>     FER1_SOLLC      -1      136     136     PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q93XJ9&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 136_13</a></html>     Q93XJ9_SOLTU    -1      136     136     PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q93XJ9&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 22_2</a></html>       Q93XJ9_SOLTU    -1      22      22      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q93XJ9&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 38_3</a></html>       Q93XJ9_SOLTU    -1      38      38      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P09911&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 33_3</a></html>       FER1_PEA        -1      33      33      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P09911&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 42_4</a></html>       FER1_PEA        -1      42      42      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P09911&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 90_9</a></html>       FER1_PEA        -1      90      90      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P09911&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 114_11</a></html>     FER1_PEA        -1      114     114     PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P09911&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 4_</a></html> FER1_PEA        -1      4       4       PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P09911&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 28_2</a></html>       FER1_PEA        -1      28      28      PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P09911&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 141_14</a></html>     FER1_PEA        -1      141     141     PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q7XA98&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 117_11</a></html>     Q7XA98_TRIPR    -1      117     117     PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q7XA98&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 137_13</a></html>     Q7XA98_TRIPR    -1      137     137     PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q7XA98&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 144_14</a></html>     Q7XA98_TRIPR    -1      144     144     PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q7XA98&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 30_3</a></html>       Q7XA98_TRIPR    -1      30      30      PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q7XA98&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 31_3</a></html>       Q7XA98_TRIPR    -1      31      31      PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q7XA98&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 4_</a></html> Q7XA98_TRIPR    -1      4       4       PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q7XA98&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 45_4</a></html>       Q7XA98_TRIPR    -1      45      45      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q7XA98&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 46_4</a></html>       Q7XA98_TRIPR    -1      46      46      PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q7XA98&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 93_9</a></html>       Q7XA98_TRIPR    -1      93      93      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P00221&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 88_8</a></html>       FER1_SPIOL      -1      88      88      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P00221&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 112_11</a></html>     FER1_SPIOL      -1      112     112     PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P00221&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 139_13</a></html>     FER1_SPIOL      -1      139     139     PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P00221&amp;service=NetPhos-2.0">PHOSPHORYLATION (Y) 73_7</a></html>       FER1_SPIOL      -1      73      73      PHOSPHORYLATION (Y)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=FER1_ARATH&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 19_1</a></html>   FER1_ARATH      -1      19      19      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=FER1_ARATH&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 24_2</a></html>   FER1_ARATH      -1      24      24      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=FER1_ARATH&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 90_9</a></html>   FER1_ARATH      -1      90      90      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=FER1_ARATH&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 107_10</a></html> FER1_ARATH      -1      107     107     PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=FER1_ARATH&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 114_11</a></html> FER1_ARATH      -1      114     114     PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=FER1_ARATH&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 141_14</a></html> FER1_ARATH      -1      141     141     PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=FER1_ARATH&amp;service=NetPhos-2.0">PHOSPHORYLATION (Y) 75_7</a></html>   FER1_ARATH      -1      75      75      PHOSPHORYLATION (Y)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P00227&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 38_3</a></html>       FER_BRANA       -1      38      38      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P00227&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 62_6</a></html>       FER_BRANA       -1      62      62      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P00227&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 89_8</a></html>       FER_BRANA       -1      89      89      PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P00227&amp;service=NetPhos-2.0">PHOSPHORYLATION (Y) 23_2</a></html>       FER_BRANA       -1      23      23      PHOSPHORYLATION (Y)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q93Z60&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 107_10</a></html>     Q93Z60_ARATH    -1      107     107     PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q93Z60&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 114_11</a></html>     Q93Z60_ARATH    -1      114     114     PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q93Z60&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 21_2</a></html>       Q93Z60_ARATH    -1      21      21      PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q93Z60&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 24_2</a></html>       Q93Z60_ARATH    -1      24      24      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=Q93Z60&amp;service=NetPhos-2.0">PHOSPHORYLATION (Y) 75_7</a></html>       Q93Z60_ARATH    -1      75      75      PHOSPHORYLATION (Y)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P27787&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 7_</a></html> FER1_MAIZE      -1      7       7       PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P27787&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 19_1</a></html>       FER1_MAIZE      -1      19      19      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P27787&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 44_4</a></html>       FER1_MAIZE      -1      44      44      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P27787&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 45_4</a></html>       FER1_MAIZE      -1      45      45      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P27787&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 90_9</a></html>       FER1_MAIZE      -1      90      90      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P27787&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 107_10</a></html>     FER1_MAIZE      -1      107     107     PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P27787&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 114_11</a></html>     FER1_MAIZE      -1      114     114     PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P27787&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 134_13</a></html>     FER1_MAIZE      -1      134     134     PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P27787&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 141_14</a></html>     FER1_MAIZE      -1      141     141     PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=P27787&amp;service=NetPhos-2.0">PHOSPHORYLATION (Y) 115_11</a></html>     FER1_MAIZE      -1      115     115     PHOSPHORYLATION (Y)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=O80429&amp;service=NetPhos-2.0">PHOSPHORYLATION (T) 133_13</a></html>     O80429_MAIZE    -1      133     133     PHOSPHORYLATION (T)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=O80429&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 82_8</a></html>       O80429_MAIZE    -1      82      82      PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=O80429&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 9_</a></html> O80429_MAIZE    -1      9       9       PHOSPHORYLATION (S)
+<html>High confidence server. Only hits with scores over 0.8 are reported. <a href="http://www.cbs.dtu.dk/cgi-bin/proview/webface-link?seqid=O80429&amp;service=NetPhos-2.0">PHOSPHORYLATION (S) 99_9</a></html>       O80429_MAIZE    -1      99      99      PHOSPHORYLATION (S)
+ENDGROUP       netphos
+
+STARTGROUP     s3dm
+<html>Found in PDBs: 1a70.,1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/alphabetamotif?gzip=false">ALPHA-BETA-MOTIF 115_11</a></html>  FER1_SPIOL      -1      115     119     ALPHA-BETA-MOTIF
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/asxturniil?gzip=false">ASX-TURN-IIL 107_10</a></html>        FER1_SPIOL      -1      107     109     ASX-TURN-IIL
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/asxturnir?gzip=false">ASX-TURN-IR 115_11</a></html>  FER1_SPIOL      -1      115     117     ASX-TURN-IR
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/betabulge?gzip=false">BETA-BULGE 102_10</a></html>   FER1_SPIOL      -1      102     103     BETA-BULGE
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/betaturnir?gzip=false">BETA-TURN-IR 59_6</a></html>  FER1_SPIOL      -1      59      62      BETA-TURN-IR
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/betaturnir?gzip=false">BETA-TURN-IR 69_7</a></html>  FER1_SPIOL      -1      69      72      BETA-TURN-IR
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/betaturnir?gzip=false">BETA-TURN-IR 95_9</a></html>  FER1_SPIOL      -1      95      98      BETA-TURN-IR
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/betaturnir?gzip=false">BETA-TURN-IR 108_11</a></html>        FER1_SPIOL      -1      108     111     BETA-TURN-IR
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/betaturnir?gzip=false">BETA-TURN-IR 125_12</a></html>        FER1_SPIOL      -1      125     128     BETA-TURN-IR
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/betaturnir?gzip=false">BETA-TURN-IR 141_14</a></html>        FER1_SPIOL      -1      141     144     BETA-TURN-IR
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/nestlr?gzip=false">NEST-LR 90_9</a></html>   FER1_SPIOL      -1      90      92      NEST-LR
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/nestlr?gzip=false">NEST-LR 92_9</a></html>   FER1_SPIOL      -1      92      94      NEST-LR
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/nestlr?gzip=false">NEST-LR 140_14</a></html> FER1_SPIOL      -1      140     142     NEST-LR
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/nestrl?gzip=false">NEST-RL 81_8</a></html>   FER1_SPIOL      -1      81      83      NEST-RL
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/nestrl?gzip=false">NEST-RL 89_9</a></html>   FER1_SPIOL      -1      89      91      NEST-RL
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/nestrl?gzip=false">NEST-RL 91_9</a></html>   FER1_SPIOL      -1      91      93      NEST-RL
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/nestrl?gzip=false">NEST-RL 121_12</a></html> FER1_SPIOL      -1      121     123     NEST-RL
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/schellmannloop6?gzip=false">SCHELLMANN-LOOP-6 78_8</a></html>        FER1_SPIOL      -1      78      83      SCHELLMANN-LOOP-6
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/schellmannloop6?gzip=false">SCHELLMANN-LOOP-6 118_12</a></html>      FER1_SPIOL      -1      118     123     SCHELLMANN-LOOP-6
+<html>Found in PDBs: 1a70. <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/stmotif?gzip=false">ST-MOTIF 59_6</a></html> FER1_SPIOL      -1      59      63      ST-MOTIF
+ALPHA-BETA-MOTIF       FER1_SPIOL      -1      65      69      ALPHA-BETA-MOTIF
+ASX-MOTIF      FER1_SPIOL      -1      65      69      ASX-MOTIF
+ASX-TURN-IIL   FER1_SPIOL      -1      57      59      ASX-TURN-IIL
+ASX-TURN-IR    FER1_SPIOL      -1      65      67      ASX-TURN-IR
+BETA-BULGE     FER1_SPIOL      -1      52      53      BETA-BULGE
+BETA-TURN-IR   FER1_SPIOL      -1      9       12      BETA-TURN-IR
+BETA-TURN-IR   FER1_SPIOL      -1      19      22      BETA-TURN-IR
+BETA-TURN-IR   FER1_SPIOL      -1      45      48      BETA-TURN-IR
+BETA-TURN-IR   FER1_SPIOL      -1      58      61      BETA-TURN-IR
+BETA-TURN-IR   FER1_SPIOL      -1      75      78      BETA-TURN-IR
+BETA-TURN-IR   FER1_SPIOL      -1      91      94      BETA-TURN-IR
+NEST-LR        FER1_SPIOL      -1      40      42      NEST-LR
+NEST-LR        FER1_SPIOL      -1      42      44      NEST-LR
+NEST-LR        FER1_SPIOL      -1      90      92      NEST-LR
+NEST-RL        FER1_SPIOL      -1      31      33      NEST-RL
+NEST-RL        FER1_SPIOL      -1      39      41      NEST-RL
+NEST-RL        FER1_SPIOL      -1      41      43      NEST-RL
+NEST-RL        FER1_SPIOL      -1      71      73      NEST-RL
+SCHELLMANN-LOOP-6      FER1_SPIOL      -1      28      33      SCHELLMANN-LOOP-6
+SCHELLMANN-LOOP-6      FER1_SPIOL      -1      68      73      SCHELLMANN-LOOP-6
+ST-MOTIF       FER1_SPIOL      -1      9       13      ST-MOTIF
+<html>Found in PDBs: 1gaq.B <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/alphabetamotif?gzip=false">ALPHA-BETA-MOTIF 76_8</a></html> FER1_MAIZE      -1      76      80      ALPHA-BETA-MOTIF
+<html>Found in PDBs: 1gaq.B <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/alphabetamotif?gzip=false">ALPHA-BETA-MOTIF 77_8</a></html> FER1_MAIZE      -1      77      81      ALPHA-BETA-MOTIF
+<html>Found in PDBs: 1gaq.B <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/betaturnir?gzip=false">BETA-TURN-IR 127_13</a></html>       FER1_MAIZE      -1      127     130     BETA-TURN-IR
+<html>Found in PDBs: 1gaq.B <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/gammaturnclassic?gzip=false">GAMMA-TURN-CLASSIC 113_11</a></html>   FER1_MAIZE      -1      113     115     GAMMA-TURN-CLASSIC
+<html>Found in PDBs: 1gaq.B <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/gammaturninverse?gzip=false">GAMMA-TURN-INVERSE 59_6</a></html>     FER1_MAIZE      -1      59      61      GAMMA-TURN-INVERSE
+<html>Found in PDBs: 1gaq.B <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/gammaturninverse?gzip=false">GAMMA-TURN-INVERSE 104_10</a></html>   FER1_MAIZE      -1      104     106     GAMMA-TURN-INVERSE
+<html>Found in PDBs: 1gaq.B <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/nestlr?gzip=false">NEST-LR 92_9</a></html>  FER1_MAIZE      -1      92      94      NEST-LR
+<html>Found in PDBs: 1gaq.B <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/nestlr?gzip=false">NEST-LR 94_9</a></html>  FER1_MAIZE      -1      94      96      NEST-LR
+<html>Found in PDBs: 1gaq.B <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/nestrl?gzip=false">NEST-RL 83_8</a></html>  FER1_MAIZE      -1      83      85      NEST-RL
+<html>Found in PDBs: 1gaq.B <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/nestrl?gzip=false">NEST-RL 91_9</a></html>  FER1_MAIZE      -1      91      93      NEST-RL
+<html>Found in PDBs: 1gaq.B <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/nestrl?gzip=false">NEST-RL 93_9</a></html>  FER1_MAIZE      -1      93      95      NEST-RL
+<html>Found in PDBs: 1gaq.B <a href="http://www.ebi.ac.uk/msd-srv/msdmotif/nestrl?gzip=false">NEST-RL 123_12</a></html>        FER1_MAIZE      -1      123     125     NEST-RL
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      132     136     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      174     178     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      175     179     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      180     184     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      181     185     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      214     218     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      215     219     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      218     222     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      223     227     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      246     250     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      251     255     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      254     258     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      258     262     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      279     283     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      280     284     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      289     293     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      296     300     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      299     303     ALPHA-BETA-MOTIF
+ASX-TURN-IIL   FER1_MAIZE      -1      160     162     ASX-TURN-IIL
+ASX-TURN-IIR   FER1_MAIZE      -1      107     109     ASX-TURN-IIR
+BETA-BULGE     FER1_MAIZE      -1      31      32      BETA-BULGE
+BETA-BULGE     FER1_MAIZE      -1      43      44      BETA-BULGE
+BETA-TURN-IIL  FER1_MAIZE      -1      170     173     BETA-TURN-IIL
+BETA-TURN-IIR  FER1_MAIZE      -1      71      74      BETA-TURN-IIR
+BETA-TURN-IIR  FER1_MAIZE      -1      140     143     BETA-TURN-IIR
+BETA-TURN-IIR  FER1_MAIZE      -1      274     277     BETA-TURN-IIR
+BETA-TURN-IL   FER1_MAIZE      -1      64      67      BETA-TURN-IL
+BETA-TURN-IR   FER1_MAIZE      -1      33      36      BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      50      53      BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      100     103     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      103     106     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      136     139     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      171     174     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      172     175     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      206     209     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      207     210     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      223     226     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      233     236     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      252     255     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      264     267     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      289     292     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      295     298     BETA-TURN-IR
+CATMAT-3       FER1_MAIZE      -1      20      22      CATMAT-3
+CATMAT-3       FER1_MAIZE      -1      47      49      CATMAT-3
+CATMAT-3       FER1_MAIZE      -1      97      99      CATMAT-3
+CATMAT-4       FER1_MAIZE      -1      189     192     CATMAT-4
+GAMMA-TURN-INVERSE     FER1_MAIZE      -1      68      70      GAMMA-TURN-INVERSE
+GAMMA-TURN-INVERSE     FER1_MAIZE      -1      84      86      GAMMA-TURN-INVERSE
+GAMMA-TURN-INVERSE     FER1_MAIZE      -1      232     234     GAMMA-TURN-INVERSE
+GAMMA-TURN-INVERSE     FER1_MAIZE      -1      240     242     GAMMA-TURN-INVERSE
+GAMMA-TURN-INVERSE     FER1_MAIZE      -1      244     246     GAMMA-TURN-INVERSE
+NEST-LR        FER1_MAIZE      -1      30      32      NEST-LR
+NEST-LR        FER1_MAIZE      -1      66      68      NEST-LR
+NEST-LR        FER1_MAIZE      -1      106     108     NEST-LR
+NEST-LR        FER1_MAIZE      -1      108     110     NEST-LR
+NEST-LR        FER1_MAIZE      -1      212     214     NEST-LR
+NEST-LR        FER1_MAIZE      -1      276     278     NEST-LR
+NEST-LR        FER1_MAIZE      -1      307     309     NEST-LR
+NEST-RL        FER1_MAIZE      -1      64      66      NEST-RL
+NEST-RL        FER1_MAIZE      -1      105     107     NEST-RL
+NEST-RL        FER1_MAIZE      -1      107     109     NEST-RL
+NEST-RL        FER1_MAIZE      -1      306     308     NEST-RL
+ST-TURN-IIL    FER1_MAIZE      -1      20      22      ST-TURN-IIL
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      24      28      ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      25      29      ALPHA-BETA-MOTIF
+BETA-TURN-IR   FER1_MAIZE      -1      75      78      BETA-TURN-IR
+GAMMA-TURN-CLASSIC     FER1_MAIZE      -1      61      63      GAMMA-TURN-CLASSIC
+GAMMA-TURN-INVERSE     FER1_MAIZE      -1      7       9       GAMMA-TURN-INVERSE
+GAMMA-TURN-INVERSE     FER1_MAIZE      -1      52      54      GAMMA-TURN-INVERSE
+NEST-LR        FER1_MAIZE      -1      40      42      NEST-LR
+NEST-LR        FER1_MAIZE      -1      42      44      NEST-LR
+NEST-RL        FER1_MAIZE      -1      31      33      NEST-RL
+NEST-RL        FER1_MAIZE      -1      39      41      NEST-RL
+NEST-RL        FER1_MAIZE      -1      41      43      NEST-RL
+NEST-RL        FER1_MAIZE      -1      71      73      NEST-RL
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      176     180     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      233     237     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      247     251     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      278     282     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      286     290     ALPHA-BETA-MOTIF
+ALPHA-BETA-MOTIF       FER1_MAIZE      -1      295     299     ALPHA-BETA-MOTIF
+ASX-MOTIF      FER1_MAIZE      -1      122     126     ASX-MOTIF
+ASX-MOTIF      FER1_MAIZE      -1      160     164     ASX-MOTIF
+ASX-TURN-IR    FER1_MAIZE      -1      122     124     ASX-TURN-IR
+BETA-BULGE-LOOP-5      FER1_MAIZE      -1      122     126     BETA-BULGE-LOOP-5
+BETA-BULGE-LOOP-5      FER1_MAIZE      -1      239     243     BETA-BULGE-LOOP-5
+BETA-TURN-IR   FER1_MAIZE      -1      122     125     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      160     163     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      239     242     BETA-TURN-IR
+BETA-TURN-IR   FER1_MAIZE      -1      261     264     BETA-TURN-IR
+CATMAT-3       FER1_MAIZE      -1      80      82      CATMAT-3
+CATMAT-3       FER1_MAIZE      -1      87      89      CATMAT-3
+CATMAT-3       FER1_MAIZE      -1      262     264     CATMAT-3
+NEST-RL        FER1_MAIZE      -1      124     126     NEST-RL
+NEST-RL        FER1_MAIZE      -1      241     243     NEST-RL
+NEST-RL        FER1_MAIZE      -1      292     294     NEST-RL
+ENDGROUP       s3dm
diff --git a/examples-jbake/assets/exampleFile.jar b/examples-jbake/assets/exampleFile.jar
new file mode 100755 (executable)
index 0000000..3231974
Binary files /dev/null and b/examples-jbake/assets/exampleFile.jar differ
diff --git a/examples-jbake/assets/exampleFile_2_3.jar b/examples-jbake/assets/exampleFile_2_3.jar
new file mode 100644 (file)
index 0000000..8c6114d
Binary files /dev/null and b/examples-jbake/assets/exampleFile_2_3.jar differ
diff --git a/examples-jbake/assets/exampleFile_2_7.jar b/examples-jbake/assets/exampleFile_2_7.jar
new file mode 100644 (file)
index 0000000..3c1ea42
Binary files /dev/null and b/examples-jbake/assets/exampleFile_2_7.jar differ
diff --git a/examples-jbake/assets/ferredoxin.nw b/examples-jbake/assets/ferredoxin.nw
new file mode 100755 (executable)
index 0000000..d82ff48
--- /dev/null
@@ -0,0 +1 @@
+(((FER_BRANA:128.0,FER3_RAPSA:128.0):50.75,FER_CAPAA:178.75):121.94443,(Q93Z60_ARATH:271.45456,((O80429_MAIZE:183.0,FER1_MAIZE:183.0):30.5,((Q7XA98_TRIPR:90.0,FER1_PEA:90.0):83.32143,(((FER2_ARATH:64.0,FER1_ARATH:64.0):94.375,(FER1_SPIOL:124.5,FER1_MESCR:124.5):33.875):6.4166718,((Q93XJ9_SOLTU:33.5,FER1_SOLLC:33.5):49.0,FER_CAPAN:82.5):82.29167):8.529755):40.178574):57.95456):29.239868);\r
diff --git a/examples-jbake/assets/globins.jar b/examples-jbake/assets/globins.jar
new file mode 100755 (executable)
index 0000000..a0d70eb
Binary files /dev/null and b/examples-jbake/assets/globins.jar differ
diff --git a/examples-jbake/assets/images/applet.jpg b/examples-jbake/assets/images/applet.jpg
new file mode 100644 (file)
index 0000000..2b4eb7e
Binary files /dev/null and b/examples-jbake/assets/images/applet.jpg differ
diff --git a/examples-jbake/assets/images/com-arrow-3-small.png b/examples-jbake/assets/images/com-arrow-3-small.png
new file mode 100644 (file)
index 0000000..e11ea15
Binary files /dev/null and b/examples-jbake/assets/images/com-arrow-3-small.png differ
diff --git a/examples-jbake/assets/images/desk.jpg b/examples-jbake/assets/images/desk.jpg
new file mode 100644 (file)
index 0000000..cf8daff
Binary files /dev/null and b/examples-jbake/assets/images/desk.jpg differ
diff --git a/examples-jbake/assets/images/dev-arrow-3-normal.png b/examples-jbake/assets/images/dev-arrow-3-normal.png
new file mode 100644 (file)
index 0000000..f1ec24e
Binary files /dev/null and b/examples-jbake/assets/images/dev-arrow-3-normal.png differ
diff --git a/examples-jbake/assets/images/jvlite-arrow-3-small.png b/examples-jbake/assets/images/jvlite-arrow-3-small.png
new file mode 100644 (file)
index 0000000..cde23b3
Binary files /dev/null and b/examples-jbake/assets/images/jvlite-arrow-3-small.png differ
diff --git a/examples-jbake/assets/images/logo.jpg b/examples-jbake/assets/images/logo.jpg
new file mode 100644 (file)
index 0000000..06c7cdd
Binary files /dev/null and b/examples-jbake/assets/images/logo.jpg differ
diff --git a/examples-jbake/assets/images/normal-arrow-3-normal.png b/examples-jbake/assets/images/normal-arrow-3-normal.png
new file mode 100644 (file)
index 0000000..03c836d
Binary files /dev/null and b/examples-jbake/assets/images/normal-arrow-3-normal.png differ
diff --git a/examples-jbake/assets/images/train-arrow-3-normal.png b/examples-jbake/assets/images/train-arrow-3-normal.png
new file mode 100644 (file)
index 0000000..ea8ad5c
Binary files /dev/null and b/examples-jbake/assets/images/train-arrow-3-normal.png differ
diff --git a/examples-jbake/assets/jalviewApplet.jar b/examples-jbake/assets/jalviewApplet.jar
new file mode 100644 (file)
index 0000000..dc41e00
Binary files /dev/null and b/examples-jbake/assets/jalviewApplet.jar differ
diff --git a/examples-jbake/assets/javascript/deployJava.js b/examples-jbake/assets/javascript/deployJava.js
new file mode 100644 (file)
index 0000000..b0e9559
--- /dev/null
@@ -0,0 +1,81 @@
+/*********\r
+ * downloaded from http://java.com/js/deployJava.js\r
+ * Probably copyright Oracle nee Sun 2011,2010,2009.\r
+ */\r
+var deployJava={debug:null,firefoxJavaVersion:null,myInterval:null,preInstallJREList:null,returnPage:null,brand:null,locale:null,installType:null,EAInstallEnabled:false,EarlyAccessURL:null,getJavaURL:'http://java.sun.com/webapps/getjava/BrowserRedirect?host=java.com',appleRedirectPage:'http://www.apple.com/support/downloads/',oldMimeType:'application/npruntime-scriptable-plugin;DeploymentToolkit',mimeType:'application/java-deployment-toolkit',launchButtonPNG:'http://java.sun.com/products/jfc/tsc/articles/swing2d/webstart.png',browserName:null,browserName2:null,getJREs:function(){var list=new Array();if(deployJava.isPluginInstalled()){var plugin=deployJava.getPlugin();var VMs=plugin.jvms;for(var i=0;i<VMs.getLength();i++){list[i]=VMs.get(i).version;}}else{var browser=deployJava.getBrowser();if(browser=='MSIE'){if(deployJava.testUsingActiveX('1.7.0')){list[0]='1.7.0';}else if(deployJava.testUsingActiveX('1.6.0')){list[0]='1.6.0';}else if(deployJava.testUsingActiveX('1.5.0')){list[0]='1.5.0';}else if(deployJava.testUsingActiveX('1.4.2')){list[0]='1.4.2';}else if(deployJava.testForMSVM()){list[0]='1.1';}}else if(browser=='Netscape Family'){deployJava.getJPIVersionUsingMimeType();if(deployJava.firefoxJavaVersion!=null){list[0]=deployJava.firefoxJavaVersion;}else if(deployJava.testUsingMimeTypes('1.7')){list[0]='1.7.0';}else if(deployJava.testUsingMimeTypes('1.6')){list[0]='1.6.0';}else if(deployJava.testUsingMimeTypes('1.5')){list[0]='1.5.0';}else if(deployJava.testUsingMimeTypes('1.4.2')){list[0]='1.4.2';}else if(deployJava.browserName2=='Safari'){if(deployJava.testUsingPluginsArray('1.7.0')){list[0]='1.7.0';}else if(deployJava.testUsingPluginsArray('1.6')){list[0]='1.6.0';}else if(deployJava.testUsingPluginsArray('1.5')){list[0]='1.5.0';}else if(deployJava.testUsingPluginsArray('1.4.2')){list[0]='1.4.2';}}}}\r
+if(deployJava.debug){for(var i=0;i<list.length;++i){alert('We claim to have detected Java SE '+list[i]);}}\r
+return list;},installJRE:function(requestVersion){var ret=false;if(deployJava.isPluginInstalled()){if(deployJava.getPlugin().installJRE(requestVersion)){deployJava.refresh();if(deployJava.returnPage!=null){document.location=deployJava.returnPage;}\r
+return true;}else{return false;}}else{return deployJava.installLatestJRE();}},installLatestJRE:function(){if(deployJava.isPluginInstalled()){if(deployJava.getPlugin().installLatestJRE()){deployJava.refresh();if(deployJava.returnPage!=null){document.location=deployJava.returnPage;}\r
+return true;}else{return false;}}else{var browser=deployJava.getBrowser();var platform=navigator.platform.toLowerCase();if((deployJava.EAInstallEnabled=='true')&&(platform.indexOf('win')!=-1)&&(deployJava.EarlyAccessURL!=null)){deployJava.preInstallJREList=deployJava.getJREs();if(deployJava.returnPage!=null){deployJava.myInterval=setInterval("deployJava.poll()",3000);}\r
+location.href=deployJava.EarlyAccessURL;return false;}else{if(browser=='MSIE'){return deployJava.IEInstall();}else if((browser=='Netscape Family')&&(platform.indexOf('win32')!=-1)){return deployJava.FFInstall();}else{location.href=deployJava.getJavaURL+\r
+((deployJava.returnPage!=null)?('&returnPage='+deployJava.returnPage):'')+\r
+((deployJava.locale!=null)?('&locale='+deployJava.locale):'')+\r
+((deployJava.brand!=null)?('&brand='+deployJava.brand):'');}\r
+return false;}}},runApplet:function(attributes,parameters,minimumVersion){if(minimumVersion=='undefined'||minimumVersion==null){minimumVersion='1.1';}\r
+var regex="^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$";var matchData=minimumVersion.match(regex);if(deployJava.returnPage==null){deployJava.returnPage=document.location;}\r
+if(matchData!=null){var browser=deployJava.getBrowser();if((browser!='?')&&('Safari'!=deployJava.browserName2)){if(deployJava.versionCheck(minimumVersion+'+')){deployJava.writeAppletTag(attributes,parameters);}else if(deployJava.installJRE(minimumVersion+'+')){deployJava.refresh();location.href=document.location;deployJava.writeAppletTag(attributes,parameters);}}else{deployJava.writeAppletTag(attributes,parameters);}}else{if(deployJava.debug){alert('Invalid minimumVersion argument to runApplet():'+\r
+minimumVersion);}}},writeAppletTag:function(attributes,parameters){var startApplet='<'+'applet ';var params='';var endApplet='<'+'/'+'applet'+'>';var addCodeAttribute=true;for(var attribute in attributes){startApplet+=(' '+attribute+'="'+attributes[attribute]+'"');if(attribute=='code'||attribute=='java_code'){addCodeAttribute=false;}}\r
+if(parameters!='undefined'&&parameters!=null){var codebaseParam=false;for(var parameter in parameters){if(parameter=='codebase_lookup'){codebaseParam=true;}\r
+if(parameter=='object'||parameter=='java_object'){addCodeAttribute=false;}\r
+params+='<param name="'+parameter+'" value="'+\r
+parameters[parameter]+'"/>';}\r
+if(!codebaseParam){params+='<param name="codebase_lookup" value="false"/>';}}\r
+if(addCodeAttribute){startApplet+=(' code="dummy"');}\r
+startApplet+='>';document.write(startApplet+'\n'+params+'\n'+endApplet);},versionCheck:function(versionPattern)\r
+{var index=0;var regex="^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?(\\*|\\+)?$";var matchData=versionPattern.match(regex);if(matchData!=null){var familyMatch=true;var patternArray=new Array();for(var i=1;i<matchData.length;++i){if((typeof matchData[i]=='string')&&(matchData[i]!='')){patternArray[index]=matchData[i];index++;}}\r
+if(patternArray[patternArray.length-1]=='+'){familyMatch=false;patternArray.length--;}else{if(patternArray[patternArray.length-1]=='*'){patternArray.length--;}}\r
+var list=deployJava.getJREs();for(var i=0;i<list.length;++i){if(deployJava.compareVersionToPattern(list[i],patternArray,familyMatch)){return true;}}\r
+return false;}else{alert('Invalid versionPattern passed to versionCheck: '+\r
+versionPattern);return false;}},isWebStartInstalled:function(minimumVersion){var browser=deployJava.getBrowser();if((browser=='?')||('Safari'==deployJava.browserName2)){return true;}\r
+if(minimumVersion=='undefined'||minimumVersion==null){minimumVersion='1.4.2';}\r
+var retval=false;var regex="^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$";var matchData=minimumVersion.match(regex);if(matchData!=null){retval=deployJava.versionCheck(minimumVersion+'+');}else{if(deployJava.debug){alert('Invalid minimumVersion argument to isWebStartInstalled(): '+minimumVersion);}\r
+retval=deployJava.versionCheck('1.4.2+');}\r
+return retval;},getJPIVersionUsingMimeType:function(){for(var i=0;i<navigator.mimeTypes.length;++i){var s=navigator.mimeTypes[i].type;var m=s.match(/^application\/x-java-applet;jpi-version=(.*)$/);if(m!=null){deployJava.firefoxJavaVersion=m[1];if('Opera'!=deployJava.browserName2){break;}}}},launchWebStartApplication:function(jnlp){var uaString=navigator.userAgent.toLowerCase();deployJava.getJPIVersionUsingMimeType();if(deployJava.isWebStartInstalled('1.7.0')==false){if((deployJava.installJRE('1.7.0+')==false)||((deployJava.isWebStartInstalled('1.7.0')==false))){return false;}}\r
+var jnlpDocbase=null;if(document.documentURI){jnlpDocbase=document.documentURI;}\r
+if(jnlpDocbase==null){jnlpDocbase=document.URL;}\r
+var browser=deployJava.getBrowser();var launchTag;if(browser=='MSIE'){launchTag='<'+'object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" '+'width="0" height="0">'+'<'+'PARAM name="launchjnlp" value="'+jnlp+'"'+'>'+'<'+'PARAM name="docbase" value="'+jnlpDocbase+'"'+'>'+'<'+'/'+'object'+'>';}else if(browser=='Netscape Family'){launchTag='<'+'embed type="application/x-java-applet;jpi-version='+\r
+deployJava.firefoxJavaVersion+'" '+'width="0" height="0" '+'launchjnlp="'+jnlp+'"'+'docbase="'+jnlpDocbase+'"'+' />';}\r
+if(document.body=='undefined'||document.body==null){document.write(launchTag);document.location=jnlpDocbase;}else{var divTag=document.createElement("div");divTag.id="div1";divTag.style.position="relative";divTag.style.left="-10000px";divTag.style.margin="0px auto";divTag.className="dynamicDiv";divTag.innerHTML=launchTag;document.body.appendChild(divTag);}},createWebStartLaunchButtonEx:function(jnlp,minimumVersion){if(deployJava.returnPage==null){deployJava.returnPage=jnlp;}\r
+var url='javascript:deployJava.launchWebStartApplication(\''+jnlp+'\');';document.write('<'+'a href="'+url+'" onMouseOver="window.status=\'\'; '+'return true;"><'+'img '+'src="'+deployJava.launchButtonPNG+'" '+'border="0" /><'+'/'+'a'+'>');},createWebStartLaunchButton:function(jnlp,minimumVersion){if(deployJava.returnPage==null){deployJava.returnPage=jnlp;}\r
+var url='javascript:'+'if (!deployJava.isWebStartInstalled(&quot;'+\r
+minimumVersion+'&quot;)) {'+'if (deployJava.installLatestJRE()) {'+'if (deployJava.launch(&quot;'+jnlp+'&quot;)) {}'+'}'+'} else {'+'if (deployJava.launch(&quot;'+jnlp+'&quot;)) {}'+'}';document.write('<'+'a href="'+url+'" onMouseOver="window.status=\'\'; '+'return true;"><'+'img '+'src="'+deployJava.launchButtonPNG+'" '+'border="0" /><'+'/'+'a'+'>');},launch:function(jnlp){document.location=jnlp;return true;},isPluginInstalled:function(){var plugin=deployJava.getPlugin();if(plugin&&plugin.jvms){return true;}else{return false;}},isAutoUpdateEnabled:function(){if(deployJava.isPluginInstalled()){return deployJava.getPlugin().isAutoUpdateEnabled();}\r
+return false;},setAutoUpdateEnabled:function(){if(deployJava.isPluginInstalled()){return deployJava.getPlugin().setAutoUpdateEnabled();}\r
+return false;},setInstallerType:function(type){deployJava.installType=type;if(deployJava.isPluginInstalled()){return deployJava.getPlugin().setInstallerType(type);}\r
+return false;},setAdditionalPackages:function(packageList){if(deployJava.isPluginInstalled()){return deployJava.getPlugin().setAdditionalPackages(packageList);}\r
+return false;},setEarlyAccess:function(enabled){deployJava.EAInstallEnabled=enabled;},isPlugin2:function(){if(deployJava.isPluginInstalled()){if(deployJava.versionCheck('1.6.0_10+')){try{return deployJava.getPlugin().isPlugin2();}catch(err){}}}\r
+return false;},allowPlugin:function(){deployJava.getBrowser();var ret=('Safari'!=deployJava.browserName2&&'Opera'!=deployJava.browserName2);return ret;},getPlugin:function(){deployJava.refresh();var ret=null;if(deployJava.allowPlugin()){ret=document.getElementById('deployJavaPlugin');}\r
+return ret;},compareVersionToPattern:function(version,patternArray,familyMatch){var regex="^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$";var matchData=version.match(regex);if(matchData!=null){var index=0;var result=new Array();for(var i=1;i<matchData.length;++i){if((typeof matchData[i]=='string')&&(matchData[i]!=''))\r
+{result[index]=matchData[i];index++;}}\r
+var l=Math.min(result.length,patternArray.length);if(familyMatch){for(var i=0;i<l;++i){if(result[i]!=patternArray[i])return false;}\r
+return true;}else{for(var i=0;i<l;++i){if(result[i]<patternArray[i]){return false;}else if(result[i]>patternArray[i]){return true;}}\r
+return true;}}else{return false;}},getBrowser:function(){if(deployJava.browserName==null){var browser=navigator.userAgent.toLowerCase();if(deployJava.debug){alert('userAgent -> '+browser);}\r
+if(browser.indexOf('msie')!=-1){deployJava.browserName='MSIE';deployJava.browserName2='MSIE';}else if(browser.indexOf('iphone')!=-1){deployJava.browserName='Netscape Family';deployJava.browserName2='iPhone';}else if(browser.indexOf('firefox')!=-1){deployJava.browserName='Netscape Family';deployJava.browserName2='Firefox';}else if(browser.indexOf('chrome')!=-1){deployJava.browserName='Netscape Family';deployJava.browserName2='Chrome';}else if(browser.indexOf('safari')!=-1){deployJava.browserName='Netscape Family';deployJava.browserName2='Safari';}else if(browser.indexOf('mozilla')!=-1){deployJava.browserName='Netscape Family';deployJava.browserName2='Other';}else if(browser.indexOf('opera')!=-1){deployJava.browserName='Netscape Family';deployJava.browserName2='Opera';}else{deployJava.browserName='?';deployJava.browserName2='unknown';}\r
+if(deployJava.debug){alert('Detected browser name:'+deployJava.browserName+', '+deployJava.browserName2);}}\r
+return deployJava.browserName;},testUsingActiveX:function(version){var objectName='JavaWebStart.isInstalled.'+version+'.0';if(!ActiveXObject){if(deployJava.debug){alert('Browser claims to be IE, but no ActiveXObject object?');}\r
+return false;}\r
+try{return(new ActiveXObject(objectName)!=null);}catch(exception){return false;}},testForMSVM:function(){var clsid='{08B0E5C0-4FCB-11CF-AAA5-00401C608500}';if(typeof oClientCaps!='undefined'){var v=oClientCaps.getComponentVersion(clsid,"ComponentID");if((v=='')||(v=='5,0,5000,0')){return false;}else{return true;}}else{return false;}},testUsingMimeTypes:function(version){if(!navigator.mimeTypes){if(deployJava.debug){alert('Browser claims to be Netscape family, but no mimeTypes[] array?');}\r
+return false;}\r
+for(var i=0;i<navigator.mimeTypes.length;++i){s=navigator.mimeTypes[i].type;var m=s.match(/^application\/x-java-applet\x3Bversion=(1\.8|1\.7|1\.6|1\.5|1\.4\.2)$/);if(m!=null){if(deployJava.compareVersions(m[1],version)){return true;}}}\r
+return false;},testUsingPluginsArray:function(version){if((!navigator.plugins)||(!navigator.plugins.length)){return false;}\r
+var platform=navigator.platform.toLowerCase();for(var i=0;i<navigator.plugins.length;++i){s=navigator.plugins[i].description;if(s.search(/^Java Switchable Plug-in (Cocoa)/)!=-1){if(deployJava.compareVersions("1.5.0",version)){return true;}}else if(s.search(/^Java/)!=-1){if(platform.indexOf('win')!=-1){if(deployJava.compareVersions("1.5.0",version)||deployJava.compareVersions("1.6.0",version)){return true;}}}}\r
+if(deployJava.compareVersions("1.5.0",version)){return true;}\r
+return false;},IEInstall:function(){location.href=deployJava.getJavaURL+\r
+((deployJava.returnPage!=null)?('&returnPage='+deployJava.returnPage):'')+\r
+((deployJava.locale!=null)?('&locale='+deployJava.locale):'')+\r
+((deployJava.brand!=null)?('&brand='+deployJava.brand):'')+\r
+((deployJava.installType!=null)?('&type='+deployJava.installType):'');return false;},done:function(name,result){},FFInstall:function(){location.href=deployJava.getJavaURL+\r
+((deployJava.returnPage!=null)?('&returnPage='+deployJava.returnPage):'')+\r
+((deployJava.locale!=null)?('&locale='+deployJava.locale):'')+\r
+((deployJava.brand!=null)?('&brand='+deployJava.brand):'')+\r
+((deployJava.installType!=null)?('&type='+deployJava.installType):'');return false;},compareVersions:function(installed,required){var a=installed.split('.');var b=required.split('.');for(var i=0;i<a.length;++i){a[i]=Number(a[i]);}\r
+for(var i=0;i<b.length;++i){b[i]=Number(b[i]);}\r
+if(a.length==2){a[2]=0;}\r
+if(a[0]>b[0])return true;if(a[0]<b[0])return false;if(a[1]>b[1])return true;if(a[1]<b[1])return false;if(a[2]>b[2])return true;if(a[2]<b[2])return false;return true;},enableAlerts:function(){deployJava.browserName=null;deployJava.debug=true;},poll:function(){deployJava.refresh();var postInstallJREList=deployJava.getJREs();if((deployJava.preInstallJREList.length==0)&&(postInstallJREList.length!=0)){clearInterval(deployJava.myInterval);if(deployJava.returnPage!=null){location.href=deployJava.returnPage;};}\r
+if((deployJava.preInstallJREList.length!=0)&&(postInstallJREList.length!=0)&&(deployJava.preInstallJREList[0]!=postInstallJREList[0])){clearInterval(deployJava.myInterval);if(deployJava.returnPage!=null){location.href=deployJava.returnPage;}}},writePluginTag:function(){var browser=deployJava.getBrowser();if(browser=='MSIE'){document.write('<'+'object classid="clsid:CAFEEFAC-DEC7-0000-0000-ABCDEFFEDCBA" '+'id="deployJavaPlugin" width="0" height="0">'+'<'+'/'+'object'+'>');}else if(browser=='Netscape Family'&&deployJava.allowPlugin()){deployJava.writeEmbedTag();}},refresh:function(){navigator.plugins.refresh(false);var browser=deployJava.getBrowser();if(browser=='Netscape Family'&&deployJava.allowPlugin()){var plugin=document.getElementById('deployJavaPlugin');if(plugin==null){deployJava.writeEmbedTag();}}},writeEmbedTag:function(){var written=false;if(navigator.mimeTypes!=null){for(var i=0;i<navigator.mimeTypes.length;i++){if(navigator.mimeTypes[i].type==deployJava.mimeType){if(navigator.mimeTypes[i].enabledPlugin){document.write('<'+'embed id="deployJavaPlugin" type="'+\r
+deployJava.mimeType+'" hidden="true" />');written=true;}}}\r
+if(!written)for(var i=0;i<navigator.mimeTypes.length;i++){if(navigator.mimeTypes[i].type==deployJava.oldMimeType){if(navigator.mimeTypes[i].enabledPlugin){document.write('<'+'embed id="deployJavaPlugin" type="'+\r
+deployJava.oldMimeType+'" hidden="true" />');}}}}},do_initialize:function(){deployJava.writePluginTag();if(deployJava.locale==null){var loc=null;if(loc==null)try{loc=navigator.userLanguage;}catch(err){}\r
+if(loc==null)try{loc=navigator.systemLanguage;}catch(err){}\r
+if(loc==null)try{loc=navigator.language;}catch(err){}\r
+if(loc!=null){loc.replace("-","_")\r
+deployJava.locale=loc;}}}};deployJava.do_initialize();
\ No newline at end of file
diff --git a/examples-jbake/assets/javascript/jalview.js b/examples-jbake/assets/javascript/jalview.js
new file mode 100644 (file)
index 0000000..34f72eb
--- /dev/null
@@ -0,0 +1,326 @@
+/**
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8)
+ * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ */
+// default console to report messages
+var _console = document.getElementById("stdout");
+var _jvapps = new Array();
+// jvjmols is a list associating a jmol id to { modelstofiles }
+var _jvjmols = new Hashtable();
+// array of model names used to lookup index in Jmol
+var _modeltofiles = new Array();
+// counter for jmol structures
+var mnum = 1;
+
+function setConsole(console) {
+       _console = console;
+}
+
+function getDestinationFrms(source, frames) {
+       var frms = new Array();
+       var frid = "";
+       for (frm in frames) {
+               try {
+                       frid = (source!=null) && (("" + source.getSequenceSetId()) == ("" + frames[frm].currentAlignFrame
+                                       .getSequenceSetId()));
+               } catch (q) {
+               };
+               
+               if (!frames[frm].equals(source) && !frid
+                               && !frames[frm].currentAlignFrame.equals(source)) {
+                       frms[frms.length] = frames[frm];
+               }
+       }
+       return frms;
+}
+
+function mouseover(list1, list2, list3, list4) {
+       // list1 = new Object(list1);
+       var list = new Array(("" + list1), ("" + list2), ("" + list3), ("" + list4));
+       var msg = "Mouse over :\n" + "AlignFrame obj: " + list1 + " Seq : "
+                       + list[1] + "\nPos: " + list[2] + "(" + list[3] + ")\n";
+
+       var flist = getDestinationFrms(list1, _jvapps);
+       if (_console) {
+               _console.value = msg + "\n";
+       }
+
+       for (follower in flist) {
+               if (_console) {
+                       _console.value += "Sending to " + flist[follower] + "\n";
+               }
+               flist[follower].highlight(list[1], list[2], "true");
+       }
+       return true;
+}
+
+function sellist(list1, list2, list3, list4) {
+       // list1 = new Object(list1);
+       var list = new Array(("" + list1), ("" + list2), ("" + list3), ("" + list4));
+       var msg = "Selection:\n" + "AlignFrame obj: " + list[0] + " id : "
+                       + list[1] + "\nSeqs " + list[2] + "\nColumns " + list[3] + "\n";
+       var flist = getDestinationFrms(list1, _jvapps);
+       if (_console) {
+               _console.value = msg + "\n";
+       }
+       
+       for (follower in flist) {
+               if (_console) {
+                       _console.value += "Sending to " + flist[follower] + "\n";
+               }
+               flist[follower].selectIn(flist[follower].getDefaultTargetFrame(),
+                               list[2], list[3])
+       }
+       return true;
+}
+
+function viewlist(list1, list2, list3, list4) {
+       // list1 = new Object(list1);
+       var list = new Array(("" + list1), ("" + list2), ("" + list3), ("" + list4));
+       var msg = "Viewport extent change::\n" + "AlignFrame obj: " + list[0]
+                       + " id : " + list[1] + "\nRow from " + list[2] + " and to "
+                       + list[3] + "\nVisible columns: " + list[4] + "\n";
+       var flist = getDestinationFrms(list1, _jvapps);
+       if (_console) {
+               _console.value = msg + "\n";
+       }
+
+       for (follower in flist) {
+               if (_console) {
+                       _console.value += "Sending to " + flist[follower] + "\n";
+               }
+               flist[follower].scrollToViewIn(flist[follower].getDefaultTargetFrame(),
+                               list[2], "-1");
+       }
+       return true;
+}
+
+// register a jalview applet and add some handlers to it
+// jmolView is a reference to a jmol applet that is displaying the PDB files listed (in order) in the modeltofiles Array
+function linkJvJmol(applet, jmolView, modeltofiles) {
+       var i = _jvapps.length;
+       while (i--) {
+               if (_jvapps[i].equals(applet)) {
+                       throw ("Ignoring additional linkJvJmol call for "
+                                       + applet.getName() + ".");
+               }
+       }
+       _jvapps[_jvapps.length] = applet;
+       applet.setMouseoverListener("mouseover");
+       applet.setSelectionListener("sellist");
+       // viewListener not fully implemented in 2.7
+       // try { applet.setViewListener("viewlist"); } catch (err) {};
+       if (jmolView)
+       {
+               var sep = applet.getSeparator();
+               var oldjm=jmolView;
+               // recover full id of Jmol applet
+               jmolView=_jmolGetApplet(jmolView).id;
+               var jmbinding=_jvjmols.get(jmolView);
+               if (!jmbinding)
+               {       
+                       jmbinding=new Object();
+                       jmbinding._modelstofiles=new Array();
+                       jmbinding._fullmpath=new Array();
+                       jmbinding._filetonum=new Hashtable();
+                       jmbinding._jmol=jmolView;
+                       jmbinding._jmhandle=oldjm;
+                       _jvjmols.put(jmolView,jmbinding);
+               }
+               
+               jmbinding._modelstofiles=jmbinding._modelstofiles.concat(jmbinding._modelstofiles,modeltofiles);
+               jmbinding._jmol=jmolView;
+               // now update structureListener list
+               mtf="";
+               var dbase = document.baseURI.substring(0,document.baseURI.lastIndexOf("/")+1);
+               for (m in jmbinding._modelstofiles)
+               { if (m>0) { mtf+=sep; }
+               mtf+=jmbinding._modelstofiles[m];
+               if (jmbinding._modelstofiles[m].indexOf("//")==-1)
+                       { jmbinding._fullmpath[m] = dbase+((jmbinding._modelstofiles[m].indexOf("/")==0) ? jmbinding._modelstofiles[m].substring(1) : jmbinding._modelstofiles[m]); }
+                 jmbinding._filetonum.put(jmbinding._modelstofiles[m], m+1); 
+                 jmbinding._filetonum.put(jmbinding._fullmpath[m], m+1);
+                 
+                 }
+               applet.setStructureListener("_structure", mtf);
+       }
+}
+
+/*function _addJmolModel(jmolid, modelname) {
+       modelname=""+modelname;
+       var jminf = _jvjmols[jmolid];
+       if (!jminf) {
+               jminf = new Object();
+               jminf._modelstofiles = new Array(); //new Hashtable();
+               jminf._jmol = jmolid;
+               jminf._modellist=new Array();
+               _jvjmols[jmolid] = jminf;
+       }
+       var obj = new Object();
+       jminf._modeltofiles[modelname] = obj; // .put(modelname, obj);
+       obj.id = modelname;
+       obj.mnum = jminf._modeltofiles.length;
+       jminf._modellist+=modelname;
+}*/
+
+
+
+// jmol Jalview Methods
+
+function _structure(list1, list2, list3, list4) {
+       var follower;
+       // if (_console) { if (!_console.value) { _console.value="";} }
+       if (list1 == "mouseover") {
+               var list = new Array(("" + list1), ("" + list2), ("" + list3),
+                               ("" + list4));
+               // 1 is pdb file, 2 is residue number, 3 is chain
+               // list1 = new Object(list1);
+               var base = list[1].indexOf(document.baseURI
+                               .substring(0, document.baseURI.lastIndexOf('/'))
+                               ); // .indexOf(_path);
+               if (base==0) { base = document.baseURI.lastIndexOf('/'); }
+               var sid = list[1]; // .substring(base);
+               base = list[1].substring(0, base);
+               if (_console) {
+                       _console.value += "Model is " + list[1] + ", Structure id is : "
+                                       + sid + "\n";
+               }
+               ;
+               var siddat;
+               for ( var jmolappi in _jvjmols.values()) {
+                       var jmolapp=_jvjmols.values()[jmolappi];
+                       var msg = "";
+                       if (siddat = jmolapp._filetonum.get(sid)) {
+                               // we don't putin chain number because there isn't one ?
+                               // skip select 0 bit
+                               var ch = ""+list[3];
+                               if ((""+list[2]).trim().length==1)
+                                       {
+                                       ch+=":"+list[2];
+                                       }
+                               msg = "select (" + ch + " /" + siddat + ") ;";
+                       }
+                       if (msg) {
+                               if (_console) {
+                                       _console.value += "Sending '" + msg + "' to jmol." + "\n";
+                               }
+                       }
+                       jmolScriptWait(msg, "" + jmolapp._jmhandle);
+                       // only do highlight for one jmol ?
+                       // return 1;
+               }
+       }
+       if (list1 == "colourstruct") {
+               if (_console) {
+                       _console.value += 'colourStruct("' + list1 + '","' + list2
+                       + '") [' + list4 + ']' + "\n";
+               }
+               setTimeout('colourStruct("'+list4+'","' + list1 + '","' + list2 + '")', 1);
+               return 1;
+       }
+       return 1;
+}
+// last colour message
+var _lastMsg = "";
+// indicator - if _colourStruct==0 then no colouring is going on
+var _colourStruct = 0;
+
+function colourStruct(involves, msg, handle) {
+       if (_colourStruct == 0) {
+               _colourStruct = 1;
+               for (ap in _jvapps) {
+                       var _msg = "";
+                       do {
+                               if (_msg.match(/\S/)) {
+                                       _lastMsg += _msg;
+                               }
+                               _msg = "" + _jvapps[ap].getJsMessage(msg, handle);
+                       } while (_msg.match(/\S/));
+               }
+               // locate the jmol that should get the message
+               for (var jmol in _jvjmols.values())
+                       {
+                       var jml=_jvjmols.values()[jmol];
+                       if (jml._filetonum.get(involves))
+                               {
+                                       colourStructs(jml._jmhandle);
+                               }
+                       }
+               _colourStruct = 0;
+       } else {
+               // setTimeout('colourStruct("'+msg+'","'+handle+'")',3);
+       }
+}
+
+function colourStructs(jmolapp) {
+       dbg(0, "Colouring the structures\n");
+       jmolScriptWait("set selectionhalos false;" + _lastMsg
+                       + "; select 0; set selectionhalos true;", jmolapp);
+       _lastMsg = "";
+}
+var _jmolhovermsg="";
+function _jmolhover(jmid, atomlabel, atomidx) {
+       var msg=""+jmid+" "+atomlabel+" "+atomidx;
+       if (_jmolhovermsg==msg)
+               {
+               return;
+               }
+       _jmolhovermsg=msg;
+       modeltofiles = _jvjmols.get(jmid)._modelstofiles;
+       // atomlabel=(""+atomlabel).match(/\[(.+)\](\d+):(.)\.(\S+)\s*\/(\d+)\..+/);
+       // relaxed third parameter - may be null or a model number for multi model
+       // views
+       atomlabel = ("" + atomlabel)
+                       .match(/\[(.+)\](\d+):(.)\.([^\/]+)(\/\d+\.|).+/);
+       atomidx = "" + atomidx;
+       if (atomlabel[5]) {
+               atomlabel[5] = atomlabel[5].match(/\/(.+)\./)[1];
+               atomlabel[5] = parseInt(atomlabel[5])-1;
+       } else {
+               // default - first model
+               atomlabel[5] = 0;
+       }
+       // use atomlabel[5] to look up model filename so we can highlight associated positions in any jalviews
+       for (ap in _jvapps) {
+               _jvapps[ap].mouseOverStructure(atomlabel[2], atomlabel[3],
+                               document.baseURI
+                                               .substring(0, document.baseURI.lastIndexOf('/'))
+                                               + "/" + 
+                                               modeltofiles[atomlabel[5]]);
+               msg = _jmolhovermsg;
+       }
+}
+function _jmolpick(jmid, atomlabel, atomidx) {
+       atomlabel = "" + atomlabel;
+       atomidx = "" + atomidx;
+       // label is atom id, atom number, and xyz coordinates in the form:
+       // C6 #6 -0.30683374 -1.6836332 -0.716934
+       // atom index, starting with 0.
+
+}
+function _jmolMessagecallback(jmid, statmess) {
+       // if (statmess.indexOf("Script Terminated")==0)
+       {
+               var thisTime = new Date();
+               if (_console) {
+                       _console.value += "Last script execution took : "
+                                       + (thisTime.valueOf() - _lastTime.valueOf()) / 1000.0
+                                       + " seconds.";
+               }
+               _lastTime = thisTime;
+
+       }
+}
diff --git a/examples-jbake/assets/javascript/jquery-1.4.4.min.js b/examples-jbake/assets/javascript/jquery-1.4.4.min.js
new file mode 100644 (file)
index 0000000..8f3ca2e
--- /dev/null
@@ -0,0 +1,167 @@
+/*!
+ * jQuery JavaScript Library v1.4.4
+ * http://jquery.com/
+ *
+ * Copyright 2010, John Resig
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ * Copyright 2010, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ *
+ * Date: Thu Nov 11 19:04:53 2010 -0500
+ */
+(function(E,B){function ka(a,b,d){if(d===B&&a.nodeType===1){d=a.getAttribute("data-"+b);if(typeof d==="string"){try{d=d==="true"?true:d==="false"?false:d==="null"?null:!c.isNaN(d)?parseFloat(d):Ja.test(d)?c.parseJSON(d):d}catch(e){}c.data(a,b,d)}else d=B}return d}function U(){return false}function ca(){return true}function la(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function Ka(a){var b,d,e,f,h,l,k,o,x,r,A,C=[];f=[];h=c.data(this,this.nodeType?"events":"__events__");if(typeof h==="function")h=
+h.events;if(!(a.liveFired===this||!h||!h.live||a.button&&a.type==="click")){if(a.namespace)A=RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)");a.liveFired=this;var J=h.live.slice(0);for(k=0;k<J.length;k++){h=J[k];h.origType.replace(X,"")===a.type?f.push(h.selector):J.splice(k--,1)}f=c(a.target).closest(f,a.currentTarget);o=0;for(x=f.length;o<x;o++){r=f[o];for(k=0;k<J.length;k++){h=J[k];if(r.selector===h.selector&&(!A||A.test(h.namespace))){l=r.elem;e=null;if(h.preType==="mouseenter"||
+h.preType==="mouseleave"){a.type=h.preType;e=c(a.relatedTarget).closest(h.selector)[0]}if(!e||e!==l)C.push({elem:l,handleObj:h,level:r.level})}}}o=0;for(x=C.length;o<x;o++){f=C[o];if(d&&f.level>d)break;a.currentTarget=f.elem;a.data=f.handleObj.data;a.handleObj=f.handleObj;A=f.handleObj.origHandler.apply(f.elem,arguments);if(A===false||a.isPropagationStopped()){d=f.level;if(A===false)b=false;if(a.isImmediatePropagationStopped())break}}return b}}function Y(a,b){return(a&&a!=="*"?a+".":"")+b.replace(La,
+"`").replace(Ma,"&")}function ma(a,b,d){if(c.isFunction(b))return c.grep(a,function(f,h){return!!b.call(f,h,f)===d});else if(b.nodeType)return c.grep(a,function(f){return f===b===d});else if(typeof b==="string"){var e=c.grep(a,function(f){return f.nodeType===1});if(Na.test(b))return c.filter(b,e,!d);else b=c.filter(b,e)}return c.grep(a,function(f){return c.inArray(f,b)>=0===d})}function na(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var e=c.data(a[d++]),f=c.data(this,
+e);if(e=e&&e.events){delete f.handle;f.events={};for(var h in e)for(var l in e[h])c.event.add(this,h,e[h][l],e[h][l].data)}}})}function Oa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function oa(a,b,d){var e=b==="width"?a.offsetWidth:a.offsetHeight;if(d==="border")return e;c.each(b==="width"?Pa:Qa,function(){d||(e-=parseFloat(c.css(a,"padding"+this))||0);if(d==="margin")e+=parseFloat(c.css(a,
+"margin"+this))||0;else e-=parseFloat(c.css(a,"border"+this+"Width"))||0});return e}function da(a,b,d,e){if(c.isArray(b)&&b.length)c.each(b,function(f,h){d||Ra.test(a)?e(a,h):da(a+"["+(typeof h==="object"||c.isArray(h)?f:"")+"]",h,d,e)});else if(!d&&b!=null&&typeof b==="object")c.isEmptyObject(b)?e(a,""):c.each(b,function(f,h){da(a+"["+f+"]",h,d,e)});else e(a,b)}function S(a,b){var d={};c.each(pa.concat.apply([],pa.slice(0,b)),function(){d[this]=a});return d}function qa(a){if(!ea[a]){var b=c("<"+
+a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d==="")d="block";ea[a]=d}return ea[a]}function fa(a){return c.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var t=E.document,c=function(){function a(){if(!b.isReady){try{t.documentElement.doScroll("left")}catch(j){setTimeout(a,1);return}b.ready()}}var b=function(j,s){return new b.fn.init(j,s)},d=E.jQuery,e=E.$,f,h=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,l=/\S/,k=/^\s+/,o=/\s+$/,x=/\W/,r=/\d/,A=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,
+C=/^[\],:{}\s]*$/,J=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,w=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,I=/(?:^|:|,)(?:\s*\[)+/g,L=/(webkit)[ \/]([\w.]+)/,g=/(opera)(?:.*version)?[ \/]([\w.]+)/,i=/(msie) ([\w.]+)/,n=/(mozilla)(?:.*? rv:([\w.]+))?/,m=navigator.userAgent,p=false,q=[],u,y=Object.prototype.toString,F=Object.prototype.hasOwnProperty,M=Array.prototype.push,N=Array.prototype.slice,O=String.prototype.trim,D=Array.prototype.indexOf,R={};b.fn=b.prototype={init:function(j,
+s){var v,z,H;if(!j)return this;if(j.nodeType){this.context=this[0]=j;this.length=1;return this}if(j==="body"&&!s&&t.body){this.context=t;this[0]=t.body;this.selector="body";this.length=1;return this}if(typeof j==="string")if((v=h.exec(j))&&(v[1]||!s))if(v[1]){H=s?s.ownerDocument||s:t;if(z=A.exec(j))if(b.isPlainObject(s)){j=[t.createElement(z[1])];b.fn.attr.call(j,s,true)}else j=[H.createElement(z[1])];else{z=b.buildFragment([v[1]],[H]);j=(z.cacheable?z.fragment.cloneNode(true):z.fragment).childNodes}return b.merge(this,
+j)}else{if((z=t.getElementById(v[2]))&&z.parentNode){if(z.id!==v[2])return f.find(j);this.length=1;this[0]=z}this.context=t;this.selector=j;return this}else if(!s&&!x.test(j)){this.selector=j;this.context=t;j=t.getElementsByTagName(j);return b.merge(this,j)}else return!s||s.jquery?(s||f).find(j):b(s).find(j);else if(b.isFunction(j))return f.ready(j);if(j.selector!==B){this.selector=j.selector;this.context=j.context}return b.makeArray(j,this)},selector:"",jquery:"1.4.4",length:0,size:function(){return this.length},
+toArray:function(){return N.call(this,0)},get:function(j){return j==null?this.toArray():j<0?this.slice(j)[0]:this[j]},pushStack:function(j,s,v){var z=b();b.isArray(j)?M.apply(z,j):b.merge(z,j);z.prevObject=this;z.context=this.context;if(s==="find")z.selector=this.selector+(this.selector?" ":"")+v;else if(s)z.selector=this.selector+"."+s+"("+v+")";return z},each:function(j,s){return b.each(this,j,s)},ready:function(j){b.bindReady();if(b.isReady)j.call(t,b);else q&&q.push(j);return this},eq:function(j){return j===
+-1?this.slice(j):this.slice(j,+j+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(N.apply(this,arguments),"slice",N.call(arguments).join(","))},map:function(j){return this.pushStack(b.map(this,function(s,v){return j.call(s,v,s)}))},end:function(){return this.prevObject||b(null)},push:M,sort:[].sort,splice:[].splice};b.fn.init.prototype=b.fn;b.extend=b.fn.extend=function(){var j,s,v,z,H,G=arguments[0]||{},K=1,Q=arguments.length,ga=false;
+if(typeof G==="boolean"){ga=G;G=arguments[1]||{};K=2}if(typeof G!=="object"&&!b.isFunction(G))G={};if(Q===K){G=this;--K}for(;K<Q;K++)if((j=arguments[K])!=null)for(s in j){v=G[s];z=j[s];if(G!==z)if(ga&&z&&(b.isPlainObject(z)||(H=b.isArray(z)))){if(H){H=false;v=v&&b.isArray(v)?v:[]}else v=v&&b.isPlainObject(v)?v:{};G[s]=b.extend(ga,v,z)}else if(z!==B)G[s]=z}return G};b.extend({noConflict:function(j){E.$=e;if(j)E.jQuery=d;return b},isReady:false,readyWait:1,ready:function(j){j===true&&b.readyWait--;
+if(!b.readyWait||j!==true&&!b.isReady){if(!t.body)return setTimeout(b.ready,1);b.isReady=true;if(!(j!==true&&--b.readyWait>0))if(q){var s=0,v=q;for(q=null;j=v[s++];)j.call(t,b);b.fn.trigger&&b(t).trigger("ready").unbind("ready")}}},bindReady:function(){if(!p){p=true;if(t.readyState==="complete")return setTimeout(b.ready,1);if(t.addEventListener){t.addEventListener("DOMContentLoaded",u,false);E.addEventListener("load",b.ready,false)}else if(t.attachEvent){t.attachEvent("onreadystatechange",u);E.attachEvent("onload",
+b.ready);var j=false;try{j=E.frameElement==null}catch(s){}t.documentElement.doScroll&&j&&a()}}},isFunction:function(j){return b.type(j)==="function"},isArray:Array.isArray||function(j){return b.type(j)==="array"},isWindow:function(j){return j&&typeof j==="object"&&"setInterval"in j},isNaN:function(j){return j==null||!r.test(j)||isNaN(j)},type:function(j){return j==null?String(j):R[y.call(j)]||"object"},isPlainObject:function(j){if(!j||b.type(j)!=="object"||j.nodeType||b.isWindow(j))return false;if(j.constructor&&
+!F.call(j,"constructor")&&!F.call(j.constructor.prototype,"isPrototypeOf"))return false;for(var s in j);return s===B||F.call(j,s)},isEmptyObject:function(j){for(var s in j)return false;return true},error:function(j){throw j;},parseJSON:function(j){if(typeof j!=="string"||!j)return null;j=b.trim(j);if(C.test(j.replace(J,"@").replace(w,"]").replace(I,"")))return E.JSON&&E.JSON.parse?E.JSON.parse(j):(new Function("return "+j))();else b.error("Invalid JSON: "+j)},noop:function(){},globalEval:function(j){if(j&&
+l.test(j)){var s=t.getElementsByTagName("head")[0]||t.documentElement,v=t.createElement("script");v.type="text/javascript";if(b.support.scriptEval)v.appendChild(t.createTextNode(j));else v.text=j;s.insertBefore(v,s.firstChild);s.removeChild(v)}},nodeName:function(j,s){return j.nodeName&&j.nodeName.toUpperCase()===s.toUpperCase()},each:function(j,s,v){var z,H=0,G=j.length,K=G===B||b.isFunction(j);if(v)if(K)for(z in j){if(s.apply(j[z],v)===false)break}else for(;H<G;){if(s.apply(j[H++],v)===false)break}else if(K)for(z in j){if(s.call(j[z],
+z,j[z])===false)break}else for(v=j[0];H<G&&s.call(v,H,v)!==false;v=j[++H]);return j},trim:O?function(j){return j==null?"":O.call(j)}:function(j){return j==null?"":j.toString().replace(k,"").replace(o,"")},makeArray:function(j,s){var v=s||[];if(j!=null){var z=b.type(j);j.length==null||z==="string"||z==="function"||z==="regexp"||b.isWindow(j)?M.call(v,j):b.merge(v,j)}return v},inArray:function(j,s){if(s.indexOf)return s.indexOf(j);for(var v=0,z=s.length;v<z;v++)if(s[v]===j)return v;return-1},merge:function(j,
+s){var v=j.length,z=0;if(typeof s.length==="number")for(var H=s.length;z<H;z++)j[v++]=s[z];else for(;s[z]!==B;)j[v++]=s[z++];j.length=v;return j},grep:function(j,s,v){var z=[],H;v=!!v;for(var G=0,K=j.length;G<K;G++){H=!!s(j[G],G);v!==H&&z.push(j[G])}return z},map:function(j,s,v){for(var z=[],H,G=0,K=j.length;G<K;G++){H=s(j[G],G,v);if(H!=null)z[z.length]=H}return z.concat.apply([],z)},guid:1,proxy:function(j,s,v){if(arguments.length===2)if(typeof s==="string"){v=j;j=v[s];s=B}else if(s&&!b.isFunction(s)){v=
+s;s=B}if(!s&&j)s=function(){return j.apply(v||this,arguments)};if(j)s.guid=j.guid=j.guid||s.guid||b.guid++;return s},access:function(j,s,v,z,H,G){var K=j.length;if(typeof s==="object"){for(var Q in s)b.access(j,Q,s[Q],z,H,v);return j}if(v!==B){z=!G&&z&&b.isFunction(v);for(Q=0;Q<K;Q++)H(j[Q],s,z?v.call(j[Q],Q,H(j[Q],s)):v,G);return j}return K?H(j[0],s):B},now:function(){return(new Date).getTime()},uaMatch:function(j){j=j.toLowerCase();j=L.exec(j)||g.exec(j)||i.exec(j)||j.indexOf("compatible")<0&&n.exec(j)||
+[];return{browser:j[1]||"",version:j[2]||"0"}},browser:{}});b.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(j,s){R["[object "+s+"]"]=s.toLowerCase()});m=b.uaMatch(m);if(m.browser){b.browser[m.browser]=true;b.browser.version=m.version}if(b.browser.webkit)b.browser.safari=true;if(D)b.inArray=function(j,s){return D.call(s,j)};if(!/\s/.test("\u00a0")){k=/^[\s\xA0]+/;o=/[\s\xA0]+$/}f=b(t);if(t.addEventListener)u=function(){t.removeEventListener("DOMContentLoaded",u,
+false);b.ready()};else if(t.attachEvent)u=function(){if(t.readyState==="complete"){t.detachEvent("onreadystatechange",u);b.ready()}};return E.jQuery=E.$=b}();(function(){c.support={};var a=t.documentElement,b=t.createElement("script"),d=t.createElement("div"),e="script"+c.now();d.style.display="none";d.innerHTML="   <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";var f=d.getElementsByTagName("*"),h=d.getElementsByTagName("a")[0],l=t.createElement("select"),
+k=l.appendChild(t.createElement("option"));if(!(!f||!f.length||!h)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(h.getAttribute("style")),hrefNormalized:h.getAttribute("href")==="/a",opacity:/^0.55$/.test(h.style.opacity),cssFloat:!!h.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:k.selected,deleteExpando:true,optDisabled:false,checkClone:false,
+scriptEval:false,noCloneEvent:true,boxModel:null,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableHiddenOffsets:true};l.disabled=true;c.support.optDisabled=!k.disabled;b.type="text/javascript";try{b.appendChild(t.createTextNode("window."+e+"=1;"))}catch(o){}a.insertBefore(b,a.firstChild);if(E[e]){c.support.scriptEval=true;delete E[e]}try{delete b.test}catch(x){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function r(){c.support.noCloneEvent=
+false;d.detachEvent("onclick",r)});d.cloneNode(true).fireEvent("onclick")}d=t.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=t.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var r=t.createElement("div");r.style.width=r.style.paddingLeft="1px";t.body.appendChild(r);c.boxModel=c.support.boxModel=r.offsetWidth===2;if("zoom"in r.style){r.style.display="inline";r.style.zoom=
+1;c.support.inlineBlockNeedsLayout=r.offsetWidth===2;r.style.display="";r.innerHTML="<div style='width:4px;'></div>";c.support.shrinkWrapBlocks=r.offsetWidth!==2}r.innerHTML="<table><tr><td style='padding:0;display:none'></td><td>t</td></tr></table>";var A=r.getElementsByTagName("td");c.support.reliableHiddenOffsets=A[0].offsetHeight===0;A[0].style.display="";A[1].style.display="none";c.support.reliableHiddenOffsets=c.support.reliableHiddenOffsets&&A[0].offsetHeight===0;r.innerHTML="";t.body.removeChild(r).style.display=
+"none"});a=function(r){var A=t.createElement("div");r="on"+r;var C=r in A;if(!C){A.setAttribute(r,"return;");C=typeof A[r]==="function"}return C};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=f=h=null}})();var ra={},Ja=/^(?:\{.*\}|\[.*\])$/;c.extend({cache:{},uuid:0,expando:"jQuery"+c.now(),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},data:function(a,b,d){if(c.acceptData(a)){a=a==E?ra:a;var e=a.nodeType,f=e?a[c.expando]:null,h=
+c.cache;if(!(e&&!f&&typeof b==="string"&&d===B)){if(e)f||(a[c.expando]=f=++c.uuid);else h=a;if(typeof b==="object")if(e)h[f]=c.extend(h[f],b);else c.extend(h,b);else if(e&&!h[f])h[f]={};a=e?h[f]:h;if(d!==B)a[b]=d;return typeof b==="string"?a[b]:a}}},removeData:function(a,b){if(c.acceptData(a)){a=a==E?ra:a;var d=a.nodeType,e=d?a[c.expando]:a,f=c.cache,h=d?f[e]:e;if(b){if(h){delete h[b];d&&c.isEmptyObject(h)&&c.removeData(a)}}else if(d&&c.support.deleteExpando)delete a[c.expando];else if(a.removeAttribute)a.removeAttribute(c.expando);
+else if(d)delete f[e];else for(var l in a)delete a[l]}},acceptData:function(a){if(a.nodeName){var b=c.noData[a.nodeName.toLowerCase()];if(b)return!(b===true||a.getAttribute("classid")!==b)}return true}});c.fn.extend({data:function(a,b){var d=null;if(typeof a==="undefined"){if(this.length){var e=this[0].attributes,f;d=c.data(this[0]);for(var h=0,l=e.length;h<l;h++){f=e[h].name;if(f.indexOf("data-")===0){f=f.substr(5);ka(this[0],f,d[f])}}}return d}else if(typeof a==="object")return this.each(function(){c.data(this,
+a)});var k=a.split(".");k[1]=k[1]?"."+k[1]:"";if(b===B){d=this.triggerHandler("getData"+k[1]+"!",[k[0]]);if(d===B&&this.length){d=c.data(this[0],a);d=ka(this[0],a,d)}return d===B&&k[1]?this.data(k[0]):d}else return this.each(function(){var o=c(this),x=[k[0],b];o.triggerHandler("setData"+k[1]+"!",x);c.data(this,a,b);o.triggerHandler("changeData"+k[1]+"!",x)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var e=
+c.data(a,b);if(!d)return e||[];if(!e||c.isArray(d))e=c.data(a,b,c.makeArray(d));else e.push(d);return e}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),e=d.shift();if(e==="inprogress")e=d.shift();if(e){b==="fx"&&d.unshift("inprogress");e.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===B)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,
+a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var sa=/[\n\t]/g,ha=/\s+/,Sa=/\r/g,Ta=/^(?:href|src|style)$/,Ua=/^(?:button|input)$/i,Va=/^(?:button|input|object|select|textarea)$/i,Wa=/^a(?:rea)?$/i,ta=/^(?:radio|checkbox)$/i;c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",
+colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};c.fn.extend({attr:function(a,b){return c.access(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(x){var r=c(this);r.addClass(a.call(this,x,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ha),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===
+1)if(f.className){for(var h=" "+f.className+" ",l=f.className,k=0,o=b.length;k<o;k++)if(h.indexOf(" "+b[k]+" ")<0)l+=" "+b[k];f.className=c.trim(l)}else f.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(o){var x=c(this);x.removeClass(a.call(this,o,x.attr("class")))});if(a&&typeof a==="string"||a===B)for(var b=(a||"").split(ha),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===1&&f.className)if(a){for(var h=(" "+f.className+" ").replace(sa," "),
+l=0,k=b.length;l<k;l++)h=h.replace(" "+b[l]+" "," ");f.className=c.trim(h)}else f.className=""}return this},toggleClass:function(a,b){var d=typeof a,e=typeof b==="boolean";if(c.isFunction(a))return this.each(function(f){var h=c(this);h.toggleClass(a.call(this,f,h.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var f,h=0,l=c(this),k=b,o=a.split(ha);f=o[h++];){k=e?k:!l.hasClass(f);l[k?"addClass":"removeClass"](f)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,
+"__className__",this.className);this.className=this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(sa," ").indexOf(a)>-1)return true;return false},val:function(a){if(!arguments.length){var b=this[0];if(b){if(c.nodeName(b,"option")){var d=b.attributes.value;return!d||d.specified?b.value:b.text}if(c.nodeName(b,"select")){var e=b.selectedIndex;d=[];var f=b.options;b=b.type==="select-one";
+if(e<0)return null;var h=b?e:0;for(e=b?e+1:f.length;h<e;h++){var l=f[h];if(l.selected&&(c.support.optDisabled?!l.disabled:l.getAttribute("disabled")===null)&&(!l.parentNode.disabled||!c.nodeName(l.parentNode,"optgroup"))){a=c(l).val();if(b)return a;d.push(a)}}return d}if(ta.test(b.type)&&!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Sa,"")}return B}var k=c.isFunction(a);return this.each(function(o){var x=c(this),r=a;if(this.nodeType===1){if(k)r=
+a.call(this,o,x.val());if(r==null)r="";else if(typeof r==="number")r+="";else if(c.isArray(r))r=c.map(r,function(C){return C==null?"":C+""});if(c.isArray(r)&&ta.test(this.type))this.checked=c.inArray(x.val(),r)>=0;else if(c.nodeName(this,"select")){var A=c.makeArray(r);c("option",this).each(function(){this.selected=c.inArray(c(this).val(),A)>=0});if(!A.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},
+attr:function(a,b,d,e){if(!a||a.nodeType===3||a.nodeType===8)return B;if(e&&b in c.attrFn)return c(a)[b](d);e=a.nodeType!==1||!c.isXMLDoc(a);var f=d!==B;b=e&&c.props[b]||b;var h=Ta.test(b);if((b in a||a[b]!==B)&&e&&!h){if(f){b==="type"&&Ua.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");if(d===null)a.nodeType===1&&a.removeAttribute(b);else a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&
+b.specified?b.value:Va.test(a.nodeName)||Wa.test(a.nodeName)&&a.href?0:B;return a[b]}if(!c.support.style&&e&&b==="style"){if(f)a.style.cssText=""+d;return a.style.cssText}f&&a.setAttribute(b,""+d);if(!a.attributes[b]&&a.hasAttribute&&!a.hasAttribute(b))return B;a=!c.support.hrefNormalized&&e&&h?a.getAttribute(b,2):a.getAttribute(b);return a===null?B:a}});var X=/\.(.*)$/,ia=/^(?:textarea|input|select)$/i,La=/\./g,Ma=/ /g,Xa=/[^\w\s.|`]/g,Ya=function(a){return a.replace(Xa,"\\$&")},ua={focusin:0,focusout:0};
+c.event={add:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(c.isWindow(a)&&a!==E&&!a.frameElement)a=E;if(d===false)d=U;else if(!d)return;var f,h;if(d.handler){f=d;d=f.handler}if(!d.guid)d.guid=c.guid++;if(h=c.data(a)){var l=a.nodeType?"events":"__events__",k=h[l],o=h.handle;if(typeof k==="function"){o=k.handle;k=k.events}else if(!k){a.nodeType||(h[l]=h=function(){});h.events=k={}}if(!o)h.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,
+arguments):B};o.elem=a;b=b.split(" ");for(var x=0,r;l=b[x++];){h=f?c.extend({},f):{handler:d,data:e};if(l.indexOf(".")>-1){r=l.split(".");l=r.shift();h.namespace=r.slice(0).sort().join(".")}else{r=[];h.namespace=""}h.type=l;if(!h.guid)h.guid=d.guid;var A=k[l],C=c.event.special[l]||{};if(!A){A=k[l]=[];if(!C.setup||C.setup.call(a,e,r,o)===false)if(a.addEventListener)a.addEventListener(l,o,false);else a.attachEvent&&a.attachEvent("on"+l,o)}if(C.add){C.add.call(a,h);if(!h.handler.guid)h.handler.guid=
+d.guid}A.push(h);c.event.global[l]=true}a=null}}},global:{},remove:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(d===false)d=U;var f,h,l=0,k,o,x,r,A,C,J=a.nodeType?"events":"__events__",w=c.data(a),I=w&&w[J];if(w&&I){if(typeof I==="function"){w=I;I=I.events}if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(f in I)c.event.remove(a,f+b)}else{for(b=b.split(" ");f=b[l++];){r=f;k=f.indexOf(".")<0;o=[];if(!k){o=f.split(".");f=o.shift();x=RegExp("(^|\\.)"+
+c.map(o.slice(0).sort(),Ya).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(A=I[f])if(d){r=c.event.special[f]||{};for(h=e||0;h<A.length;h++){C=A[h];if(d.guid===C.guid){if(k||x.test(C.namespace)){e==null&&A.splice(h--,1);r.remove&&r.remove.call(a,C)}if(e!=null)break}}if(A.length===0||e!=null&&A.length===1){if(!r.teardown||r.teardown.call(a,o)===false)c.removeEvent(a,f,w.handle);delete I[f]}}else for(h=0;h<A.length;h++){C=A[h];if(k||x.test(C.namespace)){c.event.remove(a,r,C.handler,h);A.splice(h--,1)}}}if(c.isEmptyObject(I)){if(b=
+w.handle)b.elem=null;delete w.events;delete w.handle;if(typeof w==="function")c.removeData(a,J);else c.isEmptyObject(w)&&c.removeData(a)}}}}},trigger:function(a,b,d,e){var f=a.type||a;if(!e){a=typeof a==="object"?a[c.expando]?a:c.extend(c.Event(f),a):c.Event(f);if(f.indexOf("!")>=0){a.type=f=f.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[f]&&c.each(c.cache,function(){this.events&&this.events[f]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===
+8)return B;a.result=B;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(e=d.nodeType?c.data(d,"handle"):(c.data(d,"__events__")||{}).handle)&&e.apply(d,b);e=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+f]&&d["on"+f].apply(d,b)===false){a.result=false;a.preventDefault()}}catch(h){}if(!a.isPropagationStopped()&&e)c.event.trigger(a,b,e,true);else if(!a.isDefaultPrevented()){var l;e=a.target;var k=f.replace(X,""),o=c.nodeName(e,"a")&&k===
+"click",x=c.event.special[k]||{};if((!x._default||x._default.call(d,a)===false)&&!o&&!(e&&e.nodeName&&c.noData[e.nodeName.toLowerCase()])){try{if(e[k]){if(l=e["on"+k])e["on"+k]=null;c.event.triggered=true;e[k]()}}catch(r){}if(l)e["on"+k]=l;c.event.triggered=false}}},handle:function(a){var b,d,e,f;d=[];var h=c.makeArray(arguments);a=h[0]=c.event.fix(a||E.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;if(!b){e=a.type.split(".");a.type=e.shift();d=e.slice(0).sort();e=RegExp("(^|\\.)"+
+d.join("\\.(?:.*\\.)?")+"(\\.|$)")}a.namespace=a.namespace||d.join(".");f=c.data(this,this.nodeType?"events":"__events__");if(typeof f==="function")f=f.events;d=(f||{})[a.type];if(f&&d){d=d.slice(0);f=0;for(var l=d.length;f<l;f++){var k=d[f];if(b||e.test(k.namespace)){a.handler=k.handler;a.data=k.data;a.handleObj=k;k=k.handler.apply(this,h);if(k!==B){a.result=k;if(k===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
+fix:function(a){if(a[c.expando])return a;var b=a;a=c.Event(b);for(var d=this.props.length,e;d;){e=this.props[--d];a[e]=b[e]}if(!a.target)a.target=a.srcElement||t;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=t.documentElement;d=t.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop||
+d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(a.which==null&&(a.charCode!=null||a.keyCode!=null))a.which=a.charCode!=null?a.charCode:a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==B)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,Y(a.origType,a.selector),c.extend({},a,{handler:Ka,guid:a.handler.guid}))},remove:function(a){c.event.remove(this,
+Y(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,d){if(c.isWindow(this))this.onbeforeunload=d},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};c.removeEvent=t.removeEventListener?function(a,b,d){a.removeEventListener&&a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent&&a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=a;this.type=a.type}else this.type=a;this.timeStamp=
+c.now();this[c.expando]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=ca;var a=this.originalEvent;if(a)if(a.preventDefault)a.preventDefault();else a.returnValue=false},stopPropagation:function(){this.isPropagationStopped=ca;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=ca;this.stopPropagation()},isDefaultPrevented:U,isPropagationStopped:U,isImmediatePropagationStopped:U};
+var va=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},wa=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?wa:va,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?wa:va)}}});if(!c.support.submitBubbles)c.event.special.submit={setup:function(){if(this.nodeName.toLowerCase()!==
+"form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length){a.liveFired=B;return la("submit",this,arguments)}});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13){a.liveFired=B;return la("submit",this,arguments)}})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};if(!c.support.changeBubbles){var V,
+xa=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(e){return e.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},Z=function(a,b){var d=a.target,e,f;if(!(!ia.test(d.nodeName)||d.readOnly)){e=c.data(d,"_change_data");f=xa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",f);if(!(e===B||f===e))if(e!=null||f){a.type="change";a.liveFired=
+B;return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:Z,beforedeactivate:Z,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return Z.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return Z.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,"_change_data",xa(a))}},setup:function(){if(this.type===
+"file")return false;for(var a in V)c.event.add(this,a+".specialChange",V[a]);return ia.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return ia.test(this.nodeName)}};V=c.event.special.change.filters;V.focus=V.beforeactivate}t.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(e){e=c.event.fix(e);e.type=b;return c.event.trigger(e,null,e.target)}c.event.special[b]={setup:function(){ua[b]++===0&&t.addEventListener(a,d,true)},teardown:function(){--ua[b]===
+0&&t.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,e,f){if(typeof d==="object"){for(var h in d)this[b](h,e,d[h],f);return this}if(c.isFunction(e)||e===false){f=e;e=B}var l=b==="one"?c.proxy(f,function(o){c(this).unbind(o,l);return f.apply(this,arguments)}):f;if(d==="unload"&&b!=="one")this.one(d,e,f);else{h=0;for(var k=this.length;h<k;h++)c.event.add(this[h],d,l,e)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&!a.preventDefault)for(var d in a)this.unbind(d,
+a[d]);else{d=0;for(var e=this.length;d<e;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,e){return this.live(b,d,e,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){var d=c.Event(a);d.preventDefault();d.stopPropagation();c.event.trigger(d,b,this[0]);return d.result}},toggle:function(a){for(var b=arguments,d=
+1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(e){var f=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,f+1);e.preventDefault();return b[f].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var ya={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,e,f,h){var l,k=0,o,x,r=h||this.selector;h=h?this:c(this.context);if(typeof d===
+"object"&&!d.preventDefault){for(l in d)h[b](l,e,d[l],r);return this}if(c.isFunction(e)){f=e;e=B}for(d=(d||"").split(" ");(l=d[k++])!=null;){o=X.exec(l);x="";if(o){x=o[0];l=l.replace(X,"")}if(l==="hover")d.push("mouseenter"+x,"mouseleave"+x);else{o=l;if(l==="focus"||l==="blur"){d.push(ya[l]+x);l+=x}else l=(ya[l]||l)+x;if(b==="live"){x=0;for(var A=h.length;x<A;x++)c.event.add(h[x],"live."+Y(l,r),{data:e,selector:r,handler:f,origType:l,origHandler:f,preType:o})}else h.unbind("live."+Y(l,r),f)}}return this}});
+c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){c.fn[b]=function(d,e){if(e==null){e=d;d=null}return arguments.length>0?this.bind(b,d,e):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});E.attachEvent&&!E.addEventListener&&c(E).bind("unload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});
+(function(){function a(g,i,n,m,p,q){p=0;for(var u=m.length;p<u;p++){var y=m[p];if(y){var F=false;for(y=y[g];y;){if(y.sizcache===n){F=m[y.sizset];break}if(y.nodeType===1&&!q){y.sizcache=n;y.sizset=p}if(y.nodeName.toLowerCase()===i){F=y;break}y=y[g]}m[p]=F}}}function b(g,i,n,m,p,q){p=0;for(var u=m.length;p<u;p++){var y=m[p];if(y){var F=false;for(y=y[g];y;){if(y.sizcache===n){F=m[y.sizset];break}if(y.nodeType===1){if(!q){y.sizcache=n;y.sizset=p}if(typeof i!=="string"){if(y===i){F=true;break}}else if(k.filter(i,
+[y]).length>0){F=y;break}}y=y[g]}m[p]=F}}}var d=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e=0,f=Object.prototype.toString,h=false,l=true;[0,0].sort(function(){l=false;return 0});var k=function(g,i,n,m){n=n||[];var p=i=i||t;if(i.nodeType!==1&&i.nodeType!==9)return[];if(!g||typeof g!=="string")return n;var q,u,y,F,M,N=true,O=k.isXML(i),D=[],R=g;do{d.exec("");if(q=d.exec(R)){R=q[3];D.push(q[1]);if(q[2]){F=q[3];
+break}}}while(q);if(D.length>1&&x.exec(g))if(D.length===2&&o.relative[D[0]])u=L(D[0]+D[1],i);else for(u=o.relative[D[0]]?[i]:k(D.shift(),i);D.length;){g=D.shift();if(o.relative[g])g+=D.shift();u=L(g,u)}else{if(!m&&D.length>1&&i.nodeType===9&&!O&&o.match.ID.test(D[0])&&!o.match.ID.test(D[D.length-1])){q=k.find(D.shift(),i,O);i=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]}if(i){q=m?{expr:D.pop(),set:C(m)}:k.find(D.pop(),D.length===1&&(D[0]==="~"||D[0]==="+")&&i.parentNode?i.parentNode:i,O);u=q.expr?k.filter(q.expr,
+q.set):q.set;if(D.length>0)y=C(u);else N=false;for(;D.length;){q=M=D.pop();if(o.relative[M])q=D.pop();else M="";if(q==null)q=i;o.relative[M](y,q,O)}}else y=[]}y||(y=u);y||k.error(M||g);if(f.call(y)==="[object Array]")if(N)if(i&&i.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&k.contains(i,y[g])))n.push(u[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&n.push(u[g]);else n.push.apply(n,y);else C(y,n);if(F){k(F,p,n,m);k.uniqueSort(n)}return n};k.uniqueSort=function(g){if(w){h=
+l;g.sort(w);if(h)for(var i=1;i<g.length;i++)g[i]===g[i-1]&&g.splice(i--,1)}return g};k.matches=function(g,i){return k(g,null,null,i)};k.matchesSelector=function(g,i){return k(i,null,null,[g]).length>0};k.find=function(g,i,n){var m;if(!g)return[];for(var p=0,q=o.order.length;p<q;p++){var u,y=o.order[p];if(u=o.leftMatch[y].exec(g)){var F=u[1];u.splice(1,1);if(F.substr(F.length-1)!=="\\"){u[1]=(u[1]||"").replace(/\\/g,"");m=o.find[y](u,i,n);if(m!=null){g=g.replace(o.match[y],"");break}}}}m||(m=i.getElementsByTagName("*"));
+return{set:m,expr:g}};k.filter=function(g,i,n,m){for(var p,q,u=g,y=[],F=i,M=i&&i[0]&&k.isXML(i[0]);g&&i.length;){for(var N in o.filter)if((p=o.leftMatch[N].exec(g))!=null&&p[2]){var O,D,R=o.filter[N];D=p[1];q=false;p.splice(1,1);if(D.substr(D.length-1)!=="\\"){if(F===y)y=[];if(o.preFilter[N])if(p=o.preFilter[N](p,F,n,y,m,M)){if(p===true)continue}else q=O=true;if(p)for(var j=0;(D=F[j])!=null;j++)if(D){O=R(D,p,j,F);var s=m^!!O;if(n&&O!=null)if(s)q=true;else F[j]=false;else if(s){y.push(D);q=true}}if(O!==
+B){n||(F=y);g=g.replace(o.match[N],"");if(!q)return[];break}}}if(g===u)if(q==null)k.error(g);else break;u=g}return F};k.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var o=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+\-]*)\))?/,
+POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}},relative:{"+":function(g,i){var n=typeof i==="string",m=n&&!/\W/.test(i);n=n&&!m;if(m)i=i.toLowerCase();m=0;for(var p=g.length,q;m<p;m++)if(q=g[m]){for(;(q=q.previousSibling)&&q.nodeType!==1;);g[m]=n||q&&q.nodeName.toLowerCase()===
+i?q||false:q===i}n&&k.filter(i,g,true)},">":function(g,i){var n,m=typeof i==="string",p=0,q=g.length;if(m&&!/\W/.test(i))for(i=i.toLowerCase();p<q;p++){if(n=g[p]){n=n.parentNode;g[p]=n.nodeName.toLowerCase()===i?n:false}}else{for(;p<q;p++)if(n=g[p])g[p]=m?n.parentNode:n.parentNode===i;m&&k.filter(i,g,true)}},"":function(g,i,n){var m,p=e++,q=b;if(typeof i==="string"&&!/\W/.test(i)){m=i=i.toLowerCase();q=a}q("parentNode",i,p,g,m,n)},"~":function(g,i,n){var m,p=e++,q=b;if(typeof i==="string"&&!/\W/.test(i)){m=
+i=i.toLowerCase();q=a}q("previousSibling",i,p,g,m,n)}},find:{ID:function(g,i,n){if(typeof i.getElementById!=="undefined"&&!n)return(g=i.getElementById(g[1]))&&g.parentNode?[g]:[]},NAME:function(g,i){if(typeof i.getElementsByName!=="undefined"){for(var n=[],m=i.getElementsByName(g[1]),p=0,q=m.length;p<q;p++)m[p].getAttribute("name")===g[1]&&n.push(m[p]);return n.length===0?null:n}},TAG:function(g,i){return i.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,i,n,m,p,q){g=" "+g[1].replace(/\\/g,
+"")+" ";if(q)return g;q=0;for(var u;(u=i[q])!=null;q++)if(u)if(p^(u.className&&(" "+u.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))n||m.push(u);else if(n)i[q]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},CHILD:function(g){if(g[1]==="nth"){var i=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=i[1]+(i[2]||1)-0;g[3]=i[3]-0}g[0]=e++;return g},ATTR:function(g,i,n,
+m,p,q){i=g[1].replace(/\\/g,"");if(!q&&o.attrMap[i])g[1]=o.attrMap[i];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,i,n,m,p){if(g[1]==="not")if((d.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,i);else{g=k.filter(g[3],i,n,true^p);n||m.push.apply(m,g);return false}else if(o.match.POS.test(g[0])||o.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===
+true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,i,n){return!!k(n[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===
+g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},setFilters:{first:function(g,i){return i===0},last:function(g,i,n,m){return i===m.length-1},even:function(g,i){return i%2===0},odd:function(g,i){return i%2===1},lt:function(g,i,n){return i<n[3]-0},gt:function(g,i,n){return i>n[3]-0},nth:function(g,i,n){return n[3]-
+0===i},eq:function(g,i,n){return n[3]-0===i}},filter:{PSEUDO:function(g,i,n,m){var p=i[1],q=o.filters[p];if(q)return q(g,n,i,m);else if(p==="contains")return(g.textContent||g.innerText||k.getText([g])||"").indexOf(i[3])>=0;else if(p==="not"){i=i[3];n=0;for(m=i.length;n<m;n++)if(i[n]===g)return false;return true}else k.error("Syntax error, unrecognized expression: "+p)},CHILD:function(g,i){var n=i[1],m=g;switch(n){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(n===
+"first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":n=i[2];var p=i[3];if(n===1&&p===0)return true;var q=i[0],u=g.parentNode;if(u&&(u.sizcache!==q||!g.nodeIndex)){var y=0;for(m=u.firstChild;m;m=m.nextSibling)if(m.nodeType===1)m.nodeIndex=++y;u.sizcache=q}m=g.nodeIndex-p;return n===0?m===0:m%n===0&&m/n>=0}},ID:function(g,i){return g.nodeType===1&&g.getAttribute("id")===i},TAG:function(g,i){return i==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===
+i},CLASS:function(g,i){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(i)>-1},ATTR:function(g,i){var n=i[1];n=o.attrHandle[n]?o.attrHandle[n](g):g[n]!=null?g[n]:g.getAttribute(n);var m=n+"",p=i[2],q=i[4];return n==null?p==="!=":p==="="?m===q:p==="*="?m.indexOf(q)>=0:p==="~="?(" "+m+" ").indexOf(q)>=0:!q?m&&n!==false:p==="!="?m!==q:p==="^="?m.indexOf(q)===0:p==="$="?m.substr(m.length-q.length)===q:p==="|="?m===q||m.substr(0,q.length+1)===q+"-":false},POS:function(g,i,n,m){var p=o.setFilters[i[2]];
+if(p)return p(g,n,i,m)}}},x=o.match.POS,r=function(g,i){return"\\"+(i-0+1)},A;for(A in o.match){o.match[A]=RegExp(o.match[A].source+/(?![^\[]*\])(?![^\(]*\))/.source);o.leftMatch[A]=RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[A].source.replace(/\\(\d+)/g,r))}var C=function(g,i){g=Array.prototype.slice.call(g,0);if(i){i.push.apply(i,g);return i}return g};try{Array.prototype.slice.call(t.documentElement.childNodes,0)}catch(J){C=function(g,i){var n=0,m=i||[];if(f.call(g)==="[object Array]")Array.prototype.push.apply(m,
+g);else if(typeof g.length==="number")for(var p=g.length;n<p;n++)m.push(g[n]);else for(;g[n];n++)m.push(g[n]);return m}}var w,I;if(t.documentElement.compareDocumentPosition)w=function(g,i){if(g===i){h=true;return 0}if(!g.compareDocumentPosition||!i.compareDocumentPosition)return g.compareDocumentPosition?-1:1;return g.compareDocumentPosition(i)&4?-1:1};else{w=function(g,i){var n,m,p=[],q=[];n=g.parentNode;m=i.parentNode;var u=n;if(g===i){h=true;return 0}else if(n===m)return I(g,i);else if(n){if(!m)return 1}else return-1;
+for(;u;){p.unshift(u);u=u.parentNode}for(u=m;u;){q.unshift(u);u=u.parentNode}n=p.length;m=q.length;for(u=0;u<n&&u<m;u++)if(p[u]!==q[u])return I(p[u],q[u]);return u===n?I(g,q[u],-1):I(p[u],i,1)};I=function(g,i,n){if(g===i)return n;for(g=g.nextSibling;g;){if(g===i)return-1;g=g.nextSibling}return 1}}k.getText=function(g){for(var i="",n,m=0;g[m];m++){n=g[m];if(n.nodeType===3||n.nodeType===4)i+=n.nodeValue;else if(n.nodeType!==8)i+=k.getText(n.childNodes)}return i};(function(){var g=t.createElement("div"),
+i="script"+(new Date).getTime(),n=t.documentElement;g.innerHTML="<a name='"+i+"'/>";n.insertBefore(g,n.firstChild);if(t.getElementById(i)){o.find.ID=function(m,p,q){if(typeof p.getElementById!=="undefined"&&!q)return(p=p.getElementById(m[1]))?p.id===m[1]||typeof p.getAttributeNode!=="undefined"&&p.getAttributeNode("id").nodeValue===m[1]?[p]:B:[]};o.filter.ID=function(m,p){var q=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&q&&q.nodeValue===p}}n.removeChild(g);
+n=g=null})();(function(){var g=t.createElement("div");g.appendChild(t.createComment(""));if(g.getElementsByTagName("*").length>0)o.find.TAG=function(i,n){var m=n.getElementsByTagName(i[1]);if(i[1]==="*"){for(var p=[],q=0;m[q];q++)m[q].nodeType===1&&p.push(m[q]);m=p}return m};g.innerHTML="<a href='#'></a>";if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")o.attrHandle.href=function(i){return i.getAttribute("href",2)};g=null})();t.querySelectorAll&&
+function(){var g=k,i=t.createElement("div");i.innerHTML="<p class='TEST'></p>";if(!(i.querySelectorAll&&i.querySelectorAll(".TEST").length===0)){k=function(m,p,q,u){p=p||t;m=m.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!u&&!k.isXML(p))if(p.nodeType===9)try{return C(p.querySelectorAll(m),q)}catch(y){}else if(p.nodeType===1&&p.nodeName.toLowerCase()!=="object"){var F=p.getAttribute("id"),M=F||"__sizzle__";F||p.setAttribute("id",M);try{return C(p.querySelectorAll("#"+M+" "+m),q)}catch(N){}finally{F||
+p.removeAttribute("id")}}return g(m,p,q,u)};for(var n in g)k[n]=g[n];i=null}}();(function(){var g=t.documentElement,i=g.matchesSelector||g.mozMatchesSelector||g.webkitMatchesSelector||g.msMatchesSelector,n=false;try{i.call(t.documentElement,"[test!='']:sizzle")}catch(m){n=true}if(i)k.matchesSelector=function(p,q){q=q.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(p))try{if(n||!o.match.PSEUDO.test(q)&&!/!=/.test(q))return i.call(p,q)}catch(u){}return k(q,null,null,[p]).length>0}})();(function(){var g=
+t.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){o.order.splice(1,0,"CLASS");o.find.CLASS=function(i,n,m){if(typeof n.getElementsByClassName!=="undefined"&&!m)return n.getElementsByClassName(i[1])};g=null}}})();k.contains=t.documentElement.contains?function(g,i){return g!==i&&(g.contains?g.contains(i):true)}:t.documentElement.compareDocumentPosition?
+function(g,i){return!!(g.compareDocumentPosition(i)&16)}:function(){return false};k.isXML=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false};var L=function(g,i){for(var n,m=[],p="",q=i.nodeType?[i]:i;n=o.match.PSEUDO.exec(g);){p+=n[0];g=g.replace(o.match.PSEUDO,"")}g=o.relative[g]?g+"*":g;n=0;for(var u=q.length;n<u;n++)k(g,q[n],m);return k.filter(p,m)};c.find=k;c.expr=k.selectors;c.expr[":"]=c.expr.filters;c.unique=k.uniqueSort;c.text=k.getText;c.isXMLDoc=k.isXML;
+c.contains=k.contains})();var Za=/Until$/,$a=/^(?:parents|prevUntil|prevAll)/,ab=/,/,Na=/^.[^:#\[\.,]*$/,bb=Array.prototype.slice,cb=c.expr.match.POS;c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,e=0,f=this.length;e<f;e++){d=b.length;c.find(a,this[e],b);if(e>0)for(var h=d;h<b.length;h++)for(var l=0;l<d;l++)if(b[l]===b[h]){b.splice(h--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,e=b.length;d<e;d++)if(c.contains(this,b[d]))return true})},
+not:function(a){return this.pushStack(ma(this,a,false),"not",a)},filter:function(a){return this.pushStack(ma(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,b){var d=[],e,f,h=this[0];if(c.isArray(a)){var l,k={},o=1;if(h&&a.length){e=0;for(f=a.length;e<f;e++){l=a[e];k[l]||(k[l]=c.expr.match.POS.test(l)?c(l,b||this.context):l)}for(;h&&h.ownerDocument&&h!==b;){for(l in k){e=k[l];if(e.jquery?e.index(h)>-1:c(h).is(e))d.push({selector:l,elem:h,level:o})}h=
+h.parentNode;o++}}return d}l=cb.test(a)?c(a,b||this.context):null;e=0;for(f=this.length;e<f;e++)for(h=this[e];h;)if(l?l.index(h)>-1:c.find.matchesSelector(h,a)){d.push(h);break}else{h=h.parentNode;if(!h||!h.ownerDocument||h===b)break}d=d.length>1?c.unique(d):d;return this.pushStack(d,"closest",a)},index:function(a){if(!a||typeof a==="string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var d=typeof a==="string"?c(a,b||this.context):
+c.makeArray(a),e=c.merge(this.get(),d);return this.pushStack(!d[0]||!d[0].parentNode||d[0].parentNode.nodeType===11||!e[0]||!e[0].parentNode||e[0].parentNode.nodeType===11?e:c.unique(e))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,
+2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,
+b){c.fn[a]=function(d,e){var f=c.map(this,b,d);Za.test(a)||(e=d);if(e&&typeof e==="string")f=c.filter(e,f);f=this.length>1?c.unique(f):f;if((this.length>1||ab.test(e))&&$a.test(a))f=f.reverse();return this.pushStack(f,a,bb.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return b.length===1?c.find.matchesSelector(b[0],a)?[b[0]]:[]:c.find.matches(a,b)},dir:function(a,b,d){var e=[];for(a=a[b];a&&a.nodeType!==9&&(d===B||a.nodeType!==1||!c(a).is(d));){a.nodeType===1&&
+e.push(a);a=a[b]}return e},nth:function(a,b,d){b=b||1;for(var e=0;a;a=a[d])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var za=/ jQuery\d+="(?:\d+|null)"/g,$=/^\s+/,Aa=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Ba=/<([\w:]+)/,db=/<tbody/i,eb=/<|&#?\w+;/,Ca=/<(?:script|object|embed|option|style)/i,Da=/checked\s*(?:[^=]|=\s*.checked.)/i,fb=/\=([^="'>\s]+\/)>/g,P={option:[1,
+"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};P.optgroup=P.option;P.tbody=P.tfoot=P.colgroup=P.caption=P.thead;P.th=P.td;if(!c.support.htmlSerialize)P._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=
+c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==B)return this.empty().append((this[0]&&this[0].ownerDocument||t).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},
+wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},
+prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,
+this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,e;(e=this[d])!=null;d++)if(!a||c.filter(a,[e]).length){if(!b&&e.nodeType===1){c.cleanData(e.getElementsByTagName("*"));c.cleanData([e])}e.parentNode&&e.parentNode.removeChild(e)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);
+return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,e=this.ownerDocument;if(!d){d=e.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(za,"").replace(fb,'="$1">').replace($,"")],e)[0]}else return this.cloneNode(true)});if(a===true){na(this,b);na(this.find("*"),b.find("*"))}return b},html:function(a){if(a===B)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(za,""):null;
+else if(typeof a==="string"&&!Ca.test(a)&&(c.support.leadingWhitespace||!$.test(a))&&!P[(Ba.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Aa,"<$1></$2>");try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(e){this.empty().append(a)}}else c.isFunction(a)?this.each(function(f){var h=c(this);h.html(a.call(this,f,h.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=
+c(this),e=d.html();d.replaceWith(a.call(this,b,e))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,true)},domManip:function(a,b,d){var e,f,h,l=a[0],k=[];if(!c.support.checkClone&&arguments.length===3&&typeof l==="string"&&Da.test(l))return this.each(function(){c(this).domManip(a,
+b,d,true)});if(c.isFunction(l))return this.each(function(x){var r=c(this);a[0]=l.call(this,x,b?r.html():B);r.domManip(a,b,d)});if(this[0]){e=l&&l.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:c.buildFragment(a,this,k);h=e.fragment;if(f=h.childNodes.length===1?h=h.firstChild:h.firstChild){b=b&&c.nodeName(f,"tr");f=0;for(var o=this.length;f<o;f++)d.call(b?c.nodeName(this[f],"table")?this[f].getElementsByTagName("tbody")[0]||this[f].appendChild(this[f].ownerDocument.createElement("tbody")):
+this[f]:this[f],f>0||e.cacheable||this.length>1?h.cloneNode(true):h)}k.length&&c.each(k,Oa)}return this}});c.buildFragment=function(a,b,d){var e,f,h;b=b&&b[0]?b[0].ownerDocument||b[0]:t;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===t&&!Ca.test(a[0])&&(c.support.checkClone||!Da.test(a[0]))){f=true;if(h=c.fragments[a[0]])if(h!==1)e=h}if(!e){e=b.createDocumentFragment();c.clean(a,b,e,d)}if(f)c.fragments[a[0]]=h?e:1;return{fragment:e,cacheable:f}};c.fragments={};c.each({appendTo:"append",
+prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var e=[];d=c(d);var f=this.length===1&&this[0].parentNode;if(f&&f.nodeType===11&&f.childNodes.length===1&&d.length===1){d[b](this[0]);return this}else{f=0;for(var h=d.length;f<h;f++){var l=(f>0?this.clone(true):this).get();c(d[f])[b](l);e=e.concat(l)}return this.pushStack(e,a,d.selector)}}});c.extend({clean:function(a,b,d,e){b=b||t;if(typeof b.createElement==="undefined")b=b.ownerDocument||
+b[0]&&b[0].ownerDocument||t;for(var f=[],h=0,l;(l=a[h])!=null;h++){if(typeof l==="number")l+="";if(l){if(typeof l==="string"&&!eb.test(l))l=b.createTextNode(l);else if(typeof l==="string"){l=l.replace(Aa,"<$1></$2>");var k=(Ba.exec(l)||["",""])[1].toLowerCase(),o=P[k]||P._default,x=o[0],r=b.createElement("div");for(r.innerHTML=o[1]+l+o[2];x--;)r=r.lastChild;if(!c.support.tbody){x=db.test(l);k=k==="table"&&!x?r.firstChild&&r.firstChild.childNodes:o[1]==="<table>"&&!x?r.childNodes:[];for(o=k.length-
+1;o>=0;--o)c.nodeName(k[o],"tbody")&&!k[o].childNodes.length&&k[o].parentNode.removeChild(k[o])}!c.support.leadingWhitespace&&$.test(l)&&r.insertBefore(b.createTextNode($.exec(l)[0]),r.firstChild);l=r.childNodes}if(l.nodeType)f.push(l);else f=c.merge(f,l)}}if(d)for(h=0;f[h];h++)if(e&&c.nodeName(f[h],"script")&&(!f[h].type||f[h].type.toLowerCase()==="text/javascript"))e.push(f[h].parentNode?f[h].parentNode.removeChild(f[h]):f[h]);else{f[h].nodeType===1&&f.splice.apply(f,[h+1,0].concat(c.makeArray(f[h].getElementsByTagName("script"))));
+d.appendChild(f[h])}return f},cleanData:function(a){for(var b,d,e=c.cache,f=c.event.special,h=c.support.deleteExpando,l=0,k;(k=a[l])!=null;l++)if(!(k.nodeName&&c.noData[k.nodeName.toLowerCase()]))if(d=k[c.expando]){if((b=e[d])&&b.events)for(var o in b.events)f[o]?c.event.remove(k,o):c.removeEvent(k,o,b.handle);if(h)delete k[c.expando];else k.removeAttribute&&k.removeAttribute(c.expando);delete e[d]}}});var Ea=/alpha\([^)]*\)/i,gb=/opacity=([^)]*)/,hb=/-([a-z])/ig,ib=/([A-Z])/g,Fa=/^-?\d+(?:px)?$/i,
+jb=/^-?\d/,kb={position:"absolute",visibility:"hidden",display:"block"},Pa=["Left","Right"],Qa=["Top","Bottom"],W,Ga,aa,lb=function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){if(arguments.length===2&&b===B)return this;return c.access(this,a,b,true,function(d,e,f){return f!==B?c.style(d,e,f):c.css(d,e)})};c.extend({cssHooks:{opacity:{get:function(a,b){if(b){var d=W(a,"opacity","opacity");return d===""?"1":d}else return a.style.opacity}}},cssNumber:{zIndex:true,fontWeight:true,opacity:true,
+zoom:true,lineHeight:true},cssProps:{"float":c.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,d,e){if(!(!a||a.nodeType===3||a.nodeType===8||!a.style)){var f,h=c.camelCase(b),l=a.style,k=c.cssHooks[h];b=c.cssProps[h]||h;if(d!==B){if(!(typeof d==="number"&&isNaN(d)||d==null)){if(typeof d==="number"&&!c.cssNumber[h])d+="px";if(!k||!("set"in k)||(d=k.set(a,d))!==B)try{l[b]=d}catch(o){}}}else{if(k&&"get"in k&&(f=k.get(a,false,e))!==B)return f;return l[b]}}},css:function(a,b,d){var e,f=c.camelCase(b),
+h=c.cssHooks[f];b=c.cssProps[f]||f;if(h&&"get"in h&&(e=h.get(a,true,d))!==B)return e;else if(W)return W(a,b,f)},swap:function(a,b,d){var e={},f;for(f in b){e[f]=a.style[f];a.style[f]=b[f]}d.call(a);for(f in b)a.style[f]=e[f]},camelCase:function(a){return a.replace(hb,lb)}});c.curCSS=c.css;c.each(["height","width"],function(a,b){c.cssHooks[b]={get:function(d,e,f){var h;if(e){if(d.offsetWidth!==0)h=oa(d,b,f);else c.swap(d,kb,function(){h=oa(d,b,f)});if(h<=0){h=W(d,b,b);if(h==="0px"&&aa)h=aa(d,b,b);
+if(h!=null)return h===""||h==="auto"?"0px":h}if(h<0||h==null){h=d.style[b];return h===""||h==="auto"?"0px":h}return typeof h==="string"?h:h+"px"}},set:function(d,e){if(Fa.test(e)){e=parseFloat(e);if(e>=0)return e+"px"}else return e}}});if(!c.support.opacity)c.cssHooks.opacity={get:function(a,b){return gb.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var d=a.style;d.zoom=1;var e=c.isNaN(b)?"":"alpha(opacity="+b*100+")",f=
+d.filter||"";d.filter=Ea.test(f)?f.replace(Ea,e):d.filter+" "+e}};if(t.defaultView&&t.defaultView.getComputedStyle)Ga=function(a,b,d){var e;d=d.replace(ib,"-$1").toLowerCase();if(!(b=a.ownerDocument.defaultView))return B;if(b=b.getComputedStyle(a,null)){e=b.getPropertyValue(d);if(e===""&&!c.contains(a.ownerDocument.documentElement,a))e=c.style(a,d)}return e};if(t.documentElement.currentStyle)aa=function(a,b){var d,e,f=a.currentStyle&&a.currentStyle[b],h=a.style;if(!Fa.test(f)&&jb.test(f)){d=h.left;
+e=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;h.left=b==="fontSize"?"1em":f||0;f=h.pixelLeft+"px";h.left=d;a.runtimeStyle.left=e}return f===""?"auto":f};W=Ga||aa;if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=a.offsetHeight;return a.offsetWidth===0&&b===0||!c.support.reliableHiddenOffsets&&(a.style.display||c.css(a,"display"))==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var mb=c.now(),nb=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
+ob=/^(?:select|textarea)/i,pb=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,qb=/^(?:GET|HEAD)$/,Ra=/\[\]$/,T=/\=\?(&|$)/,ja=/\?/,rb=/([?&])_=[^&]*/,sb=/^(\w+:)?\/\/([^\/?#]+)/,tb=/%20/g,ub=/#.*$/,Ha=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!=="string"&&Ha)return Ha.apply(this,arguments);else if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var f=a.slice(e,a.length);a=a.slice(0,e)}e="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b===
+"object"){b=c.param(b,c.ajaxSettings.traditional);e="POST"}var h=this;c.ajax({url:a,type:e,dataType:"html",data:b,complete:function(l,k){if(k==="success"||k==="notmodified")h.html(f?c("<div>").append(l.responseText.replace(nb,"")).find(f):l.responseText);d&&h.each(d,[l.responseText,k,l])}});return this},serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&
+!this.disabled&&(this.checked||ob.test(this.nodeName)||pb.test(this.type))}).map(function(a,b){var d=c(this).val();return d==null?null:c.isArray(d)?c.map(d,function(e){return{name:b.name,value:e}}):{name:b.name,value:d}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:e})},
+getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:e})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return new E.XMLHttpRequest},accepts:{xml:"application/xml, text/xml",html:"text/html",
+script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},ajax:function(a){var b=c.extend(true,{},c.ajaxSettings,a),d,e,f,h=b.type.toUpperCase(),l=qb.test(h);b.url=b.url.replace(ub,"");b.context=a&&a.context!=null?a.context:b;if(b.data&&b.processData&&typeof b.data!=="string")b.data=c.param(b.data,b.traditional);if(b.dataType==="jsonp"){if(h==="GET")T.test(b.url)||(b.url+=(ja.test(b.url)?"&":"?")+(b.jsonp||"callback")+"=?");else if(!b.data||
+!T.test(b.data))b.data=(b.data?b.data+"&":"")+(b.jsonp||"callback")+"=?";b.dataType="json"}if(b.dataType==="json"&&(b.data&&T.test(b.data)||T.test(b.url))){d=b.jsonpCallback||"jsonp"+mb++;if(b.data)b.data=(b.data+"").replace(T,"="+d+"$1");b.url=b.url.replace(T,"="+d+"$1");b.dataType="script";var k=E[d];E[d]=function(m){if(c.isFunction(k))k(m);else{E[d]=B;try{delete E[d]}catch(p){}}f=m;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);r&&r.removeChild(A)}}if(b.dataType==="script"&&b.cache===null)b.cache=
+false;if(b.cache===false&&l){var o=c.now(),x=b.url.replace(rb,"$1_="+o);b.url=x+(x===b.url?(ja.test(b.url)?"&":"?")+"_="+o:"")}if(b.data&&l)b.url+=(ja.test(b.url)?"&":"?")+b.data;b.global&&c.active++===0&&c.event.trigger("ajaxStart");o=(o=sb.exec(b.url))&&(o[1]&&o[1].toLowerCase()!==location.protocol||o[2].toLowerCase()!==location.host);if(b.dataType==="script"&&h==="GET"&&o){var r=t.getElementsByTagName("head")[0]||t.documentElement,A=t.createElement("script");if(b.scriptCharset)A.charset=b.scriptCharset;
+A.src=b.url;if(!d){var C=false;A.onload=A.onreadystatechange=function(){if(!C&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){C=true;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);A.onload=A.onreadystatechange=null;r&&A.parentNode&&r.removeChild(A)}}}r.insertBefore(A,r.firstChild);return B}var J=false,w=b.xhr();if(w){b.username?w.open(h,b.url,b.async,b.username,b.password):w.open(h,b.url,b.async);try{if(b.data!=null&&!l||a&&a.contentType)w.setRequestHeader("Content-Type",
+b.contentType);if(b.ifModified){c.lastModified[b.url]&&w.setRequestHeader("If-Modified-Since",c.lastModified[b.url]);c.etag[b.url]&&w.setRequestHeader("If-None-Match",c.etag[b.url])}o||w.setRequestHeader("X-Requested-With","XMLHttpRequest");w.setRequestHeader("Accept",b.dataType&&b.accepts[b.dataType]?b.accepts[b.dataType]+", */*; q=0.01":b.accepts._default)}catch(I){}if(b.beforeSend&&b.beforeSend.call(b.context,w,b)===false){b.global&&c.active--===1&&c.event.trigger("ajaxStop");w.abort();return false}b.global&&
+c.triggerGlobal(b,"ajaxSend",[w,b]);var L=w.onreadystatechange=function(m){if(!w||w.readyState===0||m==="abort"){J||c.handleComplete(b,w,e,f);J=true;if(w)w.onreadystatechange=c.noop}else if(!J&&w&&(w.readyState===4||m==="timeout")){J=true;w.onreadystatechange=c.noop;e=m==="timeout"?"timeout":!c.httpSuccess(w)?"error":b.ifModified&&c.httpNotModified(w,b.url)?"notmodified":"success";var p;if(e==="success")try{f=c.httpData(w,b.dataType,b)}catch(q){e="parsererror";p=q}if(e==="success"||e==="notmodified")d||
+c.handleSuccess(b,w,e,f);else c.handleError(b,w,e,p);d||c.handleComplete(b,w,e,f);m==="timeout"&&w.abort();if(b.async)w=null}};try{var g=w.abort;w.abort=function(){w&&Function.prototype.call.call(g,w);L("abort")}}catch(i){}b.async&&b.timeout>0&&setTimeout(function(){w&&!J&&L("timeout")},b.timeout);try{w.send(l||b.data==null?null:b.data)}catch(n){c.handleError(b,w,null,n);c.handleComplete(b,w,e,f)}b.async||L();return w}},param:function(a,b){var d=[],e=function(h,l){l=c.isFunction(l)?l():l;d[d.length]=
+encodeURIComponent(h)+"="+encodeURIComponent(l)};if(b===B)b=c.ajaxSettings.traditional;if(c.isArray(a)||a.jquery)c.each(a,function(){e(this.name,this.value)});else for(var f in a)da(f,a[f],b,e);return d.join("&").replace(tb,"+")}});c.extend({active:0,lastModified:{},etag:{},handleError:function(a,b,d,e){a.error&&a.error.call(a.context,b,d,e);a.global&&c.triggerGlobal(a,"ajaxError",[b,a,e])},handleSuccess:function(a,b,d,e){a.success&&a.success.call(a.context,e,d,b);a.global&&c.triggerGlobal(a,"ajaxSuccess",
+[b,a])},handleComplete:function(a,b,d){a.complete&&a.complete.call(a.context,b,d);a.global&&c.triggerGlobal(a,"ajaxComplete",[b,a]);a.global&&c.active--===1&&c.event.trigger("ajaxStop")},triggerGlobal:function(a,b,d){(a.context&&a.context.url==null?c(a.context):c.event).trigger(b,d)},httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===1223}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),
+e=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(e)c.etag[b]=e;return a.status===304},httpData:function(a,b,d){var e=a.getResponseHeader("content-type")||"",f=b==="xml"||!b&&e.indexOf("xml")>=0;a=f?a.responseXML:a.responseText;f&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b==="json"||!b&&e.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&e.indexOf("javascript")>=0)c.globalEval(a);return a}});
+if(E.ActiveXObject)c.ajaxSettings.xhr=function(){if(E.location.protocol!=="file:")try{return new E.XMLHttpRequest}catch(a){}try{return new E.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}};c.support.ajax=!!c.ajaxSettings.xhr();var ea={},vb=/^(?:toggle|show|hide)$/,wb=/^([+\-]=)?([\d+.\-]+)(.*)$/,ba,pa=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b,d){if(a||a===0)return this.animate(S("show",
+3),a,b,d);else{d=0;for(var e=this.length;d<e;d++){a=this[d];b=a.style.display;if(!c.data(a,"olddisplay")&&b==="none")b=a.style.display="";b===""&&c.css(a,"display")==="none"&&c.data(a,"olddisplay",qa(a.nodeName))}for(d=0;d<e;d++){a=this[d];b=a.style.display;if(b===""||b==="none")a.style.display=c.data(a,"olddisplay")||""}return this}},hide:function(a,b,d){if(a||a===0)return this.animate(S("hide",3),a,b,d);else{a=0;for(b=this.length;a<b;a++){d=c.css(this[a],"display");d!=="none"&&c.data(this[a],"olddisplay",
+d)}for(a=0;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b,d){var e=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||e?this.each(function(){var f=e?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(S("toggle",3),a,b,d);return this},fadeTo:function(a,b,d,e){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d,e)},animate:function(a,b,d,e){var f=c.speed(b,
+d,e);if(c.isEmptyObject(a))return this.each(f.complete);return this[f.queue===false?"each":"queue"](function(){var h=c.extend({},f),l,k=this.nodeType===1,o=k&&c(this).is(":hidden"),x=this;for(l in a){var r=c.camelCase(l);if(l!==r){a[r]=a[l];delete a[l];l=r}if(a[l]==="hide"&&o||a[l]==="show"&&!o)return h.complete.call(this);if(k&&(l==="height"||l==="width")){h.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(c.css(this,"display")==="inline"&&c.css(this,"float")==="none")if(c.support.inlineBlockNeedsLayout)if(qa(this.nodeName)===
+"inline")this.style.display="inline-block";else{this.style.display="inline";this.style.zoom=1}else this.style.display="inline-block"}if(c.isArray(a[l])){(h.specialEasing=h.specialEasing||{})[l]=a[l][1];a[l]=a[l][0]}}if(h.overflow!=null)this.style.overflow="hidden";h.curAnim=c.extend({},a);c.each(a,function(A,C){var J=new c.fx(x,h,A);if(vb.test(C))J[C==="toggle"?o?"show":"hide":C](a);else{var w=wb.exec(C),I=J.cur()||0;if(w){var L=parseFloat(w[2]),g=w[3]||"px";if(g!=="px"){c.style(x,A,(L||1)+g);I=(L||
+1)/J.cur()*I;c.style(x,A,I+g)}if(w[1])L=(w[1]==="-="?-1:1)*L+I;J.custom(I,L,g)}else J.custom(I,C,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);this.each(function(){for(var e=d.length-1;e>=0;e--)if(d[e].elem===this){b&&d[e](true);d.splice(e,1)}});b||this.dequeue();return this}});c.each({slideDown:S("show",1),slideUp:S("hide",1),slideToggle:S("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){c.fn[a]=function(d,e,f){return this.animate(b,
+d,e,f)}});c.extend({speed:function(a,b,d){var e=a&&typeof a==="object"?c.extend({},a):{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};e.duration=c.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in c.fx.speeds?c.fx.speeds[e.duration]:c.fx.speeds._default;e.old=e.complete;e.complete=function(){e.queue!==false&&c(this).dequeue();c.isFunction(e.old)&&e.old.call(this)};return e},easing:{linear:function(a,b,d,e){return d+e*a},swing:function(a,b,d,e){return(-Math.cos(a*
+Math.PI)/2+0.5)*e+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||c.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a=parseFloat(c.css(this.elem,this.prop));return a&&a>-1E4?a:0},custom:function(a,b,d){function e(l){return f.step(l)}
+var f=this,h=c.fx;this.startTime=c.now();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;this.pos=this.state=0;e.elem=this.elem;if(e()&&c.timers.push(e)&&!ba)ba=setInterval(h.tick,h.interval)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;
+this.custom(this.cur(),0)},step:function(a){var b=c.now(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var e in this.options.curAnim)if(this.options.curAnim[e]!==true)d=false;if(d){if(this.options.overflow!=null&&!c.support.shrinkWrapBlocks){var f=this.elem,h=this.options;c.each(["","X","Y"],function(k,o){f.style["overflow"+o]=h.overflow[k]})}this.options.hide&&c(this.elem).hide();if(this.options.hide||
+this.options.show)for(var l in this.options.curAnim)c.style(this.elem,l,this.options.orig[l]);this.options.complete.call(this.elem)}return false}else{a=b-this.startTime;this.state=a/this.options.duration;b=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||b](this.state,a,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=
+c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||c.fx.stop()},interval:13,stop:function(){clearInterval(ba);ba=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===
+b.elem}).length};var xb=/^t(?:able|d|h)$/i,Ia=/^(?:body|html)$/i;c.fn.offset="getBoundingClientRect"in t.documentElement?function(a){var b=this[0],d;if(a)return this.each(function(l){c.offset.setOffset(this,a,l)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);try{d=b.getBoundingClientRect()}catch(e){}var f=b.ownerDocument,h=f.documentElement;if(!d||!c.contains(h,b))return d||{top:0,left:0};b=f.body;f=fa(f);return{top:d.top+(f.pageYOffset||c.support.boxModel&&
+h.scrollTop||b.scrollTop)-(h.clientTop||b.clientTop||0),left:d.left+(f.pageXOffset||c.support.boxModel&&h.scrollLeft||b.scrollLeft)-(h.clientLeft||b.clientLeft||0)}}:function(a){var b=this[0];if(a)return this.each(function(x){c.offset.setOffset(this,a,x)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d,e=b.offsetParent,f=b.ownerDocument,h=f.documentElement,l=f.body;d=(f=f.defaultView)?f.getComputedStyle(b,null):b.currentStyle;
+for(var k=b.offsetTop,o=b.offsetLeft;(b=b.parentNode)&&b!==l&&b!==h;){if(c.offset.supportsFixedPosition&&d.position==="fixed")break;d=f?f.getComputedStyle(b,null):b.currentStyle;k-=b.scrollTop;o-=b.scrollLeft;if(b===e){k+=b.offsetTop;o+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&xb.test(b.nodeName))){k+=parseFloat(d.borderTopWidth)||0;o+=parseFloat(d.borderLeftWidth)||0}e=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&d.overflow!=="visible"){k+=
+parseFloat(d.borderTopWidth)||0;o+=parseFloat(d.borderLeftWidth)||0}d=d}if(d.position==="relative"||d.position==="static"){k+=l.offsetTop;o+=l.offsetLeft}if(c.offset.supportsFixedPosition&&d.position==="fixed"){k+=Math.max(h.scrollTop,l.scrollTop);o+=Math.max(h.scrollLeft,l.scrollLeft)}return{top:k,left:o}};c.offset={initialize:function(){var a=t.body,b=t.createElement("div"),d,e,f,h=parseFloat(c.css(a,"marginTop"))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",
+height:"1px",visibility:"hidden"});b.innerHTML="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";a.insertBefore(b,a.firstChild);d=b.firstChild;e=d.firstChild;f=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=e.offsetTop!==5;this.doesAddBorderForTableAndCells=
+f.offsetTop===5;e.style.position="fixed";e.style.top="20px";this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15;e.style.position=e.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==h;a.removeChild(b);c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.css(a,
+"marginTop"))||0;d+=parseFloat(c.css(a,"marginLeft"))||0}return{top:b,left:d}},setOffset:function(a,b,d){var e=c.css(a,"position");if(e==="static")a.style.position="relative";var f=c(a),h=f.offset(),l=c.css(a,"top"),k=c.css(a,"left"),o=e==="absolute"&&c.inArray("auto",[l,k])>-1;e={};var x={};if(o)x=f.position();l=o?x.top:parseInt(l,10)||0;k=o?x.left:parseInt(k,10)||0;if(c.isFunction(b))b=b.call(a,d,h);if(b.top!=null)e.top=b.top-h.top+l;if(b.left!=null)e.left=b.left-h.left+k;"using"in b?b.using.call(a,
+e):f.css(e)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),e=Ia.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.css(a,"marginTop"))||0;d.left-=parseFloat(c.css(a,"marginLeft"))||0;e.top+=parseFloat(c.css(b[0],"borderTopWidth"))||0;e.left+=parseFloat(c.css(b[0],"borderLeftWidth"))||0;return{top:d.top-e.top,left:d.left-e.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||t.body;a&&!Ia.test(a.nodeName)&&
+c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(e){var f=this[0],h;if(!f)return null;if(e!==B)return this.each(function(){if(h=fa(this))h.scrollTo(!a?e:c(h).scrollLeft(),a?e:c(h).scrollTop());else this[d]=e});else return(h=fa(f))?"pageXOffset"in h?h[a?"pageYOffset":"pageXOffset"]:c.support.boxModel&&h.document.documentElement[d]||h.document.body[d]:f[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();
+c.fn["inner"+b]=function(){return this[0]?parseFloat(c.css(this[0],d,"padding")):null};c.fn["outer"+b]=function(e){return this[0]?parseFloat(c.css(this[0],d,e?"margin":"border")):null};c.fn[d]=function(e){var f=this[0];if(!f)return e==null?null:this;if(c.isFunction(e))return this.each(function(l){var k=c(this);k[d](e.call(this,l,k[d]()))});if(c.isWindow(f))return f.document.compatMode==="CSS1Compat"&&f.document.documentElement["client"+b]||f.document.body["client"+b];else if(f.nodeType===9)return Math.max(f.documentElement["client"+
+b],f.body["scroll"+b],f.documentElement["scroll"+b],f.body["offset"+b],f.documentElement["offset"+b]);else if(e===B){f=c.css(f,d);var h=parseFloat(f);return c.isNaN(h)?f:h}else return this.css(d,typeof e==="string"?e:e+"px")}})})(window);
diff --git a/examples-jbake/assets/javascript/jquery.blockUI.js b/examples-jbake/assets/javascript/jquery.blockUI.js
new file mode 100644 (file)
index 0000000..502a2e8
--- /dev/null
@@ -0,0 +1,490 @@
+\feff/*!
+ * jQuery blockUI plugin
+ * Version 2.37 (29-JAN-2011)
+ * @requires jQuery v1.2.3 or later
+ *
+ * Examples at: http://malsup.com/jquery/block/
+ * Copyright (c) 2007-2010 M. Alsup
+ * Dual licensed under the MIT and GPL licenses:
+ * http://www.opensource.org/licenses/mit-license.php
+ * http://www.gnu.org/licenses/gpl.html
+ *
+ * Thanks to Amir-Hossein Sobhi for some excellent contributions!
+ */
+
+;(function($) {
+
+if (/1\.(0|1|2)\.(0|1|2)/.test($.fn.jquery) || /^1.1/.test($.fn.jquery)) {
+       alert('blockUI requires jQuery v1.2.3 or later!  You are using v' + $.fn.jquery);
+       return;
+}
+
+$.fn._fadeIn = $.fn.fadeIn;
+
+var noOp = function() {};
+
+// this bit is to ensure we don't call setExpression when we shouldn't (with extra muscle to handle
+// retarded userAgent strings on Vista)
+var mode = document.documentMode || 0;
+var setExpr = $.browser.msie && (($.browser.version < 8 && !mode) || mode < 8);
+var ie6 = $.browser.msie && /MSIE 6.0/.test(navigator.userAgent) && !mode;
+
+// global $ methods for blocking/unblocking the entire page
+$.blockUI   = function(opts) { install(window, opts); };
+$.unblockUI = function(opts) { remove(window, opts); };
+
+// convenience method for quick growl-like notifications  (http://www.google.com/search?q=growl)
+$.growlUI = function(title, message, timeout, onClose) {
+       var $m = $('<div class="growlUI"></div>');
+       if (title) $m.append('<h1>'+title+'</h1>');
+       if (message) $m.append('<h2>'+message+'</h2>');
+       if (timeout == undefined) timeout = 3000;
+       $.blockUI({
+               message: $m, fadeIn: 700, fadeOut: 1000, centerY: false,
+               timeout: timeout, showOverlay: false,
+               onUnblock: onClose, 
+               css: $.blockUI.defaults.growlCSS
+       });
+};
+
+// plugin method for blocking element content
+$.fn.block = function(opts) {
+       return this.unblock({ fadeOut: 0 }).each(function() {
+               if ($.css(this,'position') == 'static')
+                       this.style.position = 'relative';
+               if ($.browser.msie)
+                       this.style.zoom = 1; // force 'hasLayout'
+               install(this, opts);
+       });
+};
+
+// plugin method for unblocking element content
+$.fn.unblock = function(opts) {
+       return this.each(function() {
+               remove(this, opts);
+       });
+};
+
+$.blockUI.version = 2.37; // 2nd generation blocking at no extra cost!
+
+// override these in your code to change the default behavior and style
+$.blockUI.defaults = {
+       // message displayed when blocking (use null for no message)
+       message:  '<h1>Please wait...</h1>',
+
+       title: null,      // title string; only used when theme == true
+       draggable: true,  // only used when theme == true (requires jquery-ui.js to be loaded)
+       
+       theme: false, // set to true to use with jQuery UI themes
+       
+       // styles for the message when blocking; if you wish to disable
+       // these and use an external stylesheet then do this in your code:
+       // $.blockUI.defaults.css = {};
+       css: {
+               padding:        0,
+               margin:         0,
+               width:          '30%',
+               top:            '40%',
+               left:           '35%',
+               textAlign:      'center',
+               color:          '#000',
+               border:         '3px solid #aaa',
+               backgroundColor:'#fff',
+               cursor:         'wait'
+       },
+       
+       // minimal style set used when themes are used
+       themedCSS: {
+               width:  '30%',
+               top:    '40%',
+               left:   '35%'
+       },
+
+       // styles for the overlay
+       overlayCSS:  {
+               backgroundColor: '#000',
+               opacity:                 0.6,
+               cursor:                  'wait'
+       },
+
+       // styles applied when using $.growlUI
+       growlCSS: {
+               width:          '350px',
+               top:            '10px',
+               left:           '',
+               right:          '10px',
+               border:         'none',
+               padding:        '5px',
+               opacity:        0.6,
+               cursor:         'default',
+               color:          '#fff',
+               backgroundColor: '#000',
+               '-webkit-border-radius': '10px',
+               '-moz-border-radius':    '10px',
+               'border-radius':                 '10px'
+       },
+       
+       // IE issues: 'about:blank' fails on HTTPS and javascript:false is s-l-o-w
+       // (hat tip to Jorge H. N. de Vasconcelos)
+       iframeSrc: /^https/i.test(window.location.href || '') ? 'javascript:false' : 'about:blank',
+
+       // force usage of iframe in non-IE browsers (handy for blocking applets)
+       forceIframe: false,
+
+       // z-index for the blocking overlay
+       baseZ: 1000,
+
+       // set these to true to have the message automatically centered
+       centerX: true, // <-- only effects element blocking (page block controlled via css above)
+       centerY: true,
+
+       // allow body element to be stetched in ie6; this makes blocking look better
+       // on "short" pages.  disable if you wish to prevent changes to the body height
+       allowBodyStretch: true,
+
+       // enable if you want key and mouse events to be disabled for content that is blocked
+       bindEvents: true,
+
+       // be default blockUI will supress tab navigation from leaving blocking content
+       // (if bindEvents is true)
+       constrainTabKey: true,
+
+       // fadeIn time in millis; set to 0 to disable fadeIn on block
+       fadeIn:  200,
+
+       // fadeOut time in millis; set to 0 to disable fadeOut on unblock
+       fadeOut:  400,
+
+       // time in millis to wait before auto-unblocking; set to 0 to disable auto-unblock
+       timeout: 0,
+
+       // disable if you don't want to show the overlay
+       showOverlay: true,
+
+       // if true, focus will be placed in the first available input field when
+       // page blocking
+       focusInput: true,
+
+       // suppresses the use of overlay styles on FF/Linux (due to performance issues with opacity)
+       applyPlatformOpacityRules: true,
+       
+       // callback method invoked when fadeIn has completed and blocking message is visible
+       onBlock: null,
+
+       // callback method invoked when unblocking has completed; the callback is
+       // passed the element that has been unblocked (which is the window object for page
+       // blocks) and the options that were passed to the unblock call:
+       //       onUnblock(element, options)
+       onUnblock: null,
+
+       // don't ask; if you really must know: http://groups.google.com/group/jquery-en/browse_thread/thread/36640a8730503595/2f6a79a77a78e493#2f6a79a77a78e493
+       quirksmodeOffsetHack: 4,
+
+       // class name of the message block
+       blockMsgClass: 'blockMsg'
+};
+
+// private data and functions follow...
+
+var pageBlock = null;
+var pageBlockEls = [];
+
+function install(el, opts) {
+       var full = (el == window);
+       var msg = opts && opts.message !== undefined ? opts.message : undefined;
+       opts = $.extend({}, $.blockUI.defaults, opts || {});
+       opts.overlayCSS = $.extend({}, $.blockUI.defaults.overlayCSS, opts.overlayCSS || {});
+       var css = $.extend({}, $.blockUI.defaults.css, opts.css || {});
+       var themedCSS = $.extend({}, $.blockUI.defaults.themedCSS, opts.themedCSS || {});
+       msg = msg === undefined ? opts.message : msg;
+
+       // remove the current block (if there is one)
+       if (full && pageBlock)
+               remove(window, {fadeOut:0});
+
+       // if an existing element is being used as the blocking content then we capture
+       // its current place in the DOM (and current display style) so we can restore
+       // it when we unblock
+       if (msg && typeof msg != 'string' && (msg.parentNode || msg.jquery)) {
+               var node = msg.jquery ? msg[0] : msg;
+               var data = {};
+               $(el).data('blockUI.history', data);
+               data.el = node;
+               data.parent = node.parentNode;
+               data.display = node.style.display;
+               data.position = node.style.position;
+               if (data.parent)
+                       data.parent.removeChild(node);
+       }
+
+       var z = opts.baseZ;
+
+       // blockUI uses 3 layers for blocking, for simplicity they are all used on every platform;
+       // layer1 is the iframe layer which is used to supress bleed through of underlying content
+       // layer2 is the overlay layer which has opacity and a wait cursor (by default)
+       // layer3 is the message content that is displayed while blocking
+
+       var lyr1 = ($.browser.msie || opts.forceIframe) 
+               ? $('<iframe class="blockUI" style="z-index:'+ (z++) +';display:none;border:none;margin:0;padding:0;position:absolute;width:100%;height:100%;top:0;left:0" src="'+opts.iframeSrc+'"></iframe>')
+               : $('<div class="blockUI" style="display:none"></div>');
+       var lyr2 = $('<div class="blockUI blockOverlay" style="z-index:'+ (z++) +';display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0"></div>');
+       
+       var lyr3, s;
+       if (opts.theme && full) {
+               s = '<div class="blockUI ' + opts.blockMsgClass + ' blockPage ui-dialog ui-widget ui-corner-all" style="z-index:'+z+';display:none;position:fixed">' +
+                               '<div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">'+(opts.title || '&nbsp;')+'</div>' +
+                               '<div class="ui-widget-content ui-dialog-content"></div>' +
+                       '</div>';
+       }
+       else if (opts.theme) {
+               s = '<div class="blockUI ' + opts.blockMsgClass + ' blockElement ui-dialog ui-widget ui-corner-all" style="z-index:'+z+';display:none;position:absolute">' +
+                               '<div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">'+(opts.title || '&nbsp;')+'</div>' +
+                               '<div class="ui-widget-content ui-dialog-content"></div>' +
+                       '</div>';
+       }
+       else if (full) {
+               s = '<div class="blockUI ' + opts.blockMsgClass + ' blockPage" style="z-index:'+z+';display:none;position:fixed"></div>';
+       }                       
+       else {
+               s = '<div class="blockUI ' + opts.blockMsgClass + ' blockElement" style="z-index:'+z+';display:none;position:absolute"></div>';
+       }
+       lyr3 = $(s);
+
+       // if we have a message, style it
+       if (msg) {
+               if (opts.theme) {
+                       lyr3.css(themedCSS);
+                       lyr3.addClass('ui-widget-content');
+               }
+               else 
+                       lyr3.css(css);
+       }
+
+       // style the overlay
+       if (!opts.applyPlatformOpacityRules || !($.browser.mozilla && /Linux/.test(navigator.platform)))
+               lyr2.css(opts.overlayCSS);
+       lyr2.css('position', full ? 'fixed' : 'absolute');
+
+       // make iframe layer transparent in IE
+       if ($.browser.msie || opts.forceIframe)
+               lyr1.css('opacity',0.0);
+
+       //$([lyr1[0],lyr2[0],lyr3[0]]).appendTo(full ? 'body' : el);
+       var layers = [lyr1,lyr2,lyr3], $par = full ? $('body') : $(el);
+       $.each(layers, function() {
+               this.appendTo($par);
+       });
+       
+       if (opts.theme && opts.draggable && $.fn.draggable) {
+               lyr3.draggable({
+                       handle: '.ui-dialog-titlebar',
+                       cancel: 'li'
+               });
+       }
+
+       // ie7 must use absolute positioning in quirks mode and to account for activex issues (when scrolling)
+       var expr = setExpr && (!$.boxModel || $('object,embed', full ? null : el).length > 0);
+       if (ie6 || expr) {
+               // give body 100% height
+               if (full && opts.allowBodyStretch && $.boxModel)
+                       $('html,body').css('height','100%');
+
+               // fix ie6 issue when blocked element has a border width
+               if ((ie6 || !$.boxModel) && !full) {
+                       var t = sz(el,'borderTopWidth'), l = sz(el,'borderLeftWidth');
+                       var fixT = t ? '(0 - '+t+')' : 0;
+                       var fixL = l ? '(0 - '+l+')' : 0;
+               }
+
+               // simulate fixed position
+               $.each([lyr1,lyr2,lyr3], function(i,o) {
+                       var s = o[0].style;
+                       s.position = 'absolute';
+                       if (i < 2) {
+                               full ? s.setExpression('height','Math.max(document.body.scrollHeight, document.body.offsetHeight) - (jQuery.boxModel?0:'+opts.quirksmodeOffsetHack+') + "px"')
+                                        : s.setExpression('height','this.parentNode.offsetHeight + "px"');
+                               full ? s.setExpression('width','jQuery.boxModel && document.documentElement.clientWidth || document.body.clientWidth + "px"')
+                                        : s.setExpression('width','this.parentNode.offsetWidth + "px"');
+                               if (fixL) s.setExpression('left', fixL);
+                               if (fixT) s.setExpression('top', fixT);
+                       }
+                       else if (opts.centerY) {
+                               if (full) s.setExpression('top','(document.documentElement.clientHeight || document.body.clientHeight) / 2 - (this.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"');
+                               s.marginTop = 0;
+                       }
+                       else if (!opts.centerY && full) {
+                               var top = (opts.css && opts.css.top) ? parseInt(opts.css.top) : 0;
+                               var expression = '((document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + '+top+') + "px"';
+                               s.setExpression('top',expression);
+                       }
+               });
+       }
+
+       // show the message
+       if (msg) {
+               if (opts.theme)
+                       lyr3.find('.ui-widget-content').append(msg);
+               else
+                       lyr3.append(msg);
+               if (msg.jquery || msg.nodeType)
+                       $(msg).show();
+       }
+
+       if (($.browser.msie || opts.forceIframe) && opts.showOverlay)
+               lyr1.show(); // opacity is zero
+       if (opts.fadeIn) {
+               var cb = opts.onBlock ? opts.onBlock : noOp;
+               var cb1 = (opts.showOverlay && !msg) ? cb : noOp;
+               var cb2 = msg ? cb : noOp;
+               if (opts.showOverlay)
+                       lyr2._fadeIn(opts.fadeIn, cb1);
+               if (msg)
+                       lyr3._fadeIn(opts.fadeIn, cb2);
+       }
+       else {
+               if (opts.showOverlay)
+                       lyr2.show();
+               if (msg)
+                       lyr3.show();
+               if (opts.onBlock)
+                       opts.onBlock();
+       }
+
+       // bind key and mouse events
+       bind(1, el, opts);
+
+       if (full) {
+               pageBlock = lyr3[0];
+               pageBlockEls = $(':input:enabled:visible',pageBlock);
+               if (opts.focusInput)
+                       setTimeout(focus, 20);
+       }
+       else
+               center(lyr3[0], opts.centerX, opts.centerY);
+
+       if (opts.timeout) {
+               // auto-unblock
+               var to = setTimeout(function() {
+                       full ? $.unblockUI(opts) : $(el).unblock(opts);
+               }, opts.timeout);
+               $(el).data('blockUI.timeout', to);
+       }
+};
+
+// remove the block
+function remove(el, opts) {
+       var full = (el == window);
+       var $el = $(el);
+       var data = $el.data('blockUI.history');
+       var to = $el.data('blockUI.timeout');
+       if (to) {
+               clearTimeout(to);
+               $el.removeData('blockUI.timeout');
+       }
+       opts = $.extend({}, $.blockUI.defaults, opts || {});
+       bind(0, el, opts); // unbind events
+       
+       var els;
+       if (full) // crazy selector to handle odd field errors in ie6/7
+               els = $('body').children().filter('.blockUI').add('body > .blockUI');
+       else
+               els = $('.blockUI', el);
+
+       if (full)
+               pageBlock = pageBlockEls = null;
+
+       if (opts.fadeOut) {
+               els.fadeOut(opts.fadeOut);
+               setTimeout(function() { reset(els,data,opts,el); }, opts.fadeOut);
+       }
+       else
+               reset(els, data, opts, el);
+};
+
+// move blocking element back into the DOM where it started
+function reset(els,data,opts,el) {
+       els.each(function(i,o) {
+               // remove via DOM calls so we don't lose event handlers
+               if (this.parentNode)
+                       this.parentNode.removeChild(this);
+       });
+
+       if (data && data.el) {
+               data.el.style.display = data.display;
+               data.el.style.position = data.position;
+               if (data.parent)
+                       data.parent.appendChild(data.el);
+               $(el).removeData('blockUI.history');
+       }
+
+       if (typeof opts.onUnblock == 'function')
+               opts.onUnblock(el,opts);
+};
+
+// bind/unbind the handler
+function bind(b, el, opts) {
+       var full = el == window, $el = $(el);
+
+       // don't bother unbinding if there is nothing to unbind
+       if (!b && (full && !pageBlock || !full && !$el.data('blockUI.isBlocked')))
+               return;
+       if (!full)
+               $el.data('blockUI.isBlocked', b);
+
+       // don't bind events when overlay is not in use or if bindEvents is false
+       if (!opts.bindEvents || (b && !opts.showOverlay)) 
+               return;
+
+       // bind anchors and inputs for mouse and key events
+       var events = 'mousedown mouseup keydown keypress';
+       b ? $(document).bind(events, opts, handler) : $(document).unbind(events, handler);
+
+// former impl...
+//        var $e = $('a,:input');
+//        b ? $e.bind(events, opts, handler) : $e.unbind(events, handler);
+};
+
+// event handler to suppress keyboard/mouse events when blocking
+function handler(e) {
+       // allow tab navigation (conditionally)
+       if (e.keyCode && e.keyCode == 9) {
+               if (pageBlock && e.data.constrainTabKey) {
+                       var els = pageBlockEls;
+                       var fwd = !e.shiftKey && e.target === els[els.length-1];
+                       var back = e.shiftKey && e.target === els[0];
+                       if (fwd || back) {
+                               setTimeout(function(){focus(back)},10);
+                               return false;
+                       }
+               }
+       }
+       var opts = e.data;
+       // allow events within the message content
+       if ($(e.target).parents('div.' + opts.blockMsgClass).length > 0)
+               return true;
+
+       // allow events for content that is not being blocked
+       return $(e.target).parents().children().filter('div.blockUI').length == 0;
+};
+
+function focus(back) {
+       if (!pageBlockEls)
+               return;
+       var e = pageBlockEls[back===true ? pageBlockEls.length-1 : 0];
+       if (e)
+               e.focus();
+};
+
+function center(el, x, y) {
+       var p = el.parentNode, s = el.style;
+       var l = ((p.offsetWidth - el.offsetWidth)/2) - sz(p,'borderLeftWidth');
+       var t = ((p.offsetHeight - el.offsetHeight)/2) - sz(p,'borderTopWidth');
+       if (x) s.left = l > 0 ? (l+'px') : '0';
+       if (y) s.top  = t > 0 ? (t+'px') : '0';
+};
+
+function sz(el, p) {
+       return parseInt($.css(el,p))||0;
+};
+
+})(jQuery);
diff --git a/examples-jbake/assets/javascript/jquery.timer.js b/examples-jbake/assets/javascript/jquery.timer.js
new file mode 100644 (file)
index 0000000..fe9afe2
--- /dev/null
@@ -0,0 +1,75 @@
+\feff/*
+ *
+ *     jQuery Timer plugin v0.1
+ *             Matt Schmidt [http://www.mattptr.net]
+ *
+ *     Licensed under the BSD License:
+ *             http://mattptr.net/license/license.txt
+ *
+ */
+ jQuery.timer = function (interval, callback)
+ {
+ /**
+  *
+  * timer() provides a cleaner way to handle intervals  
+  *
+  *    @usage
+  * $.timer(interval, callback);
+  *
+  *
+  * @example
+  * $.timer(1000, function (timer) {
+  *    alert("hello");
+  *    timer.stop();
+  * });
+  * @desc Show an alert box after 1 second and stop
+  * 
+  * @example
+  * var second = false;
+  *    $.timer(1000, function (timer) {
+  *            if (!second) {
+  *                    alert('First time!');
+  *                    second = true;
+  *                    timer.reset(3000);
+  *            }
+  *            else {
+  *                    alert('Second time');
+  *                    timer.stop();
+  *            }
+  *    });
+  * @desc Show an alert box after 1 second and show another after 3 seconds
+  *
+  * 
+  */
+
+       var interval = interval || 100;
+
+       if (!callback)
+               return false;
+       
+       _timer = function (interval, callback) {
+               this.stop = function () {
+                       clearInterval(self.id);
+               };
+               
+               this.internalCallback = function () {
+                       callback(self);
+               };
+               
+               this.reset = function (val) {
+                       if (self.id)
+                               clearInterval(self.id);
+                       
+                       var val = val || 100;
+                       this.id = setInterval(this.internalCallback, val);
+               };
+               
+               this.interval = interval;
+               this.id = setInterval(this.internalCallback, this.interval);
+               
+               var self = this;
+       };
+       
+       return new _timer(interval, callback);
+ };
\ No newline at end of file
diff --git a/examples-jbake/assets/javascript/jshashtable-2.1.js b/examples-jbake/assets/javascript/jshashtable-2.1.js
new file mode 100644 (file)
index 0000000..3b93622
--- /dev/null
@@ -0,0 +1,16 @@
+/**\r
+ * Copyright 2010 Tim Down.\r
+ *\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ */\r
+var Hashtable=(function(){var p="function";var n=(typeof Array.prototype.splice==p)?function(s,r){s.splice(r,1)}:function(u,t){var s,v,r;if(t===u.length-1){u.length=t}else{s=u.slice(t+1);u.length=t;for(v=0,r=s.length;v<r;++v){u[t+v]=s[v]}}};function a(t){var r;if(typeof t=="string"){return t}else{if(typeof t.hashCode==p){r=t.hashCode();return(typeof r=="string")?r:a(r)}else{if(typeof t.toString==p){return t.toString()}else{try{return String(t)}catch(s){return Object.prototype.toString.call(t)}}}}}function g(r,s){return r.equals(s)}function e(r,s){return(typeof s.equals==p)?s.equals(r):(r===s)}function c(r){return function(s){if(s===null){throw new Error("null is not a valid "+r)}else{if(typeof s=="undefined"){throw new Error(r+" must not be undefined")}}}}var q=c("key"),l=c("value");function d(u,s,t,r){this[0]=u;this.entries=[];this.addEntry(s,t);if(r!==null){this.getEqualityFunction=function(){return r}}}var h=0,j=1,f=2;function o(r){return function(t){var s=this.entries.length,v,u=this.getEqualityFunction(t);while(s--){v=this.entries[s];if(u(t,v[0])){switch(r){case h:return true;case j:return v;case f:return[s,v[1]]}}}return false}}function k(r){return function(u){var v=u.length;for(var t=0,s=this.entries.length;t<s;++t){u[v+t]=this.entries[t][r]}}}d.prototype={getEqualityFunction:function(r){return(typeof r.equals==p)?g:e},getEntryForKey:o(j),getEntryAndIndexForKey:o(f),removeEntryForKey:function(s){var r=this.getEntryAndIndexForKey(s);if(r){n(this.entries,r[0]);return r[1]}return null},addEntry:function(r,s){this.entries[this.entries.length]=[r,s]},keys:k(0),values:k(1),getEntries:function(s){var u=s.length;for(var t=0,r=this.entries.length;t<r;++t){s[u+t]=this.entries[t].slice(0)}},containsKey:o(h),containsValue:function(s){var r=this.entries.length;while(r--){if(s===this.entries[r][1]){return true}}return false}};function m(s,t){var r=s.length,u;while(r--){u=s[r];if(t===u[0]){return r}}return null}function i(r,s){var t=r[s];return(t&&(t instanceof d))?t:null}function b(t,r){var w=this;var v=[];var u={};var x=(typeof t==p)?t:a;var s=(typeof r==p)?r:null;this.put=function(B,C){q(B);l(C);var D=x(B),E,A,z=null;E=i(u,D);if(E){A=E.getEntryForKey(B);if(A){z=A[1];A[1]=C}else{E.addEntry(B,C)}}else{E=new d(D,B,C,s);v[v.length]=E;u[D]=E}return z};this.get=function(A){q(A);var B=x(A);var C=i(u,B);if(C){var z=C.getEntryForKey(A);if(z){return z[1]}}return null};this.containsKey=function(A){q(A);var z=x(A);var B=i(u,z);return B?B.containsKey(A):false};this.containsValue=function(A){l(A);var z=v.length;while(z--){if(v[z].containsValue(A)){return true}}return false};this.clear=function(){v.length=0;u={}};this.isEmpty=function(){return !v.length};var y=function(z){return function(){var A=[],B=v.length;while(B--){v[B][z](A)}return A}};this.keys=y("keys");this.values=y("values");this.entries=y("getEntries");this.remove=function(B){q(B);var C=x(B),z,A=null;var D=i(u,C);if(D){A=D.removeEntryForKey(B);if(A!==null){if(!D.entries.length){z=m(v,C);n(v,z);delete u[C]}}}return A};this.size=function(){var A=0,z=v.length;while(z--){A+=v[z].entries.length}return A};this.each=function(C){var z=w.entries(),A=z.length,B;while(A--){B=z[A];C(B[0],B[1])}};this.putAll=function(H,C){var B=H.entries();var E,F,D,z,A=B.length;var G=(typeof C==p);while(A--){E=B[A];F=E[0];D=E[1];if(G&&(z=w.get(F))){D=C(F,z,D)}w.put(F,D)}};this.clone=function(){var z=new b(t,r);z.putAll(w);return z}}return b})();
\ No newline at end of file
diff --git a/examples-jbake/assets/jmol/Jmol.js b/examples-jbake/assets/jmol/Jmol.js
new file mode 100644 (file)
index 0000000..6962276
--- /dev/null
@@ -0,0 +1,1705 @@
+/* Jmol 12.0 script library Jmol.js 9:48 PM 1/31/2011 Bob Hanson\r
+\r
+ checkbox heirarchy -- see http://chemapps.stolaf.edu/jmol/docs/examples-11/check.htm\r
+\r
+    based on:\r
+ *\r
+ * Copyright (C) 2004-2005  Miguel, Jmol Development, www.jmol.org\r
+ *\r
+ * Contact: hansonr@stolaf.edu\r
+ *\r
+ *  This library is free software; you can redistribute it and/or\r
+ *  modify it under the terms of the GNU Lesser General Public\r
+ *  License as published by the Free Software Foundation; either\r
+ *  version 2.1 of the License, or (at your option) any later version.\r
+ *\r
+ *  This library is distributed in the hope that it will be useful,\r
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\r
+ *  Lesser General Public License for more details.\r
+ *\r
+ *  You should have received a copy of the GNU Lesser General Public\r
+ *  License along with this library; if not, write to the Free Software\r
+ *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA\r
+ *  02111-1307  USA.\r
+ */\r
+\r
+// for documentation see www.jmol.org/jslibrary\r
+\r
+try{if(typeof(_jmol)!="undefined")exit()\r
+\r
+// place "?NOAPPLET" on your command line to check applet control action with a textarea\r
+// place "?JMOLJAR=xxxxx" to use a specific jar file\r
+\r
+// bob hanson -- jmolResize(w,h) -- resizes absolutely or by percent (w or h 0.5 means 50%)\r
+//    angel herraez -- update of jmolResize(w,h,targetSuffix) so it is not tied to first applet\r
+// bob hanson -- jmolEvaluate -- evaluates molecular math 8:37 AM 2/23/2007\r
+// bob hanson -- jmolScriptMessage -- returns all "scriptStatus" messages 8:37 AM 2/23/2007\r
+// bob hanson -- jmolScriptEcho -- returns all "scriptEcho" messages 8:37 AM 2/23/2007\r
+// bob hanson -- jmolScriptWait -- 11:31 AM 5/2/2006\r
+// bob hanson -- remove trailing separatorHTML in radio groups -- 12:18 PM 5/6/2006\r
+// bob hanson -- adds support for dynamic DOM script nodes 7:04 AM 5/19/2006\r
+// bob hanson -- adds try/catch for wiki - multiple code passes 7:05 AM 5/19/2006\r
+// bob hanson -- auto-initiates to defaultdir/defaultjar -- change as desired.\r
+// bob hanson -- adding save/restore orientation w/ and w/o delay 11:49 AM 5/25/2006\r
+// bob hanson -- adding AjaxJS service 11:16 AM 6/3/2006\r
+// bob hanson -- fix for iframes not available for finding applet\r
+// bob hanson -- added applet fake ?NOAPPLET URL flag\r
+// bob hanson -- added jmolSetCallback(calbackName, funcName) 3:32 PM 6/13/2006\r
+//                     used PRIOR to jmolApplet() or jmolAppletInline()\r
+//               added 4th array element in jmolRadioGroup -- title\r
+//               added <span> and id around link, checkbox, radio, menu\r
+//               fixing AJAX loads for MSIE/Opera-Mozilla incompatibility\r
+//            -- renamed Jmol-11.js from Jmol-new.js; JmolApplet.jar from JmolAppletProto.jar\r
+//              renamed Jmol.js for Jmol 11 distribution\r
+//            -- modified jmolRestoreOrientation() to be immediate, no 1-second delay\r
+// bob hanson -- jmolScriptWait always returns a string -- 11:23 AM 9/16/2006\r
+// bh         -- jmolCommandInput()\r
+// bh         -- jmolSetTranslation(TF) -- forces translation even if there might be message callback issues\r
+// bh         -- minor fixes suggested by Angel\r
+// bh         -- adds jmolSetSyncId() and jmolGetSyncId()\r
+// bh 3/2008  -- adds jmolAppendInlineScript() and jmolAppendInlineArray()\r
+// bh 3/2008  -- fixes IE7 bug in relation to jmolLoadInlineArray()\r
+// bh 6/2008  -- adds jmolSetAppletWindow()\r
+// Angel H. 6/2008  -- added html <label> tags to checkboxes and radio buttons [in jmolCheckbox() and _jmolRadio() functions]\r
+// bh 7/2008  -- code fix "for(i..." not "for(var i..."\r
+// bh 12/2008 -- jmolLoadInline, jmolLoadInlineArray, jmolLoadInlineScript, jmolAppendInlineScript, jmolAppendInlineArray all return error message or null (Jmol 11.7.16)\r
+// bh 12/2008 -- jmolScriptWaitOutput() -- waits for script to complete and delivers output normally sent to console\r
+\r
+// bh 5/2009  -- Support for XHTML using jmolSetXHTML(id)\r
+// ah & bh 6/2009 -- New jmolResizeApplet() more flexible, similar to jmolApplet() size syntax\r
+// bh 11/2009 -- care in accessing top.document\r
+// bh 12/2009 -- added jmolSetParameter(name, value)\r
+// bh 12/2009 -- added PARAMS=name:value;name:value;name:value... for command line\r
+// bh 12/2009 -- overhaul of target checking\r
+// bh 1/2010  -- all _xxxx() methods ALWAYS have complete argument list\r
+// bh 1/2010  -- adds option to run a JavaScript function from any Jmol control. \r
+//               This is accomplished by passing an array rather than a script:\r
+//               jmolHref([myfunc,"my param 1", "my param 2"], "testing")\r
+//               function myfunc(jmolControlObject, [myfunc,"my param 1", "my param 2"], target){...}\r
+//               and allows much more flexibility with responding to controls\r
+// bh 4/2010  -- added jmolSetMemoryMb(nMb)\r
+// ah 1/2011  -- wider detection of browsers; more browsers now use the object tag instead of the applet tag; \r
+//               fix of object tag (removed classid) accounts for change of behavior in Chrome\r
+// bh 3/2011  -- added jmolLoadAjax_STOLAF_NIH\r
+\r
+var defaultdir = "."\r
+var defaultjar = "JmolApplet.jar"\r
+\r
+\r
+// Note added 12:41 PM 9/21/2008 by Bob Hanson, hansonr@stolaf.edu:\r
+\r
+// JMOLJAR=xxxxx.jar on the URL for this page will override\r
+// the JAR file specified in the jmolInitialize() call.\r
+\r
+// The idea is that it can be very useful to test a web page with different JAR files\r
+// Or for an expert user to substitute a signed applet for an unsigned one\r
+// so as to use a broader range of models or to create JPEG files, for example.\r
+\r
+// If the JAR file is not in the current directory (has any sort of "/" in its name)\r
+// then the user is presented with a warning and asked whether it is OK to change Jar files.\r
+// The default action, if the user just presses "OK" is to NOT allow the change. \r
+// The user must type the word "yes" in the prompt box for the change to be approved.\r
+\r
+// If you don't want people to be able to switch in their own JAR file on your page,\r
+// simply set this next line to read "var allowJMOLJAR = false".\r
+\r
+\r
+var undefined; // for IE 5 ... wherein undefined is undefined\r
+\r
+////////////////////////////////////////////////////////////////\r
+// Basic Scripting infrastruture\r
+////////////////////////////////////////////////////////////////\r
+\r
+function jmolInitialize(codebaseDirectory, fileNameOrUseSignedApplet) {\r
+  if (_jmol.initialized)\r
+    return;\r
+  _jmol.initialized = true;\r
+  if(_jmol.jmoljar) {\r
+    var f = _jmol.jmoljar;\r
+    if (f.indexOf("/") >= 0) {\r
+      alert ("This web page URL is requesting that the applet used be " + f + ". This is a possible security risk, particularly if the applet is signed, because signed applets can read and write files on your local machine or network.")\r
+      var ok = prompt("Do you want to use applet " + f + "? ","yes or no")\r
+      if (ok == "yes") {\r
+        codebaseDirectory = f.substring(0, f.lastIndexOf("/"));\r
+        fileNameOrUseSignedApplet = f.substring(f.lastIndexOf("/") + 1);\r
+      } else {\r
+       _jmolGetJarFilename(fileNameOrUseSignedApplet);\r
+        alert("The web page URL was ignored. Continuing using " + _jmol.archivePath + ' in directory "' + codebaseDirectory + '"');\r
+      }\r
+    } else {\r
+      fileNameOrUseSignedApplet = f;\r
+    }\r
+  }\r
+  _jmolSetCodebase(codebaseDirectory);\r
+  _jmolGetJarFilename(fileNameOrUseSignedApplet);\r
+  _jmolOnloadResetForms();\r
+}\r
+\r
+function jmolSetTranslation(TF) {\r
+  _jmol.params.doTranslate = ''+TF;\r
+}\r
+\r
+function _jmolGetJarFilename(fileNameOrFlag) {\r
+  _jmol.archivePath =\r
+    (typeof(fileNameOrFlag) == "string"  ? fileNameOrFlag : (fileNameOrFlag ?  "JmolAppletSigned" : "JmolApplet") + "0.jar");\r
+}\r
+\r
+function jmolSetDocument(doc) {\r
+  _jmol.currentDocument = doc;\r
+}\r
+\r
+function jmolSetAppletColor(boxbgcolor, boxfgcolor, progresscolor) {\r
+  _jmolInitCheck();\r
+  _jmol.params.boxbgcolor = boxbgcolor;\r
+  if (boxfgcolor)\r
+    _jmol.params.boxfgcolor = boxfgcolor\r
+  else if (boxbgcolor == "white" || boxbgcolor == "#FFFFFF")\r
+    _jmol.params.boxfgcolor = "black";\r
+  else\r
+    _jmol.params.boxfgcolor = "white";\r
+  if (progresscolor)\r
+    _jmol.params.progresscolor = progresscolor;\r
+  if (_jmol.debugAlert)\r
+    alert(" boxbgcolor=" + _jmol.params.boxbgcolor +\r
+          " boxfgcolor=" + _jmol.params.boxfgcolor +\r
+          " progresscolor=" + _jmol.params.progresscolor);\r
+}\r
+\r
+function jmolSetAppletWindow(w) {\r
+  _jmol.appletWindow = w;\r
+}\r
+\r
+function jmolApplet(size, script, nameSuffix) {\r
+  _jmolInitCheck();\r
+  return _jmolApplet(size, null, script, nameSuffix);\r
+}\r
+\r
+////////////////////////////////////////////////////////////////\r
+// Basic controls\r
+////////////////////////////////////////////////////////////////\r
+\r
+// undefined means it wasn't there; null means it was explicitly listed as null (so as to skip it)\r
+\r
+function jmolButton(script, label, id, title) {\r
+  _jmolInitCheck();\r
+  id != undefined && id != null || (id = "jmolButton" + _jmol.buttonCount);\r
+  label != undefined && label != null || (label = script.substring(0, 32));\r
+  ++_jmol.buttonCount;\r
+  var scriptIndex = _jmolAddScript(script);\r
+  var t = "<span id=\"span_"+id+"\""+(title ? " title=\"" + title + "\"":"")+"><input type='button' name='" + id + "' id='" + id +\r
+          "' value='" + label +\r
+          "' onclick='_jmolClick(this," + scriptIndex + _jmol.targetText +\r
+          ")' onmouseover='_jmolMouseOver(" + scriptIndex +\r
+          ");return true' onmouseout='_jmolMouseOut()' " +\r
+          _jmol.buttonCssText + " /></span>";\r
+  if (_jmol.debugAlert)\r
+    alert(t);\r
+  return _jmolDocumentWrite(t);\r
+}\r
+\r
+function jmolCheckbox(scriptWhenChecked, scriptWhenUnchecked,\r
+                      labelHtml, isChecked, id, title) {\r
+  _jmolInitCheck();\r
+  id != undefined && id != null || (id = "jmolCheckbox" + _jmol.checkboxCount);\r
+  ++_jmol.checkboxCount;\r
+  if (scriptWhenChecked == undefined || scriptWhenChecked == null ||\r
+      scriptWhenUnchecked == undefined || scriptWhenUnchecked == null) {\r
+    alert("jmolCheckbox requires two scripts");\r
+    return;\r
+  }\r
+  if (labelHtml == undefined || labelHtml == null) {\r
+    alert("jmolCheckbox requires a label");\r
+    return;\r
+  }\r
+  var indexChecked = _jmolAddScript(scriptWhenChecked);\r
+  var indexUnchecked = _jmolAddScript(scriptWhenUnchecked);\r
+  var eospan = "</span>"\r
+  var t = "<span id=\"span_"+id+"\""+(title ? " title=\"" + title + "\"":"")+"><input type='checkbox' name='" + id + "' id='" + id +\r
+          "' onclick='_jmolCbClick(this," +\r
+          indexChecked + "," + indexUnchecked + _jmol.targetText +\r
+          ")' onmouseover='_jmolCbOver(this," + indexChecked + "," +\r
+          indexUnchecked +\r
+          ");return true' onmouseout='_jmolMouseOut()' " +\r
+         (isChecked ? "checked='true' " : "")+ _jmol.checkboxCssText + " />" \r
+  if (labelHtml.toLowerCase().indexOf("<td>")>=0) {\r
+       t += eospan\r
+       eospan = "";\r
+  }\r
+  t += "<label for=\"" + id + "\">" + labelHtml + "</label>" +eospan;\r
+  if (_jmol.debugAlert)\r
+    alert(t);\r
+  return _jmolDocumentWrite(t);\r
+}\r
+\r
+function jmolStartNewRadioGroup() {\r
+  ++_jmol.radioGroupCount;\r
+}\r
+\r
+function jmolRadioGroup(arrayOfRadioButtons, separatorHtml, groupName, id, title) {\r
+  /*\r
+\r
+    array: [radio1,radio2,radio3...]\r
+    where radioN = ["script","label",isSelected,"id","title"]\r
+\r
+  */\r
+\r
+  _jmolInitCheck();\r
+  var type = typeof arrayOfRadioButtons;\r
+  if (type != "object" || type == null || ! arrayOfRadioButtons.length) {\r
+    alert("invalid arrayOfRadioButtons");\r
+    return;\r
+  }\r
+  separatorHtml != undefined && separatorHtml != null || (separatorHtml = "&nbsp; ");\r
+  var len = arrayOfRadioButtons.length;\r
+  jmolStartNewRadioGroup();\r
+  groupName || (groupName = "jmolRadioGroup" + (_jmol.radioGroupCount - 1));\r
+  var t = "<span id='"+(id ? id : groupName)+"'>";\r
+  for (var i = 0; i < len; ++i) {\r
+    if (i == len - 1)\r
+      separatorHtml = "";\r
+    var radio = arrayOfRadioButtons[i];\r
+    type = typeof radio;\r
+    if (type == "object") {\r
+      t += _jmolRadio(radio[0], radio[1], radio[2], separatorHtml, groupName, (radio.length > 3 ? radio[3]: (id ? id : groupName)+"_"+i), (radio.length > 4 ? radio[4] : 0), title);\r
+    } else {\r
+      t += _jmolRadio(radio, null, null, separatorHtml, groupName, (id ? id : groupName)+"_"+i, title);\r
+    }\r
+  }\r
+  t+="</span>"\r
+  if (_jmol.debugAlert)\r
+    alert(t);\r
+  return _jmolDocumentWrite(t);\r
+}\r
+\r
+\r
+function jmolRadio(script, labelHtml, isChecked, separatorHtml, groupName, id, title) {\r
+  _jmolInitCheck();\r
+  if (_jmol.radioGroupCount == 0)\r
+    ++_jmol.radioGroupCount;\r
+  var t = _jmolRadio(script, labelHtml, isChecked, separatorHtml, groupName, (id ? id : groupName + "_" + _jmol.radioCount), title ? title : 0);\r
+  if (_jmol.debugAlert)\r
+    alert(t);\r
+  return _jmolDocumentWrite(t);\r
+}\r
+\r
+function jmolLink(script, label, id, title) {\r
+  _jmolInitCheck();\r
+  id != undefined && id != null || (id = "jmolLink" + _jmol.linkCount);\r
+  label != undefined && label != null || (label = script.substring(0, 32));\r
+  ++_jmol.linkCount;\r
+  var scriptIndex = _jmolAddScript(script);\r
+  var t = "<span id=\"span_"+id+"\""+(title ? " title=\"" + title + "\"":"")+"><a name='" + id + "' id='" + id + \r
+          "' href='javascript:_jmolClick(this," + scriptIndex + _jmol.targetText + ");' onmouseover='_jmolMouseOver(" + scriptIndex +\r
+          ");return true;' onmouseout='_jmolMouseOut()' " +\r
+          _jmol.linkCssText + ">" + label + "</a></span>";\r
+  if (_jmol.debugAlert)\r
+    alert(t);\r
+  return _jmolDocumentWrite(t);\r
+}\r
+\r
+function jmolCommandInput(label, size, id, title) {\r
+  _jmolInitCheck();\r
+  id != undefined && id != null || (id = "jmolCmd" + _jmol.cmdCount);\r
+  label != undefined && label != null || (label = "Execute");\r
+  size != undefined && !isNaN(size) || (size = 60);\r
+  ++_jmol.cmdCount;\r
+  var t = "<span id=\"span_"+id+"\""+(title ? " title=\"" + title + "\"":"")+"><input name='" + id + "' id='" + id + \r
+          "' size='"+size+"' onkeypress='_jmolCommandKeyPress(event,\""+id+"\"" + _jmol.targetText + ")'><input type=button value = '"+label+"' onclick='jmolScript(document.getElementById(\""+id+"\").value" + _jmol.targetText + ")' /></span>";\r
+  if (_jmol.debugAlert)\r
+    alert(t);\r
+  return _jmolDocumentWrite(t);\r
+}\r
+\r
+function _jmolCommandKeyPress(e, id, target) {\r
+       var keycode = (window.event ? window.event.keyCode : e ? e.which : 0);\r
+       if (keycode == 13) {\r
+               var inputBox = document.getElementById(id)\r
+               _jmolScriptExecute(inputBox, inputBox.value, target)\r
+       }\r
+}\r
+\r
+function _jmolScriptExecute(element,script,target) {\r
+       if (typeof(script) == "object")\r
+               script[0](element, script, target)\r
+       else\r
+               jmolScript(script, target) \r
+}\r
+\r
+function jmolMenu(arrayOfMenuItems, size, id, title) {\r
+  _jmolInitCheck();\r
+  id != undefined && id != null || (id = "jmolMenu" + _jmol.menuCount);\r
+  ++_jmol.menuCount;\r
+  var type = typeof arrayOfMenuItems;\r
+  if (type != null && type == "object" && arrayOfMenuItems.length) {\r
+    var len = arrayOfMenuItems.length;\r
+    if (typeof size != "number" || size == 1)\r
+      size = null;\r
+    else if (size < 0)\r
+      size = len;\r
+    var sizeText = size ? " size='" + size + "' " : "";\r
+    var t = "<span id=\"span_"+id+"\""+(title ? " title=\"" + title + "\"":"")+"><select name='" + id + "' id='" + id +\r
+            "' onChange='_jmolMenuSelected(this" + _jmol.targetText + ")'" +\r
+            sizeText + _jmol.menuCssText + ">";\r
+    for (var i = 0; i < len; ++i) {\r
+      var menuItem = arrayOfMenuItems[i];\r
+      type = typeof menuItem;\r
+      var script, text;\r
+      var isSelected = undefined;\r
+      if (type == "object" && menuItem != null) {\r
+        script = menuItem[0];\r
+        text = menuItem[1];\r
+        isSelected = menuItem[2];\r
+      } else {\r
+        script = text = menuItem;\r
+      }\r
+      text != undefined && text != null || (text = script);            \r
+      if (script=="#optgroup") {\r
+        t += "<optgroup label='" + text + "'>";          \r
+         } else if (script=="#optgroupEnd") {\r
+        t += "</optgroup>";      \r
+         } else {              \r
+        var scriptIndex = _jmolAddScript(script);\r
+        var selectedText = isSelected ? "' selected='true'>" : "'>";\r
+        t += "<option value='" + scriptIndex + selectedText + text + "</option>";\r
+      }\r
+    }\r
+    t += "</select></span>";\r
+    if (_jmol.debugAlert)\r
+      alert(t);\r
+    return _jmolDocumentWrite(t);\r
+  }\r
+}\r
+\r
+function jmolHtml(html) {\r
+  return _jmolDocumentWrite(html);\r
+}\r
+\r
+function jmolBr() {\r
+  return _jmolDocumentWrite("<br />");\r
+}\r
+\r
+////////////////////////////////////////////////////////////////\r
+// advanced scripting functions\r
+////////////////////////////////////////////////////////////////\r
+\r
+function jmolDebugAlert(enableAlerts) {\r
+  _jmol.debugAlert = (enableAlerts == undefined || enableAlerts)\r
+}\r
+\r
+function jmolAppletInline(size, inlineModel, script, nameSuffix) {\r
+  _jmolInitCheck();\r
+  return _jmolApplet(size, _jmolSterilizeInline(inlineModel),\r
+                     script, nameSuffix);\r
+}\r
+\r
+function jmolSetTarget(targetSuffix) {\r
+  _jmol.targetSuffix = targetSuffix;\r
+  _jmol.targetText = targetSuffix ? ",\"" + targetSuffix + "\"" : ",0";\r
+}\r
+\r
+function jmolScript(script, targetSuffix) {\r
+  if (script) {\r
+    _jmolCheckBrowser();\r
+    if (targetSuffix == "all") {\r
+      with (_jmol) {\r
+       for (var i = 0; i < appletSuffixes.length; ++i) {\r
+         var applet = _jmolGetApplet(appletSuffixes[i]);\r
+          if (applet) applet.script(script);\r
+        }\r
+      }\r
+    } else {\r
+      var applet=_jmolGetApplet(targetSuffix);\r
+      if (applet) applet.script(script);\r
+    }\r
+  }\r
+}\r
+\r
+function jmolLoadInline(model, targetSuffix) {\r
+  if (!model)return "ERROR: NO MODEL"\r
+  var applet=_jmolGetApplet(targetSuffix);\r
+  if (!applet)return "ERROR: NO APPLET"\r
+  if (typeof(model) == "string")\r
+    return applet.loadInlineString(model, "", false);\r
+  else\r
+    return applet.loadInlineArray(model, "", false);\r
+}\r
+\r
+\r
+function jmolLoadInlineScript(model, script, targetSuffix) {\r
+  if (!model)return "ERROR: NO MODEL"\r
+  var applet=_jmolGetApplet(targetSuffix);\r
+  if (!applet)return "ERROR: NO APPLET"\r
+  return applet.loadInlineString(model, script, false);\r
+}\r
+\r
+\r
+function jmolLoadInlineArray(ModelArray, script, targetSuffix) {\r
+  if (!model)return "ERROR: NO MODEL"\r
+  script || (script="")\r
+  var applet=_jmolGetApplet(targetSuffix);\r
+  if (!applet)return "ERROR: NO APPLET"\r
+  try {\r
+    return applet.loadInlineArray(ModelArray, script, false);\r
+  } catch (err) {\r
+    //IE 7 bug\r
+    return applet.loadInlineString(ModelArray.join("\n"), script, false);\r
+  }\r
+}\r
+\r
+function jmolAppendInlineArray(ModelArray, script, targetSuffix) {\r
+  if (!model)return "ERROR: NO MODEL"\r
+  script || (script="")\r
+  var applet=_jmolGetApplet(targetSuffix);\r
+  if (!applet)return "ERROR: NO APPLET"\r
+  try {\r
+    return applet.loadInlineArray(ModelArray, script, true);\r
+  } catch (err) {\r
+    //IE 7 bug\r
+    return applet.loadInlineString(ModelArray.join("\n"), script, true);\r
+  }\r
+}\r
+\r
+function jmolAppendInlineScript(model, script, targetSuffix) {\r
+  if (!model)return "ERROR: NO MODEL"\r
+  var applet=_jmolGetApplet(targetSuffix);\r
+  if (!applet)return "ERROR: NO APPLET"\r
+  return applet.loadInlineString(model, script, true);\r
+}\r
+\r
+function jmolCheckBrowser(action, urlOrMessage, nowOrLater) {\r
+  if (typeof action == "string") {\r
+    action = action.toLowerCase();\r
+    action == "alert" || action == "redirect" || action == "popup" || (action = null);\r
+  }\r
+  if (typeof action != "string")\r
+    alert("jmolCheckBrowser(action, urlOrMessage, nowOrLater)\n\n" +\r
+          "action must be 'alert', 'redirect', or 'popup'");\r
+  else {\r
+    if (typeof urlOrMessage != "string")\r
+      alert("jmolCheckBrowser(action, urlOrMessage, nowOrLater)\n\n" +\r
+            "urlOrMessage must be a string");\r
+    else {\r
+      _jmol.checkBrowserAction = action;\r
+      _jmol.checkBrowserUrlOrMessage = urlOrMessage;\r
+    }\r
+  }\r
+  if (typeof nowOrLater == "string" && nowOrLater.toLowerCase() == "now")\r
+    _jmolCheckBrowser();\r
+}\r
+\r
+////////////////////////////////////////////////////////////////\r
+// Cascading Style Sheet Class support\r
+////////////////////////////////////////////////////////////////\r
+\r
+function jmolSetAppletCssClass(appletCssClass) {\r
+  if (_jmol.hasGetElementById) {\r
+    _jmol.appletCssClass = appletCssClass;\r
+    _jmol.appletCssText = appletCssClass ? "class='" + appletCssClass + "' " : "";\r
+  }\r
+}\r
+\r
+function jmolSetButtonCssClass(buttonCssClass) {\r
+  if (_jmol.hasGetElementById) {\r
+    _jmol.buttonCssClass = buttonCssClass;\r
+    _jmol.buttonCssText = buttonCssClass ? "class='" + buttonCssClass + "' " : "";\r
+  }\r
+}\r
+\r
+function jmolSetCheckboxCssClass(checkboxCssClass) {\r
+  if (_jmol.hasGetElementById) {\r
+    _jmol.checkboxCssClass = checkboxCssClass;\r
+    _jmol.checkboxCssText = checkboxCssClass ? "class='" + checkboxCssClass + "' " : "";\r
+  }\r
+}\r
+\r
+function jmolSetRadioCssClass(radioCssClass) {\r
+  if (_jmol.hasGetElementById) {\r
+    _jmol.radioCssClass = radioCssClass;\r
+    _jmol.radioCssText = radioCssClass ? "class='" + radioCssClass + "' " : "";\r
+  }\r
+}\r
+\r
+function jmolSetLinkCssClass(linkCssClass) {\r
+  if (_jmol.hasGetElementById) {\r
+    _jmol.linkCssClass = linkCssClass;\r
+    _jmol.linkCssText = linkCssClass ? "class='" + linkCssClass + "' " : "";\r
+  }\r
+}\r
+\r
+function jmolSetMenuCssClass(menuCssClass) {\r
+  if (_jmol.hasGetElementById) {\r
+    _jmol.menuCssClass = menuCssClass;\r
+    _jmol.menuCssText = menuCssClass ? "class='" + menuCssClass + "' " : "";\r
+  }\r
+}\r
+\r
+////////////////////////////////////////////////////////////////\r
+// functions for INTERNAL USE ONLY which are subject to change\r
+// use at your own risk ... you have been WARNED!\r
+////////////////////////////////////////////////////////////////\r
+var _jmol = {\r
+  currentDocument: document,\r
+\r
+  debugAlert: false,\r
+  \r
+  codebase: "",\r
+  modelbase: ".",\r
+  \r
+  appletCount: 0,\r
+  appletSuffixes: [],\r
+  appletWindow: null,\r
+  allowedJmolSize: [25, 2048, 300],   // min, max, default (pixels)\r
+         /*  By setting the _jmol.allowedJmolSize[] variable in the webpage \r
+             before calling jmolApplet(), limits for applet size can be overriden.\r
+                   2048 standard for GeoWall (http://geowall.geo.lsa.umich.edu/home.html)\r
+         */  \r
+  buttonCount: 0,\r
+  checkboxCount: 0,\r
+  linkCount: 0,\r
+  cmdCount: 0,\r
+  menuCount: 0,\r
+  radioCount: 0,\r
+  radioGroupCount: 0,\r
+  \r
+  appletCssClass: null,\r
+  appletCssText: "",\r
+  buttonCssClass: null,\r
+  buttonCssText: "",\r
+  checkboxCssClass: null,\r
+  checkboxCssText: "",\r
+  java_arguments: "-Xmx512m",\r
+  radioCssClass: null,\r
+  radioCssText: "",\r
+  linkCssClass: null,\r
+  linkCssText: "",\r
+  menuCssClass: null,\r
+  menuCssText: "",\r
+  \r
+  targetSuffix: 0,\r
+  targetText: ",0",\r
+  scripts: [""],\r
+  params: {\r
+       syncId: ("" + Math.random()).substring(3),\r
+       progressbar: "true",\r
+       progresscolor: "blue",\r
+       boxbgcolor: "black",\r
+       boxfgcolor: "white",\r
+       boxmessage: "Downloading JmolApplet ..."\r
+  },\r
+  ua: navigator.userAgent.toLowerCase(),\r
+  // uaVersion: parseFloat(navigator.appVersion),  // not used\r
+  \r
+  os: "unknown",\r
+  browser: "unknown",\r
+  browserVersion: 0,\r
+  hasGetElementById: !!document.getElementById,\r
+  isJavaEnabled: navigator.javaEnabled(),\r
+  // isNetscape47Win: false,  // not used, N4.7 is no longer supported even for detection\r
+  useIEObject: false,\r
+  useHtml4Object: false,\r
+  \r
+  windowsClassId: "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93",\r
+  windowsCabUrl:\r
+   "http://java.sun.com/update/1.6.0/jinstall-6u22-windows-i586.cab",\r
+\r
+  isBrowserCompliant: false,\r
+  isJavaCompliant: false,\r
+  isFullyCompliant: false,\r
+\r
+  initialized: false,\r
+  initChecked: false,\r
+  \r
+  browserChecked: false,\r
+  checkBrowserAction: "alert",\r
+  checkBrowserUrlOrMessage: null,\r
+\r
+  archivePath: null, // JmolApplet0.jar OR JmolAppletSigned0.jar\r
+\r
+  previousOnloadHandler: null,\r
+\r
+  jmoljar: null,  \r
+  useNoApplet: false,\r
+\r
+  ready: {}\r
+}\r
+\r
+with (_jmol) {\r
+  function _jmolTestUA(candidate) {\r
+    var ua = _jmol.ua;\r
+    var index = ua.indexOf(candidate);\r
+    if (index < 0)\r
+      return false;\r
+    _jmol.browser = candidate;\r
+    _jmol.browserVersion = parseFloat(ua.substring(index+candidate.length+1));\r
+    return true;\r
+  }\r
+  \r
+  function _jmolTestOS(candidate) {\r
+    if (_jmol.ua.indexOf(candidate) < 0)\r
+      return false;\r
+    _jmol.os = candidate;\r
+    return true;\r
+  }\r
+  \r
+  _jmolTestUA("konqueror") ||\r
+  _jmolTestUA("webkit") ||\r
+  _jmolTestUA("omniweb") ||\r
+  _jmolTestUA("opera") ||\r
+  _jmolTestUA("webtv") ||\r
+  _jmolTestUA("icab") ||\r
+  _jmolTestUA("msie") ||\r
+  (_jmol.ua.indexOf("compatible") < 0 && _jmolTestUA("mozilla")); //Netscape, Mozilla, Seamonkey, Firefox and anything assimilated\r
+  \r
+  _jmolTestOS("linux") ||\r
+  _jmolTestOS("unix") ||\r
+  _jmolTestOS("mac") ||\r
+  _jmolTestOS("win");\r
+\r
+  /* not used:\r
+       isNetscape47Win = (os == "win" && browser == "mozilla" &&\r
+                     browserVersion >= 4.78 && browserVersion <= 4.8);\r
+       */\r
+\r
+  if (os == "win") {\r
+    isBrowserCompliant = hasGetElementById;\r
+  } else if (os == "mac") { // mac is the problem child :-(\r
+    if (browser == "mozilla" && browserVersion >= 5) {\r
+      // miguel 2004 11 17\r
+      // checking the plugins array does not work because\r
+      // Netscape 7.2 OS X still has Java 1.3.1 listed even though\r
+      // javaplugin.sf.net is installed to upgrade to 1.4.2\r
+      eval("try {var v = java.lang.System.getProperty('java.version');" +\r
+           " _jmol.isBrowserCompliant = v >= '1.4.2';" +\r
+           " } catch (e) { }");\r
+    } else if (browser == "opera" && browserVersion <= 7.54) {\r
+      isBrowserCompliant = false;\r
+    } else {\r
+      isBrowserCompliant = hasGetElementById &&\r
+        !((browser == "msie") ||\r
+          (browser == "webkit" && browserVersion < 125.12));\r
+    }\r
+  } else if (os == "linux" || os == "unix") {\r
+    if (browser == "konqueror" && browserVersion <= 3.3)\r
+      isBrowserCompliant = false;\r
+    else\r
+      isBrowserCompliant = hasGetElementById;\r
+  } else { // other OS\r
+    isBrowserCompliant = hasGetElementById;\r
+  }\r
+\r
+  // possibly more checks in the future for this\r
+  isJavaCompliant = isJavaEnabled;\r
+\r
+  isFullyCompliant = isBrowserCompliant && isJavaCompliant;\r
+\r
+  useIEObject = (os == "win" && browser == "msie" && browserVersion >= 5.5);\r
+  useHtml4Object =\r
+   (browser == "mozilla" && browserVersion >= 5) ||\r
+   (browser == "opera" && browserVersion >= 8) ||\r
+   (browser == "webkit" && browserVersion >= 412.2);\r
+ try {\r
+  if (top.location.search.indexOf("JMOLJAR=")>=0)\r
+    jmoljar = top.location.search.split("JMOLJAR=")[1].split("&")[0];\r
+ } catch(e) {\r
+  // can't access top.location\r
+ }\r
+ try {\r
+  useNoApplet = (top.location.search.indexOf("NOAPPLET")>=0);\r
+ } catch(e) {\r
+  // can't access top.document\r
+ }\r
+}\r
+\r
+function jmolSetMemoryMb(nMb) {\r
+  _jmol.java_arguments = "-Xmx" + Math.round(nMb) + "m"\r
+}\r
+\r
+function jmolSetParameter(name,value) {\r
+  _jmol.params[name] = value\r
+}\r
+\r
+function jmolSetCallback(callbackName,funcName) {\r
+  _jmol.params[callbackName] = funcName\r
+}\r
+\r
+ try {\r
+// note this is done FIRST, so it cannot override a setting done by the developer\r
+  if (top.location.search.indexOf("PARAMS=")>=0) {\r
+    var pars = unescape(top.location.search.split("PARAMS=")[1].split("&")[0]).split(";");\r
+    for (var i = 0; i < pars.length; i++) {\r
+      var p = pars[i].split(":");\r
+      jmolSetParameter(p[0],p[1]);\r
+    }\r
+  }\r
+ } catch(e) {\r
+  // can't access top.location\r
+ }\r
+\r
+function jmolSetSyncId(n) {\r
+  return _jmol.params["syncId"] = n\r
+}\r
+\r
+function jmolGetSyncId() {\r
+  return _jmol.params["syncId"]\r
+}\r
+\r
+function jmolSetLogLevel(n) {\r
+  _jmol.params.logLevel = ''+n;\r
+}\r
+\r
+       /*  AngelH, mar2007:\r
+               By (re)setting these variables in the webpage before calling jmolApplet(), \r
+               a custom message can be provided (e.g. localized for user's language) when no Java is installed.\r
+       */\r
+if (noJavaMsg==undefined) var noJavaMsg = \r
+        "You do not have Java applets enabled in your web browser, or your browser is blocking this applet.<br />\n" +\r
+        "Check the warning message from your browser and/or enable Java applets in<br />\n" +\r
+        "your web browser preferences, or install the Java Runtime Environment from <a href='http://www.java.com'>www.java.com</a><br />";\r
+if (noJavaMsg2==undefined) var noJavaMsg2 = \r
+        "You do not have the<br />\n" +\r
+        "Java Runtime Environment<br />\n" +\r
+        "installed for applet support.<br />\n" +\r
+        "Visit <a href='http://www.java.com'>www.java.com</a>";\r
+function _jmolApplet(size, inlineModel, script, nameSuffix) {\r
+       /*  AngelH, mar2007\r
+               Fixed percent / pixel business, to avoid browser errors:\r
+               put "px" where needed, avoid where not.\r
+\r
+           Bob Hanson, 1/2010\r
+               Fixed inline escape changing returns to |               \r
+       */\r
+  with (_jmol) {\r
+    nameSuffix == undefined && (nameSuffix = appletCount);\r
+    appletSuffixes.push(nameSuffix);\r
+    ++appletCount;\r
+    script || (script = "select *");\r
+    var sz = _jmolGetAppletSize(size);\r
+    var widthAndHeight = " width='" + sz[0] + "' height='" + sz[1] + "' ";\r
+    var tHeader, tFooter;\r
+    codebase || jmolInitialize(".");\r
+    if (useIEObject || useHtml4Object) {\r
+      params.archive = archivePath;\r
+      params.mayscript = 'true';\r
+      params.codebase = codebase;\r
+      params.code = 'JmolApplet';\r
+      tHeader = \r
+        "<object name='jmolApplet" + nameSuffix +\r
+        "' id='jmolApplet" + nameSuffix + "' " + appletCssText + "\n" +\r
+                               widthAndHeight + "\n";\r
+      tFooter = "</object>";\r
+    }\r
+    if (java_arguments)\r
+      params.java_arguments = java_arguments;\r
+    if (useIEObject) { // use MSFT IE6 object tag with .cab file reference\r
+      tHeader += " classid='" + windowsClassId + "'\n" +\r
+      (windowsCabUrl ? " codebase='" + windowsCabUrl + "'\n" : "") + ">\n";\r
+    } else if (useHtml4Object) { // use HTML4 object tag\r
+      tHeader += " type='application/x-java-applet'\n>\n";\r
+                               /*      " classid='java:JmolApplet'\n" +        AH removed this\r
+                                 Chromium Issue 62076:         Java Applets using an <object> with a classid paramater don't load.\r
+                                       http://code.google.com/p/chromium/issues/detail?id=62076\r
+                                       They say this is the correct behavior according to the spec, and there's no indication at this point \r
+                                       that WebKit will be changing the handling, so eventually Safari will acquire this behavior too.\r
+                                       Removing the classid parameter seems to be well tolerated by all browsers (even IE!).\r
+                               */\r
+    } else { // use applet tag\r
+      tHeader = \r
+        "<applet name='jmolApplet" + nameSuffix +\r
+        "' id='jmolApplet" + nameSuffix + "' " + appletCssText + "\n" +\r
+                               widthAndHeight + "\n" +\r
+        " code='JmolApplet'" +\r
+        " archive='" + archivePath + "' codebase='" + codebase + "'\n" +\r
+        " mayscript='true'>\n";\r
+      tFooter = "</applet>";\r
+    }\r
+    var visitJava;\r
+    if (useIEObject || useHtml4Object) {\r
+               var szX = "width:" + sz[0]\r
+               if ( szX.indexOf("%")==-1 ) szX+="px" \r
+               var szY = "height:" + sz[1]\r
+               if ( szY.indexOf("%")==-1 ) szY+="px" \r
+      visitJava =\r
+        "<p style='background-color:yellow; color:black; " +\r
+               szX + ";" + szY + ";" +\r
+        // why doesn't this vertical-align work?\r
+       "text-align:center;vertical-align:middle;'>\n" +\r
+               noJavaMsg +\r
+        "</p>";\r
+    } else {\r
+      visitJava =\r
+        "<table bgcolor='yellow'><tr>" +\r
+        "<td align='center' valign='middle' " + widthAndHeight + "><font color='black'>\n" +\r
+               noJavaMsg2 +\r
+        "</font></td></tr></table>";\r
+    }\r
+    params.loadInline = (inlineModel ? inlineModel : "");\r
+    params.script = (script ? _jmolSterilizeScript(script) : "");\r
+    var t = tHeader + _jmolParams() + visitJava + tFooter;\r
+    jmolSetTarget(nameSuffix);\r
+    ready["jmolApplet" + nameSuffix] = false;\r
+    if (_jmol.debugAlert)\r
+      alert(t);\r
+    return _jmolDocumentWrite(t);\r
+  }\r
+}\r
+\r
+function _jmolParams() {\r
+ var t = "";\r
+ for (var i in _jmol.params)\r
+       if(_jmol.params[i]!="")\r
+                t+="  <param name='"+i+"' value='"+_jmol.params[i]+"' />\n";\r
+ return t\r
+}\r
+\r
+function _jmolInitCheck() {\r
+  if (_jmol.initChecked)\r
+    return;\r
+  _jmol.initChecked = true;\r
+  jmolInitialize(defaultdir, defaultjar)\r
+}\r
+\r
+function _jmolCheckBrowser() {\r
+  with (_jmol) {\r
+    if (browserChecked)\r
+      return;\r
+    browserChecked = true;\r
+  \r
+    if (isFullyCompliant)\r
+      return true;\r
+\r
+    if (checkBrowserAction == "redirect")\r
+      location.href = checkBrowserUrlOrMessage;\r
+    else if (checkBrowserAction == "popup")\r
+      _jmolPopup(checkBrowserUrlOrMessage);\r
+    else {\r
+      var msg = checkBrowserUrlOrMessage;\r
+      if (msg == null)\r
+        msg = "Your web browser is not fully compatible with Jmol\n\n" +\r
+              "browser: " + browser +\r
+              "   version: " + browserVersion +\r
+              "   os: " + os +\r
+              "   isBrowserCompliant: " + isBrowserCompliant +\r
+              "   isJavaCompliant: " + isJavaCompliant +\r
+              "\n\n" + ua;\r
+      alert(msg);\r
+    }\r
+  }\r
+  return false;\r
+}\r
+\r
+function jmolSetXHTML(id) {\r
+       _jmol.isXHTML = true\r
+       _jmol.XhtmlElement = null\r
+       _jmol.XhtmlAppendChild = false\r
+       if (id){\r
+               _jmol.XhtmlElement = document.getElementById(id)\r
+               _jmol.XhtmlAppendChild = true\r
+       }\r
+}\r
+\r
+function _jmolDocumentWrite(text) {\r
+       if (_jmol.currentDocument) {\r
+               if (_jmol.isXHTML && !_jmol.XhtmlElement) {\r
+                       var s = document.getElementsByTagName("script")\r
+                       _jmol.XhtmlElement = s.item(s.length - 1)\r
+                       _jmol.XhtmlAppendChild = false\r
+               }\r
+               if (_jmol.XhtmlElement) {\r
+                       _jmolDomDocumentWrite(text)\r
+               } else {\r
+                       _jmol.currentDocument.write(text);\r
+               }\r
+       }\r
+       return text;\r
+}\r
+\r
+function _jmolDomDocumentWrite(data) {\r
+       var pt = 0\r
+       var Ptr = []\r
+       Ptr[0] = 0\r
+       while (Ptr[0] < data.length) {\r
+               var child = _jmolGetDomElement(data, Ptr)\r
+               if (!child)break\r
+               if (_jmol.XhtmlAppendChild)\r
+                       _jmol.XhtmlElement.appendChild(child)\r
+               else\r
+                       _jmol.XhtmlElement.parentNode.insertBefore(child, _jmol.XhtmlElement); \r
+       }\r
+}\r
+function _jmolGetDomElement(data, Ptr, closetag, lvel) {\r
+       var e = document.createElement("span")\r
+       e.innerHTML = data\r
+       Ptr[0] = data.length\r
+       return e\r
+\r
+//unnecessary?\r
+\r
+       closetag || (closetag = "")\r
+       lvel || (lvel = 0)\r
+       var pt0 = Ptr[0]\r
+       var pt = pt0\r
+       while (pt < data.length && data.charAt(pt) != "<") pt++\r
+       if (pt != pt0) {\r
+               var text = data.substring(pt0, pt)\r
+               Ptr[0] = pt\r
+               return document.createTextNode(text)\r
+       }       \r
+       pt0 = ++pt\r
+       var ch\r
+       while (pt < data.length && "\n\r\t >".indexOf(ch = data.charAt(pt)) < 0) pt++\r
+       var tagname = data.substring(pt0, pt)\r
+       var e = (tagname == closetag  || tagname == "/" ? "" \r
+               : document.createElementNS ? document.createElementNS('http://www.w3.org/1999/xhtml', tagname)\r
+               : document.createElement(tagname));\r
+       if (ch == ">") {\r
+               Ptr[0] = ++pt\r
+               return e\r
+       }\r
+       while (pt < data.length && (ch = data.charAt(pt)) != ">") {\r
+               while (pt < data.length && "\n\r\t ".indexOf(ch = data.charAt(pt)) >= 0) pt++\r
+               pt0 = pt\r
+               while (pt < data.length && "\n\r\t =/>".indexOf(ch = data.charAt(pt)) < 0) pt++\r
+               var attrname = data.substring(pt0, pt).toLowerCase()\r
+               if (attrname && ch != "=") \r
+                       e.setAttribute(attrname, "true")\r
+               while (pt < data.length && "\n\r\t ".indexOf(ch = data.charAt(pt)) >= 0) pt++\r
+               if (ch == "/") {\r
+                       Ptr[0] = pt + 2\r
+                       return e\r
+               } else if (ch == "=") {\r
+                       var quote = data.charAt(++pt)\r
+                       pt0 = ++pt\r
+                       while (pt < data.length && (ch = data.charAt(pt)) != quote) pt++\r
+                       var attrvalue = data.substring(pt0, pt)\r
+                       e.setAttribute(attrname, attrvalue)\r
+                       pt++\r
+               }\r
+       }\r
+       Ptr[0] = ++pt\r
+       while (Ptr[0] < data.length) {\r
+               var child = _jmolGetDomElement(data, Ptr, "/" + tagname, lvel+1)\r
+               if (!child)break\r
+               e.appendChild(child)\r
+       }\r
+       return e\r
+}\r
+\r
+function _jmolPopup(url) {\r
+  var popup = window.open(url, "JmolPopup",\r
+                          "left=150,top=150,height=400,width=600," +\r
+                          "directories=yes,location=yes,menubar=yes," +\r
+                          "toolbar=yes," +\r
+                          "resizable=yes,scrollbars=yes,status=yes");\r
+  if (popup.focus)\r
+    poup.focus();\r
+}\r
+\r
+function _jmolReadyCallback(name) {\r
+  if (_jmol.debugAlert)\r
+    alert(name + " is ready");\r
+  _jmol.ready["" + name] = true;\r
+}\r
+\r
+function _jmolSterilizeScript(script) {\r
+  script = script.replace(/'/g, "&#39;");\r
+  if (_jmol.debugAlert)\r
+    alert("script:\n" + script);\r
+  return script;\r
+}\r
+\r
+function _jmolSterilizeInline(model) {\r
+  model = model.replace(/\r|\n|\r\n/g, (model.indexOf("|") >= 0 ? "\\/n" : "|")).replace(/'/g, "&#39;");\r
+  if (_jmol.debugAlert)\r
+    alert("inline model:\n" + model);\r
+  return model;\r
+}\r
+\r
+function _jmolRadio(script, labelHtml, isChecked, separatorHtml, groupName, id, title) {\r
+  ++_jmol.radioCount;\r
+  groupName != undefined && groupName != null || (groupName = "jmolRadioGroup" + (_jmol.radioGroupCount - 1));\r
+  if (!script)\r
+    return "";\r
+  labelHtml != undefined && labelHtml != null || (labelHtml = script.substring(0, 32));\r
+  separatorHtml || (separatorHtml = "")\r
+  var scriptIndex = _jmolAddScript(script);\r
+  var eospan = "</span>"\r
+  var t = "<span id=\"span_"+id+"\""+(title ? " title=\"" + title + "\"":"")+"><input name='" \r
+       + groupName + "' id='"+id+"' type='radio' onclick='_jmolClick(this," +\r
+         scriptIndex + _jmol.targetText + ");return true;' onmouseover='_jmolMouseOver(" +\r
+         scriptIndex + ");return true;' onmouseout='_jmolMouseOut()' " +\r
+        (isChecked ? "checked='true' " : "") + _jmol.radioCssText + " />"\r
+  if (labelHtml.toLowerCase().indexOf("<td>")>=0) {\r
+       t += eospan\r
+       eospan = "";\r
+  }\r
+  t += "<label for=\"" + id + "\">" + labelHtml + "</label>" +eospan + separatorHtml;\r
+\r
+  return t;\r
+}\r
+\r
+function _jmolFindApplet(target) {\r
+  // first look for the target in the current window\r
+  var applet = _jmolFindAppletInWindow(_jmol.appletWindow != null ? _jmol.appletWindow : window, target);\r
+  // THEN look for the target in child frames\r
+  if (applet == undefined)\r
+    applet = _jmolSearchFrames(window, target);\r
+  // FINALLY look for the target in sibling frames\r
+  if (applet == undefined)\r
+    applet = _jmolSearchFrames(top, target); // look starting in top frame\r
+  return applet;\r
+}\r
+\r
+function _jmolGetApplet(targetSuffix){\r
+ var target = "jmolApplet" + (targetSuffix ? targetSuffix : "0");\r
+ var applet = _jmolFindApplet(target);\r
+ if (applet) return applet\r
+ _jmol.alerted || alert("could not find applet " + target);\r
+ _jmol.alerted = true;\r
+ return null\r
+}\r
+\r
+function _jmolSearchFrames(win, target) {\r
+  var applet;\r
+  var frames = win.frames;\r
+  if (frames && frames.length) { // look in all the frames below this window\r
+   try{\r
+    for (var i = 0; i < frames.length; ++i) {\r
+      applet = _jmolSearchFrames(frames[i], target);\r
+      if (applet)\r
+        return applet;\r
+    }\r
+   }catch(e) {\r
+       if (_jmol.debugAlert)\r
+               alert("Jmol.js _jmolSearchFrames cannot access " + win.name + ".frame[" + i + "] consider using jmolSetAppletWindow()") \r
+   }\r
+  }\r
+  return applet = _jmolFindAppletInWindow(win, target)\r
+}\r
+\r
+function _jmolFindAppletInWindow(win, target) {\r
+    var doc = win.document;\r
+               if (doc.getElementById(target))\r
+      return doc.getElementById(target);\r
+    else if (doc.applets)\r
+      return doc.applets[target];\r
+    else\r
+      return doc[target]; \r
+}\r
+\r
+function _jmolAddScript(script) {\r
+  if (!script)\r
+    return 0;\r
+  var index = _jmol.scripts.length;\r
+  _jmol.scripts[index] = script;\r
+  return index;\r
+}\r
+\r
+function _jmolClick(elementClicked, scriptIndex, targetSuffix) {\r
+  _jmol.element = elementClicked;\r
+  _jmolScriptExecute(elementClicked, _jmol.scripts[scriptIndex], targetSuffix);\r
+}\r
+\r
+function _jmolMenuSelected(menuObject, targetSuffix) {\r
+  var scriptIndex = menuObject.value;\r
+  if (scriptIndex != undefined) {\r
+    _jmolScriptExecute(menuObject, _jmol.scripts[scriptIndex], targetSuffix);\r
+    return;\r
+  }\r
+  var len = menuObject.length;\r
+  if (typeof len == "number") {\r
+    for (var i = 0; i < len; ++i) {\r
+      if (menuObject[i].selected) {\r
+        _jmolClick(menuObject[i], menuObject[i].value, targetSuffix);\r
+       return;\r
+      }\r
+    }\r
+  }\r
+  alert("?Que? menu selected bug #8734");\r
+}\r
+\r
+\r
+_jmol.checkboxMasters = {};\r
+_jmol.checkboxItems = {};\r
+\r
+function jmolSetCheckboxGroup(chkMaster,chkBox) {\r
+       var id = chkMaster;\r
+       if(typeof(id)=="number")id = "jmolCheckbox" + id;\r
+       chkMaster = document.getElementById(id);\r
+       if (!chkMaster)alert("jmolSetCheckboxGroup: master checkbox not found: " + id);\r
+       var m = _jmol.checkboxMasters[id] = {};\r
+       m.chkMaster = chkMaster;\r
+       m.chkGroup = {};\r
+       for (var i = 1; i < arguments.length; i++){\r
+               var id = arguments[i];\r
+               if(typeof(id)=="number")id = "jmolCheckbox" + id;\r
+               checkboxItem = document.getElementById(id);\r
+               if (!checkboxItem)alert("jmolSetCheckboxGroup: group checkbox not found: " + id);\r
+               m.chkGroup[id] = checkboxItem;\r
+               _jmol.checkboxItems[id] = m;\r
+       }\r
+}\r
+\r
+function _jmolNotifyMaster(m){\r
+       //called when a group item is checked\r
+       var allOn = true;\r
+       var allOff = true;\r
+       for (var chkBox in m.chkGroup){\r
+               if(m.chkGroup[chkBox].checked)\r
+                       allOff = false;\r
+               else\r
+                       allOn = false;\r
+       }\r
+       if (allOn)m.chkMaster.checked = true;   \r
+       if (allOff)m.chkMaster.checked = false;\r
+       if ((allOn || allOff) && _jmol.checkboxItems[m.chkMaster.id])\r
+               _jmolNotifyMaster(_jmol.checkboxItems[m.chkMaster.id])\r
+}\r
+\r
+function _jmolNotifyGroup(m, isOn){\r
+       //called when a master item is checked\r
+       for (var chkBox in m.chkGroup){\r
+               var item = m.chkGroup[chkBox]\r
+               item.checked = isOn;\r
+               if (_jmol.checkboxMasters[item.id])\r
+                       _jmolNotifyGroup(_jmol.checkboxMasters[item.id], isOn)\r
+       }\r
+}\r
+\r
+function _jmolCbClick(ckbox, whenChecked, whenUnchecked, targetSuffix) {\r
+  _jmol.control = ckbox\r
+  _jmolClick(ckbox, ckbox.checked ? whenChecked : whenUnchecked, targetSuffix);\r
+  if(_jmol.checkboxMasters[ckbox.id])\r
+       _jmolNotifyGroup(_jmol.checkboxMasters[ckbox.id], ckbox.checked)\r
+  if(_jmol.checkboxItems[ckbox.id])\r
+       _jmolNotifyMaster(_jmol.checkboxItems[ckbox.id])\r
+}\r
+\r
+function _jmolCbOver(ckbox, whenChecked, whenUnchecked) {\r
+  window.status = _jmol.scripts[ckbox.checked ? whenUnchecked : whenChecked];\r
+}\r
+\r
+function _jmolMouseOver(scriptIndex) {\r
+  window.status = _jmol.scripts[scriptIndex];\r
+}\r
+\r
+function _jmolMouseOut() {\r
+  window.status = " ";\r
+  return true;\r
+}\r
+\r
+function _jmolSetCodebase(codebase) {\r
+  _jmol.codebase = codebase ? codebase : ".";\r
+  if (_jmol.debugAlert)\r
+    alert("jmolCodebase=" + _jmol.codebase);\r
+}\r
+\r
+function _jmolOnloadResetForms() {\r
+  // must be evaluated ONLY once\r
+  _jmol.previousOnloadHandler = window.onload;\r
+  window.onload =\r
+  function() {\r
+    with (_jmol) {\r
+      if (buttonCount+checkboxCount+menuCount+radioCount+radioGroupCount > 0) {\r
+        var forms = document.forms;\r
+        for (var i = forms.length; --i >= 0; )\r
+          forms[i].reset();\r
+      }\r
+      if (previousOnloadHandler)\r
+        previousOnloadHandler();\r
+    }\r
+  }\r
+}\r
+\r
+////////////////////////////////////\r
+/////extensions for getProperty/////\r
+////////////////////////////////////\r
+\r
+\r
+function _jmolEvalJSON(s,key){\r
+ s=s+""\r
+ if(!s)return []\r
+ if(s.charAt(0)!="{"){\r
+       if(s.indexOf(" | ")>=0)s=s.replace(/\ \|\ /g, "\n")\r
+       return s\r
+ }\r
+ var A = eval("("+s+")")\r
+ if(!A)return\r
+ if(key && A[key])A=A[key]\r
+ return A\r
+}\r
+\r
+function _jmolEnumerateObject(A,key){\r
+ var sout=""\r
+ if(typeof(A) == "string" && A!="null"){\r
+       sout+="\n"+key+"=\""+A+"\""\r
+ }else if(!isNaN(A)||A==null){\r
+       sout+="\n"+key+"="+(A+""==""?"null":A)\r
+ }else if(A.length){\r
+    sout+=key+"=[]"\r
+    for(var i=0;i<A.length;i++){\r
+       sout+="\n"\r
+       if(typeof(A[i]) == "object"||typeof(A[i]) == "array"){\r
+               sout+=_jmolEnumerateObject(A[i],key+"["+i+"]")\r
+       }else{\r
+               sout+=key+"["+i+"]="+(typeof(A[i]) == "string" && A[i]!="null"?"\""+A[i].replace(/\"/g,"\\\"")+"\"":A[i])\r
+       }\r
+    }\r
+ }else{\r
+    if(key != ""){\r
+       sout+=key+"={}"\r
+       key+="."\r
+    }\r
+    \r
+    for(var i in A){\r
+       sout+="\n"\r
+       if(typeof(A[i]) == "object"||typeof(A[i]) == "array"){\r
+               sout+=_jmolEnumerateObject(A[i],key+i)\r
+       }else{\r
+               sout+=key+i+"="+(typeof(A[i]) == "string" && A[i]!="null"?"\""+A[i].replace(/\"/g,"\\\"")+"\"":A[i])\r
+       }\r
+    }\r
+ } \r
+ return sout\r
+}\r
+\r
+\r
+function _jmolSortKey0(a,b){\r
+ return (a[0]<b[0]?1:a[0]>b[0]?-1:0)\r
+}\r
+\r
+function _jmolSortMessages(A){\r
+ if(!A || typeof(A)!="object")return []\r
+ var B = []\r
+ for(var i=A.length-1;i>=0;i--)for(var j=0;j<A[i].length;j++)B[B.length]=A[i][j]\r
+ if(B.length == 0) return\r
+ B=B.sort(_jmolSortKey0)\r
+ return B\r
+}\r
+\r
+/////////additional extensions //////////\r
+\r
+\r
+function _jmolDomScriptLoad(URL){\r
+ //open(URL) //to debug\r
+ _jmol.servercall=URL\r
+ var node = document.getElementById("_jmolScriptNode")\r
+ if (node && _jmol.browser!="msie"){\r
+    document.getElementsByTagName("HEAD")[0].removeChild(node)\r
+    node=null\r
+ }\r
+ if (node) {\r
+   node.setAttribute("src",URL)\r
+ } else {\r
+   node=document.createElement("script")\r
+   node.setAttribute("id","_jmolScriptNode")\r
+   node.setAttribute("type","text/javascript")\r
+   node.setAttribute("src",URL)\r
+   document.getElementsByTagName("HEAD")[0].appendChild(node)\r
+ }\r
+}\r
+\r
+\r
+function _jmolExtractPostData(url){\r
+ S=url.split("&POST:")\r
+ var s=""\r
+ for(var i=1;i<S.length;i++){\r
+       KV=S[i].split("=")\r
+       s+="&POSTKEY"+i+"="+KV[0]\r
+       s+="&POSTVALUE"+i+"="+KV[1]\r
+ }\r
+ return "&url="+escape(S[0])+s\r
+}\r
+\r
+function _jmolLoadModel(targetSuffix,remoteURL,array,isError,errorMessage){\r
+ //called by server, but in client\r
+ //overload this function to customize return\r
+ _jmol.remoteURL=remoteURL\r
+ isError && alert(errorMessage)\r
+ jmolLoadInlineScript(array.join("\n"),_jmol.optionalscript,targetSuffix)\r
+}\r
+\r
+//////////user property/status functions/////////\r
+\r
+function jmolGetStatus(strStatus,targetSuffix){\r
+ return _jmolSortMessages(jmolGetPropertyAsArray("jmolStatus",strStatus,targetSuffix))\r
+}\r
+\r
+function jmolGetPropertyAsArray(sKey,sValue,targetSuffix) {\r
+ return _jmolEvalJSON(jmolGetPropertyAsJSON(sKey,sValue,targetSuffix),sKey)\r
+}\r
+\r
+function jmolGetPropertyAsString(sKey,sValue,targetSuffix) {\r
+ var applet = _jmolGetApplet(targetSuffix);\r
+ sValue == undefined && (sValue="");\r
+ return (applet ? applet.getPropertyAsString(sKey,sValue) + "" : "")\r
+}\r
+\r
+function jmolGetPropertyAsJSON(sKey,sValue,targetSuffix) {\r
+ sValue == undefined && (sValue = "")\r
+ var applet = _jmolGetApplet(targetSuffix);\r
+ try {\r
+  return (applet ? applet.getPropertyAsJSON(sKey,sValue) + "" : "")\r
+ } catch(e) {\r
+  return ""\r
+ }\r
+}\r
+\r
+function jmolGetPropertyAsJavaObject(sKey,sValue,targetSuffix) {\r
+ sValue == undefined && (sValue = "")\r
+ var applet = _jmolGetApplet(targetSuffix);\r
+ return (applet ? applet.getProperty(sKey,sValue) : null)\r
+}\r
+\r
+\r
+function jmolDecodeJSON(s) {\r
+ return _jmolEnumerateObject(_jmolEvalJSON(s),"")\r
+}\r
+\r
+\r
+///////// synchronous scripting ////////\r
+\r
+function jmolScriptWait(script, targetSuffix) {\r
+  targetSuffix == undefined && (targetSuffix="0")\r
+  var Ret=jmolScriptWaitAsArray(script, targetSuffix)\r
+  var s = ""\r
+  for(var i=Ret.length;--i>=0;)\r
+  for(var j=0;j< Ret[i].length;j++)\r
+       s+=Ret[i][j]+"\n"\r
+  return s\r
+}\r
+\r
+function jmolScriptWaitOutput(script, targetSuffix) {\r
+  targetSuffix == undefined && (targetSuffix="0")\r
+  var ret = ""\r
+  try{\r
+   if (script) {\r
+    _jmolCheckBrowser();\r
+    var applet=_jmolGetApplet(targetSuffix);\r
+    if (applet) ret += applet.scriptWaitOutput(script);\r
+   }\r
+  }catch(e){\r
+  }\r
+ return ret;\r
+}\r
+\r
+function jmolEvaluate(molecularMath, targetSuffix) {\r
+\r
+  //carries out molecular math on a model\r
+\r
+  targetSuffix == undefined && (targetSuffix="0")\r
+  var result = "" + jmolGetPropertyAsJavaObject("evaluate", molecularMath, targetSuffix);\r
+  var s = result.replace(/\-*\d+/,"")\r
+  if (s == "" && !isNaN(parseInt(result)))return parseInt(result);\r
+  var s = result.replace(/\-*\d*\.\d*/,"")\r
+  if (s == "" && !isNaN(parseFloat(result)))return parseFloat(result);\r
+  return result;\r
+}\r
+\r
+function jmolScriptEcho(script, targetSuffix) {\r
+  // returns a newline-separated list of all echos from a script\r
+  targetSuffix == undefined && (targetSuffix="0")\r
+  var Ret=jmolScriptWaitAsArray(script, targetSuffix)\r
+  var s = ""\r
+  for(var i=Ret.length;--i>=0;)\r
+  for(var j=Ret[i].length;--j>=0;)\r
+        if (Ret[i][j][1] == "scriptEcho")s+=Ret[i][j][3]+"\n"\r
+  return s.replace(/ \| /g, "\n")\r
+}\r
+\r
+\r
+function jmolScriptMessage(script, targetSuffix) {\r
+  // returns a newline-separated list of all messages from a script, ending with "script completed\n"\r
+  targetSuffix == undefined && (targetSuffix="0")\r
+  var Ret=jmolScriptWaitAsArray(script, targetSuffix)\r
+  var s = ""\r
+  for(var i=Ret.length;--i>=0;)\r
+  for(var j=Ret[i].length;--j>=0;)\r
+        if (Ret[i][j][1] == "scriptStatus")s+=Ret[i][j][3]+"\n"\r
+  return s.replace(/ \| /g, "\n")\r
+}\r
+\r
+\r
+function jmolScriptWaitAsArray(script, targetSuffix) {\r
+ var ret = ""\r
+ try{\r
+  jmolGetStatus("scriptEcho,scriptMessage,scriptStatus,scriptError",targetSuffix)\r
+  if (script) {\r
+    _jmolCheckBrowser();\r
+    var applet=_jmolGetApplet(targetSuffix);\r
+    if (applet) ret += applet.scriptWait(script);\r
+    ret = _jmolEvalJSON(ret,"jmolStatus")\r
+    if(typeof ret == "object")\r
+       return ret\r
+  }\r
+ }catch(e){\r
+ }\r
+  return [[ret]]\r
+}\r
+\r
+\r
+\r
+////////////   save/restore orientation   /////////////\r
+\r
+function jmolSaveOrientation(id, targetSuffix) {  \r
+ targetSuffix == undefined && (targetSuffix="0")\r
+ return _jmol["savedOrientation"+id] = jmolGetPropertyAsArray("orientationInfo","info",targetSuffix).moveTo\r
+}\r
+\r
+function jmolRestoreOrientation(id, targetSuffix) {\r
+ targetSuffix == undefined && (targetSuffix="0")\r
+ var s=_jmol["savedOrientation"+id]\r
+ if (!s || s == "")return\r
+ s=s.replace(/1\.0/,"0")\r
+ return jmolScriptWait(s,targetSuffix)\r
+}\r
+\r
+function jmolRestoreOrientationDelayed(id, delay, targetSuffix) {\r
+ arguments.length < 2 && (delay=1)\r
+ targetSuffix == undefined && (targetSuffix="0")\r
+ var s=_jmol["savedOrientation"+id]\r
+ if (!s || s == "")return\r
+ s=s.replace(/1\.0/,delay)\r
+ return jmolScriptWait(s,targetSuffix)\r
+}\r
+\r
+////////////  add parameter /////////////\r
+/*\r
+ * for adding callbacks or other parameters. Use:\r
+\r
+   jmolSetDocument(0)\r
+   var s= jmolApplet(....)\r
+   s = jmolAppletAddParam(s,"messageCallback", "myFunctionName")\r
+   document.write(s)\r
+   jmolSetDocument(document) // if you want to then write buttons and such normally\r
\r
+ */\r
+\r
+function jmolAppletAddParam(appletCode,name,value){\r
+  return (value == "" ? appletCode : appletCode.replace(/\<param/,"\n<param name='"+name+"' value='"+value+"' />\n<param"))\r
+}\r
+\r
+///////////////auto load Research Consortium for Structural Biology (RCSB) data ///////////\r
+\r
+function jmolLoadAjax_STOLAF_RCSB(fileformat,pdbid,optionalscript,targetSuffix){\r
+\r
+ _jmol.thismodel || (_jmol.thismodel = "1crn")\r
+ _jmol.serverURL || (_jmol.serverURL="http://fusion.stolaf.edu/chemistry/jmol/getajaxjs.cfm")\r
+ _jmol.RCSBserver || (_jmol.RCSBserver="http://www.rcsb.org")\r
+ _jmol.defaultURL_RCSB || (_jmol.defaultURL_RCSB=_jmol.RCSBserver+"/pdb/files/1CRN.CIF")\r
+ fileformat || (fileformat="PDB")\r
+ pdbid || (pdbid=prompt("Enter a 4-digit PDB ID:",_jmol.thismodel))\r
+ if(!pdbid || pdbid.length != 4)return ""\r
+ targetSuffix || (targetSuffix="0")\r
+ optionalscript || (optionalscript="")\r
+ var url=_jmol.defaultURL_RCSB.replace(/1CRN/g,pdbid.toUpperCase())\r
+ fileformat=="CIF" || (url=url.replace(/CIF/,fileformat))\r
+ _jmol.optionalscript=optionalscript\r
+ _jmol.thismodel=pdbid\r
+ _jmol.thistargetsuffix=targetSuffix\r
+ _jmol.thisurl=url\r
+ _jmol.modelArray = []\r
+ url=_jmol.serverURL+"?returnfunction=_jmolLoadModel&returnArray=_jmol.modelArray&id="+targetSuffix+_jmolExtractPostData(url)\r
+ _jmolDomScriptLoad(url)\r
+ return url\r
+}\r
+\r
+\r
+///////////////auto load NIH CACTVS data -- compound name or SMILES ///////////\r
+\r
+function jmolLoadAjax_STOLAF_NIH(compoundid,optionalscript,targetSuffix){\r
+ _jmol.thismodel || (_jmol.thismodel = "aspirin")\r
+ _jmol.serverURL || (_jmol.serverURL="http://fusion.stolaf.edu/chemistry/jmol/getajaxjs.cfm")\r
+ _jmol.defaultURL_NIH || (_jmol.defaultURL_NIH="http://cactus.nci.nih.gov/chemical/structure/FILE/file?format=sdf&get3d=True")\r
+ compoundid || (compoundid=prompt("Enter a compound name or a SMILES string:",_jmol.thismodel))\r
+ if(!compoundid)return ""\r
+ targetSuffix || (targetSuffix="0")\r
+ optionalscript || (optionalscript="")\r
+ var url=_jmol.defaultURL_NIH.replace(/FILE/g,compoundid)\r
+ _jmol.optionalscript=optionalscript\r
+ _jmol.thismodel=compoundid\r
+ _jmol.thistargetsuffix=targetSuffix\r
+ _jmol.thisurl=url\r
+ _jmol.modelArray = []\r
+ url=_jmol.serverURL+"?returnfunction=_jmolLoadModel&returnArray=_jmol.modelArray&id="+targetSuffix+_jmolExtractPostData(url)\r
+ _jmolDomScriptLoad(url)\r
+ return url\r
+}\r
+\r
+\r
+/////////////// St. Olaf College AJAX server -- ANY URL ///////////\r
+\r
+function jmolLoadAjax_STOLAF_ANY(url, userid, optionalscript,targetSuffix){\r
+ _jmol.serverURL="http://fusion.stolaf.edu/chemistry/jmol/getajaxjs.cfm"\r
+ _jmol.thisurlANY || (_jmol.thisurlANY = "http://www.stolaf.edu/depts/chemistry/mo/struc/data/ycp3-1.mol")\r
+ url || (url=prompt("Enter any (uncompressed file) URL:", _jmol.thisurlANY))\r
+ userid || (userid="0")\r
+ targetSuffix || (targetSuffix="0")\r
+ optionalscript || (optionalscript="")\r
+ _jmol.optionalscript=optionalscript\r
+ _jmol.thistargetsuffix=targetSuffix\r
+ _jmol.modelArray = []\r
+ _jmol.thisurl = url\r
+ url=_jmol.serverURL+"?returnfunction=_jmolLoadModel&returnArray=_jmol.modelArray&id="+targetSuffix+_jmolExtractPostData(url)\r
+ _jmolDomScriptLoad(url)\r
+}\r
+\r
+\r
+/////////////// Mineralogical Society of America (MSA) data /////////\r
+\r
+function jmolLoadAjax_MSA(key,value,optionalscript,targetSuffix){\r
+\r
+ _jmol.thiskeyMSA || (_jmol.thiskeyMSA = "mineral")\r
+ _jmol.thismodelMSA || (_jmol.thismodelMSA = "quartz")\r
+ _jmol.ajaxURL_MSA || (_jmol.ajaxURL_MSA="http://rruff.geo.arizona.edu/AMS/result.php?mineral=quartz&viewing=ajaxjs")\r
+ key || (key=prompt("Enter a field:", _jmol.thiskeyMSA))\r
+ if(!key)return ""\r
+ value || (value=prompt("Enter a "+key+":", _jmol.thismodelMSA))\r
+ if(!value)return ""\r
+ targetSuffix || (targetSuffix="0")\r
+ optionalscript || (optionalscript="")\r
+ optionalscript == 1 && (optionalscript='load "" {1 1 1}')\r
+ var url=_jmol.ajaxURL_MSA.replace(/mineral/g,key).replace(/quartz/g,value)\r
+ _jmol.optionalscript=optionalscript\r
+ _jmol.thiskeyMSA=key\r
+ _jmol.thismodelMSA=value\r
+ _jmol.thistargetsuffix=targetSuffix\r
+ _jmol.thisurl=url\r
+ _jmol.modelArray = []\r
+ loadModel=_jmolLoadModel\r
+ _jmolDomScriptLoad(url)\r
+ return url\r
+}\r
+\r
+\r
+\r
+function jmolLoadAjaxJS(url, userid, optionalscript,targetSuffix){\r
+ userid || (userid="0")\r
+ targetSuffix || (targetSuffix="0")\r
+ optionalscript || (optionalscript="")\r
+ _jmol.optionalscript=optionalscript\r
+ _jmol.thismodel=userid\r
+ _jmol.thistargetsuffix=targetSuffix\r
+ _jmol.modelArray = []\r
+ _jmol.thisurl = url\r
+ url+="&returnFunction=_jmolLoadModel&returnArray=_jmol.modelArray&id="+targetSuffix\r
+ _jmolDomScriptLoad(url)\r
+}\r
+\r
+\r
+//// in case Jmol library has already been loaded:\r
+\r
+}catch(e){}\r
+\r
+///////////////moving atoms //////////////\r
+\r
+// HIGHLY experimental!!\r
+\r
+function jmolSetAtomCoord(i,x,y,z,targetSuffix){\r
+    _jmolCheckBrowser();\r
+      var applet=_jmolGetApplet(targetSuffix);\r
+      if (applet) applet.getProperty('jmolViewer').setAtomCoord(i,x,y,z)\r
+}\r
+\r
+function jmolSetAtomCoordRelative(i,x,y,z,targetSuffix){\r
+    _jmolCheckBrowser();\r
+      var applet=_jmolGetApplet(targetSuffix);\r
+      if (applet) applet.getProperty('jmolViewer').setAtomCoordRelative(i,x,y,z)\r
+}\r
+\r
+\r
+///////////////applet fake for testing buttons/////////////\r
+\r
+\r
+if(_jmol.useNoApplet){\r
+       jmolApplet = function(w){\r
+               var s="<table style='background-color:black' width="+w+"><tr height="+w+">"\r
+               +"<td align=center valign=center style='background-color:white'>"\r
+               +"Applet would be here"\r
+               +"<p><textarea id=fakeApplet rows=5 cols=50></textarea>"\r
+               +"</td></tr></table>"\r
+               return _jmolDocumentWrite(s)\r
+       }\r
+\r
+       _jmolFindApplet = function(){return jmolApplet0}\r
+\r
+       jmolApplet0 = {\r
+        script: function(script){document.getElementById("fakeApplet").value="\njmolScript:\n"+script}\r
+       ,scriptWait: function(script){document.getElementById("fakeApplet").value="\njmolScriptWait:\n"+script} \r
+       ,loadInline: function(data,script){document.getElementById("fakeApplet").value="\njmolLoadInline data:\n"+data+"\n\nscript:\n"+script}\r
+       }\r
+}\r
+\r
+\r
+///////////////////////////////////////////\r
+\r
+  //  This should no longer be needed, jmolResizeApplet() is better; kept for backwards compatibility\r
+  /*\r
+       Resizes absolutely (pixels) or by percent of window (w or h 0.5 means 50%).\r
+       targetSuffix is optional and defaults to zero (first applet in page).\r
+       Both w and h are optional, but needed if you want to use targetSuffix.\r
+               h defaults to w\r
+               w defaults to 100% of window\r
+       If either w or h is between 0 and 1, then it is taken as percent/100.\r
+       If either w or h is greater than 1, then it is taken as a size (pixels). \r
+       */\r
+function jmolResize(w,h,targetSuffix) {\r
+ _jmol.alerted = true;\r
+ var percentW = (!w ? 100 : w <= 1  && w > 0 ? w * 100 : 0);\r
+ var percentH = (!h ? percentW : h <= 1 && h > 0 ? h * 100 : 0);\r
+ if (_jmol.browser=="msie") {\r
+   var width=document.body.clientWidth;\r
+   var height=document.body.clientHeight;\r
+ } else {\r
+   var netscapeScrollWidth=15;\r
+   var width=window.innerWidth - netscapeScrollWidth;\r
+   var height=window.innerHeight-netscapeScrollWidth;\r
+ }\r
+ var applet = _jmolGetApplet(targetSuffix);\r
+ if(!applet)return;\r
+ applet.style.width = (percentW ? width * percentW/100 : w)+"px";\r
+ applet.style.height = (percentH ? height * percentH/100 : (h ? h : w))+"px";\r
+ //title=width +  " " + height + " " + (new Date());\r
+}\r
+\r
+// 13 Jun 09 -- makes jmolResize() obsolete  (kept for backwards compatibility)\r
+function jmolResizeApplet(size,targetSuffix) {\r
+ // See _jmolGetAppletSize() for the formats accepted as size [same used by jmolApplet()]\r
+ //  Special case: an empty value for width or height is accepted, meaning no change in that dimension.\r
+ _jmol.alerted = true;\r
+ var applet = _jmolGetApplet(targetSuffix);\r
+ if(!applet)return;\r
+ var sz = _jmolGetAppletSize(size, "px");\r
+ sz[0] && (applet.style.width = sz[0]);\r
+ sz[1] && (applet.style.height = sz[1]);\r
+}\r
+\r
+function _jmolGetAppletSize(size, units) {\r
+       /* Accepts single number or 2-value array, each one can be one of:\r
+          percent (text string ending %), decimal 0 to 1 (percent/100), number, or text string (interpreted as nr.)\r
+          [width, height] array of strings is returned, with units added if specified.\r
+          Percent is relative to container div or element (which should have explicitly set size).\r
+       */\r
+  var width, height;\r
+  if ( (typeof size) == "object" && size != null ) {\r
+    width = size[0]; height = size[1];\r
+  } else {\r
+    width = height = size;\r
+  }\r
+  return [_jmolFixDim(width, units), _jmolFixDim(height, units)];\r
+}\r
+\r
+function _jmolFixDim(x, units) {\r
+  var sx = "" + x;\r
+  return (sx.length == 0 ? (units ? "" : _jmol.allowedJmolSize[2])\r
+       : sx.indexOf("%") == sx.length-1 ? sx \r
+       : (x = parseFloat(x)) <= 1 && x > 0 ? x * 100 + "%"\r
+       : (isNaN(x = Math.floor(x)) ? _jmol.allowedJmolSize[2]\r
+               : x < _jmol.allowedJmolSize[0] ? _jmol.allowedJmolSize[0]\r
+           : x > _jmol.allowedJmolSize[1] ? _jmol.allowedJmolSize[1] \r
+        : x) + (units ? units : ""));\r
+}\r
+\r
+\r
+\r
+\r
diff --git a/examples-jbake/assets/jpred_msa.fasta b/examples-jbake/assets/jpred_msa.fasta
new file mode 100755 (executable)
index 0000000..b269404
--- /dev/null
@@ -0,0 +1,45 @@
+>FER_CAPAA Ferredoxin
+ASYKVKLITPDGPIEFDCPDDVYILDQAEEAGHDLPYSCRAGSCSSCAGKIAGGAVDQTDGNFLDDDQLEEG
+WVLTCVAYPQSDVTIETHKEAELVG-
+>FER_CAPAN Ferredoxin, chloroplast precursor
+ASYKVKLITPDGPIEFDCPDNVYILDQAEEAGHDLPYSCRAGSCSSCAGKIAGGAVDQTDGNFLDDDQLEEG
+WVLTCVAYPQSDVTIETHKEAELVG-
+>FER1_SOLLC Ferredoxin-1, chloroplast precursor
+ASYKVKLITPEGPIEFECPDDVYILDQAEEEGHDLPYSCRAGSCSSCAGKVTAGSVDQSDGNFLDEDQEAAG
+FVLTCVAYPKGDVTIETHKEEELTA-
+>Q93XJ9_SOLTU Ferredoxin I precursor
+ASYKVKLITPDGPIEFECPDDVYILDQAEEEGHDLPYSCRAGSCSSCAGKVTAGTVDQSDGKFLDDDQEAAG
+FVLTCVAYPKCDVTIETHKEEELTA-
+>FER1_MESCR Ferredoxin-1, chloroplast precursor
+AAYKVTLVTPEGKQELECPDDVYILDAAEEAGIDLPYSCRAGSCSSCAGKVTSGSVNQDDGSFLDDDQIKEG
+WVLTCVAYPTGDVTIETHKEEELTA-
+>FER1_SPIOL Ferredoxin-1, chloroplast precursor
+AAYKVTLVTPTGNVEFQCPDDVYILDAAEEEGIDLPYSCRAGSCSSCAGKLKTGSLNQDDQSFLDDDQIDEG
+WVLTCAAYPVSDVTIETHKEEELTA-
+>FER1_ARATH Ferredoxin-1, chloroplast precursor
+ATYKVKFITPEGELEVECDDDVYVLDAAEEAGIDLPYSCRAGSCSSCAGKVVSGSVDQSDQSFLDDEQIGEG
+FVLTCAAYPTSDVTIETHKEEDIV--
+>FER2_ARATH Ferredoxin-2, chloroplast precursor
+ATYKVKFITPEGEQEVECEEDVYVLDAAEEAGLDLPYSCRAGSCSSCAGKVVSGSIDQSDQSFLDDEQMSEG
+YVLTCVAYPTSDVVIETHKEEAIM--
+>FER1_PEA Ferredoxin-1, chloroplast precursor
+ASYKVKLVTPDGTQEFECPSDVYILDHAEEVGIDLPYSCRAGSCSSCAGKVVGGEVDQSDGSFLDDEQIEAG
+FVLTCVAYPTSDVVIETHKEEDLTA-
+>Q7XA98_TRIPR Ferredoxin I
+ATYKVKLITPEGPQEFDCPDDVYILDHAEEVGIELPYSCRAGSCSSCAGKVVNGNVNQEDGSFLDDEQIEGG
+WVLTCVAFPTSDVTIETHKEEELTA-
+>FER1_MAIZE Ferredoxin-1, chloroplast precursor
+ATYNVKLITPEGEVELQVPDDVYILDQAEEDGIDLPYSCRAGSCSSCAGKVVSGSVDQSDQSYLDDGQIADG
+WVLTCHAYPTSDVVIETHKEEELTGA
+>O80429_MAIZE Ferredoxin
+ATYNVKLITPEGEVELQVPDDVYILDFAEEEGIDLPFSCRAGSCSSCAGKVVSGSVDQSDQSFLNDNQVADG
+WVLTCAAYPTSDVVIETHKEDDLL--
+>Q93Z60_ARATH At1g10960/T19D16_12
+ATYKVKFITPEGEQEVECEEDVYVLDAAEEAGLDLPYSCRAGSCSSCAGKVVSGSIDQSDQSFLDD------
+--------------------------
+>FER3_RAPSA Ferredoxin, leaf L-A
+ATYKVKFITPEGEQEVECDDDVYVLDAAEEAGIDLPYSCRAGSCSSCAGKVVSGSVDQSDQSFLDDDQIAEG
+FVLTCAAYPTSDVTIETHREEDMV--
+>FER_BRANA Ferredoxin
+ATYKVKFITPEGEQEVECDDDVYVLDAAEEAGIDLPYSCRAGSCSSCAGKVVSGFVDQSDESFLDDDQIAEG
+FVLTCAAYPTSDVTIETHKEEELV--
diff --git a/examples-jbake/assets/jpred_msa.seq.concise b/examples-jbake/assets/jpred_msa.seq.concise
new file mode 100755 (executable)
index 0000000..90bd4c3
--- /dev/null
@@ -0,0 +1,30 @@
+Lupas_21:-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,
+Lupas_14:-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,
+Lupas_28:-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,
+
+jnetpred:-,-,-,-,E,E,E,E,E,E,-,-,-,-,-,E,E,E,E,-,-,-,-,E,E,E,E,E,-,H,H,H,H,H,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,E,E,E,E,-,-,E,E,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,E,E,E,E,E,E,E,E,-,-,-,-,E,E,E,E,-,
+JNETCONF:1,3,1,2,7,7,9,9,7,1,6,8,9,8,1,3,5,5,1,6,8,9,7,4,8,8,7,2,3,2,0,2,1,2,5,7,8,8,7,6,4,2,1,3,5,7,8,7,5,4,4,5,7,5,2,5,5,1,4,2,0,1,5,6,7,7,5,4,5,4,5,6,6,3,1,1,1,4,6,1,6,9,9,9,8,8,7,0,8,9,9,7,2,8,9,9,8,
+JNETSOL25:B,-,B,-,-,B,B,B,B,B,-,-,-,-,-,-,-,-,-,-,-,-,-,-,B,B,B,B,-,B,-,B,-,-,-,-,-,-,B,B,B,B,B,B,B,B,B,B,B,B,B,B,B,-,-,B,-,-,-,-,-,-,-,-,-,-,-,-,B,B,-,-,-,-,-,-,B,-,-,B,B,B,B,B,B,B,B,B,B,-,-,-,-,B,B,-,-,
+JNETSOL5:-,-,-,-,-,-,-,B,B,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,B,-,-,-,-,-,-,-,-,-,-,-,-,-,-,B,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,B,B,B,B,B,B,-,-,-,-,-,-,-,B,-,-,
+JNETSOL0:-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,B,-,B,-,-,-,-,-,-,-,-,-,-,-,-,-,
+JNETPROPH:0.44514,0.02676,0.50891,0.59931,0.03767,0.31300,0.54697,0.01490,0.41391,0.55820,0.01816,0.38620,0.82780,0.00804,0.16764,0.86436,0.00416,0.14111,0.96423,0.00391,0.03569,0.94587,0.00483,0.05758,0.88110,0.01273,0.13718,0.57335,0.02654,0.44509,0.17935,0.02373,0.80108,0.08085,0.00825,0.91351,0.06739,0.00450,0.93803,0.11202,0.00730,0.88142,0.41953,0.00953,0.55868,0.64171,0.00894,0.34807,0.74660,0.00831,0.27522,0.78367,0.00952,0.27786,0.54376,0.01578,0.49285,0.18080,0.01695,0.78463,0.05922,0.01157,0.90794,0.03565,0.02045,0.91548,0.12377,0.02896,0.77671,0.58102,0.05600,0.22143,0.82750,0.03376,0.07013,0.86371,0.02169,0.08984,0.81881,0.04410,0.14200,0.60784,0.05837,0.36725,0.27275,0.10034,0.53452,0.12405,0.28672,0.44961,0.07683,0.43094,0.40783,0.05134,0.55252,0.37353,0.03890,
+JNETPROPB:0.59931,0.03767,0.31300,0.54697,0.01490,0.41391,0.55820,0.01816,0.38620,0.82780,0.00804,0.16764,0.86436,0.00416,0.14111,0.96423,0.00391,0.03569,0.94587,0.00483,0.05758,0.88110,0.01273,0.13718,0.57335,0.02654,0.44509,0.17935,0.02373,0.80108,0.08085,0.00825,0.91351,0.06739,0.00450,0.93803,0.11202,0.00730,0.88142,0.41953,0.00953,0.55868,0.64171,0.00894,0.34807,0.74660,0.00831,0.27522,0.78367,0.00952,0.27786,0.54376,0.01578,0.49285,0.18080,0.01695,0.78463,0.05922,0.01157,0.90794,0.03565,0.02045,0.91548,0.12377,0.02896,0.77671,0.58102,0.05600,0.22143,0.82750,0.03376,0.07013,0.86371,0.02169,0.08984,0.81881,0.04410,0.14200,0.60784,0.05837,0.36725,0.27275,0.10034,0.53452,0.12405,0.28672,0.44961,0.07683,0.43094,0.40783,0.05134,0.55252,0.37353,0.03890,0.52815,0.46401,0.03979,
+JNETPROPC:0.54697,0.01490,0.41391,0.55820,0.01816,0.38620,0.82780,0.00804,0.16764,0.86436,0.00416,0.14111,0.96423,0.00391,0.03569,0.94587,0.00483,0.05758,0.88110,0.01273,0.13718,0.57335,0.02654,0.44509,0.17935,0.02373,0.80108,0.08085,0.00825,0.91351,0.06739,0.00450,0.93803,0.11202,0.00730,0.88142,0.41953,0.00953,0.55868,0.64171,0.00894,0.34807,0.74660,0.00831,0.27522,0.78367,0.00952,0.27786,0.54376,0.01578,0.49285,0.18080,0.01695,0.78463,0.05922,0.01157,0.90794,0.03565,0.02045,0.91548,0.12377,0.02896,0.77671,0.58102,0.05600,0.22143,0.82750,0.03376,0.07013,0.86371,0.02169,0.08984,0.81881,0.04410,0.14200,0.60784,0.05837,0.36725,0.27275,0.10034,0.53452,0.12405,0.28672,0.44961,0.07683,0.43094,0.40783,0.05134,0.55252,0.37353,0.03890,0.52815,0.46401,0.03979,0.40515,0.56556,0.03815,
+JNETHMM:-,-,-,-,E,E,E,E,E,E,-,-,-,-,-,E,E,E,E,-,-,-,-,E,E,E,E,E,-,-,H,H,H,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,E,E,E,E,-,-,E,E,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,E,E,E,E,E,E,E,E,-,-,-,-,E,E,E,E,-,
+JNETALIGN:-,-,-,E,E,E,E,E,-,-,-,-,-,-,E,-,-,-,-,-,-,E,E,E,E,H,H,H,H,H,-,-,-,-,-,-,-,E,-,-,-,-,-,-,-,-,-,-,-,-,E,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,H,-,-,-,-,-,-,E,E,E,E,E,E,-,-,-,-,-,E,E,E,E,E,E,H,H,H,-,-,-,-,
+align1;Sequence0/1.97:A,S,Y,K,V,K,L,I,T,P,D,G,P,I,E,F,D,C,P,D,D,V,Y,I,L,D,Q,A,E,E,A,G,H,D,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,I,A,G,G,A,V,D,Q,T,D,G,N,F,L,D,D,D,Q,L,E,E,G,W,V,L,T,C,V,A,Y,P,Q,S,D,V,T,I,E,T,H,K,E,A,E,L,V,G,
+align2;Sequence1/1.144:A,S,Y,K,V,K,L,I,T,P,D,G,P,I,E,F,D,C,P,D,N,V,Y,I,L,D,Q,A,E,E,A,G,H,D,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,I,A,G,G,A,V,D,Q,T,D,G,N,F,L,D,D,D,Q,L,E,E,G,W,V,L,T,C,V,A,Y,P,Q,S,D,V,T,I,E,T,H,K,E,A,E,L,V,G,
+align3;Sequence2/1.144:A,S,Y,K,V,K,L,I,T,P,E,G,P,I,E,F,E,C,P,D,D,V,Y,I,L,D,Q,A,E,E,E,G,H,D,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,V,T,A,G,S,V,D,Q,S,D,G,N,F,L,D,E,D,Q,E,A,A,G,F,V,L,T,C,V,A,Y,P,K,G,D,V,T,I,E,T,H,K,E,E,E,L,T,A,
+align4;Sequence3/1.144:A,S,Y,K,V,K,L,I,T,P,D,G,P,I,E,F,E,C,P,D,D,V,Y,I,L,D,Q,A,E,E,E,G,H,D,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,V,T,A,G,T,V,D,Q,S,D,G,K,F,L,D,D,D,Q,E,A,A,G,F,V,L,T,C,V,A,Y,P,K,C,D,V,T,I,E,T,H,K,E,E,E,L,T,A,
+align5;Sequence4/1.149:A,S,Y,K,V,K,L,V,T,P,D,G,T,Q,E,F,E,C,P,S,D,V,Y,I,L,D,H,A,E,E,V,G,I,D,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,V,V,G,G,E,V,D,Q,S,D,G,S,F,L,D,D,E,Q,I,E,A,G,F,V,L,T,C,V,A,Y,P,T,S,D,V,V,I,E,T,H,K,E,E,D,L,T,A,
+align6;Sequence5/1.152:A,T,Y,K,V,K,L,I,T,P,E,G,P,Q,E,F,D,C,P,D,D,V,Y,I,L,D,H,A,E,E,V,G,I,E,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,V,V,N,G,N,V,N,Q,E,D,G,S,F,L,D,D,E,Q,I,E,G,G,W,V,L,T,C,V,A,F,P,T,S,D,V,T,I,E,T,H,K,E,E,E,L,T,A,
+align7;Sequence6/1.148:A,A,Y,K,V,T,L,V,T,P,E,G,K,Q,E,L,E,C,P,D,D,V,Y,I,L,D,A,A,E,E,A,G,I,D,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,V,T,S,G,S,V,N,Q,D,D,G,S,F,L,D,D,D,Q,I,K,E,G,W,V,L,T,C,V,A,Y,P,T,G,D,V,T,I,E,T,H,K,E,E,E,L,T,A,
+align8;Sequence7/1.147:A,A,Y,K,V,T,L,V,T,P,T,G,N,V,E,F,Q,C,P,D,D,V,Y,I,L,D,A,A,E,E,E,G,I,D,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,L,K,T,G,S,L,N,Q,D,D,Q,S,F,L,D,D,D,Q,I,D,E,G,W,V,L,T,C,A,A,Y,P,V,S,D,V,T,I,E,T,H,K,E,E,E,L,T,A,
+align9;Sequence8/1.96:A,T,Y,K,V,K,F,I,T,P,E,G,E,Q,E,V,E,C,D,D,D,V,Y,V,L,D,A,A,E,E,A,G,I,D,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,V,V,S,G,S,V,D,Q,S,D,Q,S,F,L,D,D,D,Q,I,A,E,G,F,V,L,T,C,A,A,Y,P,T,S,D,V,T,I,E,T,H,R,E,E,D,M,V,.,
+align10;Sequence9/1.148:A,T,Y,K,V,K,F,I,T,P,E,G,E,L,E,V,E,C,D,D,D,V,Y,V,L,D,A,A,E,E,A,G,I,D,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,V,V,S,G,S,V,D,Q,S,D,Q,S,F,L,D,D,E,Q,I,G,E,G,F,V,L,T,C,A,A,Y,P,T,S,D,V,T,I,E,T,H,K,E,E,D,I,V,.,
+align11;Sequence10/1.96:A,T,Y,K,V,K,F,I,T,P,E,G,E,Q,E,V,E,C,D,D,D,V,Y,V,L,D,A,A,E,E,A,G,I,D,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,V,V,S,G,F,V,D,Q,S,D,E,S,F,L,D,D,D,Q,I,A,E,G,F,V,L,T,C,A,A,Y,P,T,S,D,V,T,I,E,T,H,K,E,E,E,L,V,.,
+align12;Sequence11/1.148:A,T,Y,K,V,K,F,I,T,P,E,G,E,Q,E,V,E,C,E,E,D,V,Y,V,L,D,A,A,E,E,A,G,L,D,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,V,V,S,G,S,I,D,Q,S,D,Q,S,F,L,D,D,E,Q,M,S,E,G,Y,V,L,T,C,V,A,Y,P,T,S,D,V,V,I,E,T,H,K,E,E,A,I,M,.,
+align13;Sequence12/1.118:A,T,Y,K,V,K,F,I,T,P,E,G,E,Q,E,V,E,C,E,E,D,V,Y,V,L,D,A,A,E,E,A,G,L,D,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,V,V,S,G,S,I,D,Q,S,D,Q,S,F,L,D,D,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,
+align14;Sequence13/1.150:A,T,Y,N,V,K,L,I,T,P,E,G,E,V,E,L,Q,V,P,D,D,V,Y,I,L,D,Q,A,E,E,D,G,I,D,L,P,Y,S,C,R,A,G,S,C,S,S,C,A,G,K,V,V,S,G,S,V,D,Q,S,D,Q,S,Y,L,D,D,G,Q,I,A,D,G,W,V,L,T,C,H,A,Y,P,T,S,D,V,V,I,E,T,H,K,E,E,E,L,T,G,
+align15;Sequence14/1.140:A,T,Y,N,V,K,L,I,T,P,E,G,E,V,E,L,Q,V,P,D,D,V,Y,I,L,D,F,A,E,E,E,G,I,D,L,P,F,S,C,R,A,G,S,C,S,S,C,A,G,K,V,V,S,G,S,V,D,Q,S,D,Q,S,F,L,N,D,N,Q,V,A,D,G,W,V,L,T,C,A,A,Y,P,T,S,D,V,V,I,E,T,H,K,E,D,D,L,L,.,
+jpred:-,-,-,-,E,E,E,E,E,E,-,-,-,-,-,E,E,E,E,-,-,-,-,E,E,E,E,E,-,H,H,H,H,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,E,E,E,E,-,-,E,E,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,E,E,E,E,E,E,E,E,-,-,-,-,E,E,E,E,-,
diff --git a/examples-jbake/assets/plantfdx.fa b/examples-jbake/assets/plantfdx.fa
new file mode 100644 (file)
index 0000000..1412a5a
--- /dev/null
@@ -0,0 +1,60 @@
+>FER_CAPAA/1-97
+----------------------------------------------------------ASYKVKLITPDGPI
+EFDCPDDVYILDQAEEAGHDLPYSCRAGSCSSCAGKIAGGAVDQTDGNFLDDDQLEEGWVLTCVAYPQSDVT
+IETHKEAELVG-
+>FER_CAPAN/1-144
+------MASVSATMISTSFMPRKPAVTSLKPIP-NVG-EALFGLKS---ANGGKVTCMASYKVKLITPDGPI
+EFDCPDNVYILDQAEEAGHDLPYSCRAGSCSSCAGKIAGGAVDQTDGNFLDDDQLEEGWVLTCVAYPQSDVT
+IETHKEAELVG-
+>FER1_SOLLC/1-144
+------MASISGTMISTSFLPRKPAVTSLKAIS-NVG-EALFGLKS---GRNGRITCMASYKVKLITPEGPI
+EFECPDDVYILDQAEEEGHDLPYSCRAGSCSSCAGKVTAGSVDQSDGNFLDEDQEAAGFVLTCVAYPKGDVT
+IETHKEEELTA-
+>Q93XJ9_SOLTU/1-144
+------MASISGTMISTSFLPRKPVVTSLKAIS-NVG-EALFGLKS---GRNGRITCMASYKVKLITPDGPI
+EFECPDDVYILDQAEEEGHDLPYSCRAGSCSSCAGKVTAGTVDQSDGKFLDDDQEAAGFVLTCVAYPKCDVT
+IETHKEEELTA-
+>FER1_PEA/1-149
+---MATTPALYGTAVSTSFLRTQPMPMSVTTTKAFSN--GFLGLKT-SLKRGDLAVAMASYKVKLVTPDGTQ
+EFECPSDVYILDHAEEVGIDLPYSCRAGSCSSCAGKVVGGEVDQSDGSFLDDEQIEAGFVLTCVAYPTSDVV
+IETHKEEDLTA-
+>Q7XA98_TRIPR/1-152
+---MATTPALYGTAVSTSFMRRQPVPMSVATTTTTKAFPSGFGLKSVSTKRGDLAVAMATYKVKLITPEGPQ
+EFDCPDDVYILDHAEEVGIELPYSCRAGSCSSCAGKVVNGNVNQEDGSFLDDEQIEGGWVLTCVAFPTSDVT
+IETHKEEELTA-
+>FER1_MESCR/1-148
+--MAATTAALSGATMSTAFAPKT--PPMTAALPTNVG-RALFGLKS--SASRGRVTAMAAYKVTLVTPEGKQ
+ELECPDDVYILDAAEEAGIDLPYSCRAGSCSSCAGKVTSGSVNQDDGSFLDDDQIKEGWVLTCVAYPTGDVT
+IETHKEEELTA-
+>FER1_SPIOL/1-147
+----MAATTTTMMGMATTFVPKPQAPPMMAALPSNTG-RSLFGLKT--GSRGGRMT-MAAYKVTLVTPTGNV
+EFQCPDDVYILDAAEEEGIDLPYSCRAGSCSSCAGKLKTGSLNQDDQSFLDDDQIDEGWVLTCAAYPVSDVT
+IETHKEEELTA-
+>FER3_RAPSA/1-96
+----------------------------------------------------------ATYKVKFITPEGEQ
+EVECDDDVYVLDAAEEAGIDLPYSCRAGSCSSCAGKVVSGSVDQSDQSFLDDDQIAEGFVLTCAAYPTSDVT
+IETHREEDMV--
+>FER1_ARATH/1-148
+----MASTALSSAIVGTSFIRRSPAPISLRSLPSANT-QSLFGLKS-GTARGGRVTAMATYKVKFITPEGEL
+EVECDDDVYVLDAAEEAGIDLPYSCRAGSCSSCAGKVVSGSVDQSDQSFLDDEQIGEGFVLTCAAYPTSDVT
+IETHKEEDIV--
+>FER_BRANA/1-96
+----------------------------------------------------------ATYKVKFITPEGEQ
+EVECDDDVYVLDAAEEAGIDLPYSCRAGSCSSCAGKVVSGFVDQSDESFLDDDQIAEGFVLTCAAYPTSDVT
+IETHKEEELV--
+>FER2_ARATH/1-148
+----MASTALSSAIVSTSFLRRQQTPISLRSLPFANT-QSLFGLKS-STARGGRVTAMATYKVKFITPEGEQ
+EVECEEDVYVLDAAEEAGLDLPYSCRAGSCSSCAGKVVSGSIDQSDQSFLDDEQMSEGYVLTCVAYPTSDVV
+IETHKEEAIM--
+>Q93Z60_ARATH/1-118
+----MASTALSSAIVSTSFLRRQQTPISLRSLPFANT-QSLFGLKS-STARGGRVTAMATYKVKFITPEGEQ
+EVECEEDVYVLDAAEEAGLDLPYSCRAGSCSSCAGKVVSGSIDQSDQSFLDD--------------------
+------------
+>FER1_MAIZE/1-150
+MATVLGSPRAPAFFFSSSSLRAAPAPTAVALPAAKVG---IMGRSA---SSRRRLRAQATYNVKLITPEGEV
+ELQVPDDVYILDQAEEDGIDLPYSCRAGSCSSCAGKVVSGSVDQSDQSYLDDGQIADGWVLTCHAYPTSDVV
+IETHKEEELTGA
+>O80429_MAIZE/1-140
+---------MAATALSMSILRAPP-PCFSSPLRLRVAVAKPLAAPM----RRQLLRAQATYNVKLITPEGEV
+ELQVPDDVYILDFAEEEGIDLPFSCRAGSCSSCAGKVVSGSVDQSDQSFLNDNQVADGWVLTCAAYPTSDVV
+IETHKEDDLL--
diff --git a/examples-jbake/assets/plantfdx.features b/examples-jbake/assets/plantfdx.features
new file mode 100644 (file)
index 0000000..a23d152
--- /dev/null
@@ -0,0 +1,118 @@
+HELIX  d4d189
+MOD_RES        47e459
+TRANSIT        6f949b
+TURN   1d1e2d
+METAL  70686e
+SIGNAL 92c7dd
+VARIANT        60beac
+Pfam   dc206a
+CONFLICT       c46c6e
+STRAND 25c54c
+
+STARTGROUP     uniprot
+Iron-sulfur (2Fe-2S)   FER_CAPAA       -1      39      39      METAL
+Iron-sulfur (2Fe-2S)   FER_CAPAA       -1      44      44      METAL
+Iron-sulfur (2Fe-2S)   FER_CAPAA       -1      47      47      METAL
+Iron-sulfur (2Fe-2S)   FER_CAPAA       -1      77      77      METAL
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 8_83</a></html>   FER_CAPAA       -1      8       83      Pfam
+Chloroplast    FER_CAPAN       -1      1       47      TRANSIT
+Iron-sulfur (2Fe-2S)   FER_CAPAN       -1      86      86      METAL
+Iron-sulfur (2Fe-2S)   FER_CAPAN       -1      91      91      METAL
+Iron-sulfur (2Fe-2S)   FER_CAPAN       -1      94      94      METAL
+Iron-sulfur (2Fe-2S)   FER_CAPAN       -1      124     124     METAL
+Phosphothreonine       FER_CAPAN       -1      136     136     MOD_RES
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 55_130</a></html> FER_CAPAN       -1      55      130     Pfam
+Chloroplast    FER1_SOLLC      -1      1       47      TRANSIT
+Iron-sulfur (2Fe-2S)   FER1_SOLLC      -1      86      86      METAL
+Iron-sulfur (2Fe-2S)   FER1_SOLLC      -1      91      91      METAL
+Iron-sulfur (2Fe-2S)   FER1_SOLLC      -1      94      94      METAL
+Iron-sulfur (2Fe-2S)   FER1_SOLLC      -1      124     124     METAL
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 55_130</a></html> FER1_SOLLC      -1      55      130     Pfam
+Evidence: EI4  Q93XJ9_SOLTU    -1      1       48      SIGNAL
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 55_130</a></html> Q93XJ9_SOLTU    -1      55      130     Pfam
+Chloroplast    FER1_PEA        -1      1       52      TRANSIT
+L -> I (in strain: cv. Onward)         FER1_PEA        -1      59      59      VARIANT
+I -> L (in strain: cv. Onward)         FER1_PEA        -1      85      85      VARIANT
+Iron-sulfur (2Fe-2S)   FER1_PEA        -1      91      91      METAL
+Iron-sulfur (2Fe-2S)   FER1_PEA        -1      96      96      METAL
+Iron-sulfur (2Fe-2S)   FER1_PEA        -1      99      99      METAL
+Iron-sulfur (2Fe-2S)   FER1_PEA        -1      129     129     METAL
+YPTS -> PPPA (in Ref. 2)       FER1_PEA        -1      132     135     CONFLICT
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 60_135</a></html> FER1_PEA        -1      60      135     Pfam
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 63_138</a></html> Q7XA98_TRIPR    -1      63      138     Pfam
+Chloroplast    FER1_MESCR      -1      1       51      TRANSIT
+Iron-sulfur (2Fe-2S)   FER1_MESCR      -1      90      90      METAL
+Iron-sulfur (2Fe-2S)   FER1_MESCR      -1      95      95      METAL
+Iron-sulfur (2Fe-2S)   FER1_MESCR      -1      98      98      METAL
+Iron-sulfur (2Fe-2S)   FER1_MESCR      -1      128     128     METAL
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 59_134</a></html> FER1_MESCR      -1      59      134     Pfam
+Chloroplast    FER1_SPIOL      -1      1       50      TRANSIT
+STRAND FER1_SPIOL      -1      52      59      STRAND
+TURN   FER1_SPIOL      -1      60      61      TURN
+STRAND FER1_SPIOL      -1      62      69      STRAND
+TURN   FER1_SPIOL      -1      70      71      TURN
+HELIX  FER1_SPIOL      -1      74      80      HELIX
+TURN   FER1_SPIOL      -1      81      82      TURN
+STRAND FER1_SPIOL      -1      88      92      STRAND
+Iron-sulfur (2Fe-2S)   FER1_SPIOL      -1      89      89      METAL
+Iron-sulfur (2Fe-2S)   FER1_SPIOL      -1      94      94      METAL
+TURN   FER1_SPIOL      -1      96      97      TURN
+Iron-sulfur (2Fe-2S)   FER1_SPIOL      -1      97      97      METAL
+STRAND FER1_SPIOL      -1      98      104     STRAND
+TURN   FER1_SPIOL      -1      109     110     TURN
+HELIX  FER1_SPIOL      -1      116     121     HELIX
+TURN   FER1_SPIOL      -1      122     122     TURN
+STRAND FER1_SPIOL      -1      123     125     STRAND
+HELIX  FER1_SPIOL      -1      126     128     HELIX
+Iron-sulfur (2Fe-2S)   FER1_SPIOL      -1      127     127     METAL
+STRAND FER1_SPIOL      -1      130     133     STRAND
+STRAND FER1_SPIOL      -1      135     138     STRAND
+HELIX  FER1_SPIOL      -1      142     144     HELIX
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 58_133</a></html> FER1_SPIOL      -1      58      133     Pfam
+I -> V         FER3_RAPSA      -1      8       8       VARIANT
+Iron-sulfur (2Fe-2S)   FER3_RAPSA      -1      39      39      METAL
+Iron-sulfur (2Fe-2S)   FER3_RAPSA      -1      44      44      METAL
+Iron-sulfur (2Fe-2S)   FER3_RAPSA      -1      47      47      METAL
+S -> T         FER3_RAPSA      -1      55      55      VARIANT
+Iron-sulfur (2Fe-2S)   FER3_RAPSA      -1      77      77      METAL
+R -> K         FER3_RAPSA      -1      91      91      VARIANT
+M -> V         FER3_RAPSA      -1      95      95      VARIANT
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 8_83</a></html>   FER3_RAPSA      -1      8       83      Pfam
+Chloroplast    FER1_ARATH      -1      1       52      TRANSIT
+Iron-sulfur (2Fe-2S)   FER1_ARATH      -1      91      91      METAL
+Iron-sulfur (2Fe-2S)   FER1_ARATH      -1      96      96      METAL
+Iron-sulfur (2Fe-2S)   FER1_ARATH      -1      99      99      METAL
+Iron-sulfur (2Fe-2S)   FER1_ARATH      -1      129     129     METAL
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 60_135</a></html> FER1_ARATH      -1      60      135     Pfam
+Iron-sulfur (2Fe-2S)   FER_BRANA       -1      39      39      METAL
+Iron-sulfur (2Fe-2S)   FER_BRANA       -1      44      44      METAL
+Iron-sulfur (2Fe-2S)   FER_BRANA       -1      47      47      METAL
+Iron-sulfur (2Fe-2S)   FER_BRANA       -1      77      77      METAL
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 8_83</a></html>   FER_BRANA       -1      8       83      Pfam
+Chloroplast    FER2_ARATH      -1      1       52      TRANSIT
+Iron-sulfur (2Fe-2S)   FER2_ARATH      -1      91      91      METAL
+Iron-sulfur (2Fe-2S)   FER2_ARATH      -1      96      96      METAL
+Iron-sulfur (2Fe-2S)   FER2_ARATH      -1      99      99      METAL
+Iron-sulfur (2Fe-2S)   FER2_ARATH      -1      129     129     METAL
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 60_135</a></html> FER2_ARATH      -1      60      135     Pfam
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 60_118</a></html> Q93Z60_ARATH    -1      60      118     Pfam
+Chloroplast    FER1_MAIZE      -1      1       52      TRANSIT
+STRAND FER1_MAIZE      -1      57      59      STRAND
+STRAND FER1_MAIZE      -1      72      74      STRAND
+HELIX  FER1_MAIZE      -1      76      80      HELIX
+TURN   FER1_MAIZE      -1      81      84      TURN
+STRAND FER1_MAIZE      -1      90      97      STRAND
+Iron-sulfur (2Fe-2S)   FER1_MAIZE      -1      91      91      METAL
+Iron-sulfur (2Fe-2S)   FER1_MAIZE      -1      96      96      METAL
+TURN   FER1_MAIZE      -1      98      99      TURN
+Iron-sulfur (2Fe-2S)   FER1_MAIZE      -1      99      99      METAL
+TURN   FER1_MAIZE      -1      118     119     TURN
+HELIX  FER1_MAIZE      -1      120     123     HELIX
+TURN   FER1_MAIZE      -1      128     129     TURN
+Iron-sulfur (2Fe-2S)   FER1_MAIZE      -1      129     129     METAL
+STRAND FER1_MAIZE      -1      132     135     STRAND
+STRAND FER1_MAIZE      -1      137     141     STRAND
+TURN   FER1_MAIZE      -1      142     142     TURN
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 60_135</a></html> FER1_MAIZE      -1      60      135     Pfam
+<html>Description: Fer2 Status: True Positive <a href="http://pfam.sanger.ac.uk/family/PF00111">Pfam 52_127</a></html> O80429_MAIZE    -1      52      127     Pfam
+ENDGROUP       uniprot
diff --git a/examples-jbake/assets/uniref50.fa b/examples-jbake/assets/uniref50.fa
new file mode 100755 (executable)
index 0000000..53698a4
--- /dev/null
@@ -0,0 +1,60 @@
+>FER_CAPAA Ferredoxin\r
+-----------------------------------------------------------ASYKVKLITPDGP\r
+IEFDCPDDVYILDQAEEAGHDLPYSCRAGSCSSCAGKIAGGAVDQTDGNFLDDDQLEEGWVLTCVAYPQSDV\r
+TIETHKEAELVG-\r
+>FER_CAPAN Ferredoxin, chloroplast precursor\r
+MA------SVSATMISTSFMPRKPAVTSL-KPIPNVGE--ALFGLKS-A--NGGKVTCMASYKVKLITPDGP\r
+IEFDCPDNVYILDQAEEAGHDLPYSCRAGSCSSCAGKIAGGAVDQTDGNFLDDDQLEEGWVLTCVAYPQSDV\r
+TIETHKEAELVG-\r
+>FER1_SOLLC Ferredoxin-1, chloroplast precursor\r
+MA------SISGTMISTSFLPRKPAVTSL-KAISNVGE--ALFGLKS-G--RNGRITCMASYKVKLITPEGP\r
+IEFECPDDVYILDQAEEEGHDLPYSCRAGSCSSCAGKVTAGSVDQSDGNFLDEDQEAAGFVLTCVAYPKGDV\r
+TIETHKEEELTA-\r
+>Q93XJ9_SOLTU Ferredoxin I precursor\r
+MA------SISGTMISTSFLPRKPVVTSL-KAISNVGE--ALFGLKS-G--RNGRITCMASYKVKLITPDGP\r
+IEFECPDDVYILDQAEEEGHDLPYSCRAGSCSSCAGKVTAGTVDQSDGKFLDDDQEAAGFVLTCVAYPKCDV\r
+TIETHKEEELTA-\r
+>FER1_PEA Ferredoxin-1, chloroplast precursor\r
+MATT---PALYGTAVSTSFLRTQPMPMSV-TTTKAFSN--GFLGLKT-SLKRGDLAVAMASYKVKLVTPDGT\r
+QEFECPSDVYILDHAEEVGIDLPYSCRAGSCSSCAGKVVGGEVDQSDGSFLDDEQIEAGFVLTCVAYPTSDV\r
+VIETHKEEDLTA-\r
+>Q7XA98_TRIPR Ferredoxin I\r
+MATT---PALYGTAVSTSFMRRQPVPMSV-ATTTTTKAFPSGFGLKSVSTKRGDLAVAMATYKVKLITPEGP\r
+QEFDCPDDVYILDHAEEVGIELPYSCRAGSCSSCAGKVVNGNVNQEDGSFLDDEQIEGGWVLTCVAFPTSDV\r
+TIETHKEEELTA-\r
+>FER1_MESCR Ferredoxin-1, chloroplast precursor\r
+MAAT--TAALSGATMSTAFAPK--TPPMTAALPTNVGR--ALFGLKS-SASR-GRVTAMAAYKVTLVTPEGK\r
+QELECPDDVYILDAAEEAGIDLPYSCRAGSCSSCAGKVTSGSVNQDDGSFLDDDQIKEGWVLTCVAYPTGDV\r
+TIETHKEEELTA-\r
+>FER1_SPIOL Ferredoxin-1, chloroplast precursor\r
+MAAT--TTTMMG--MATTFVPKPQAPPMMAALPSNTGR--SLFGLKT-GSR--GGRMTMAAYKVTLVTPTGN\r
+VEFQCPDDVYILDAAEEEGIDLPYSCRAGSCSSCAGKLKTGSLNQDDQSFLDDDQIDEGWVLTCAAYPVSDV\r
+TIETHKEEELTA-\r
+>FER3_RAPSA Ferredoxin, leaf L-A\r
+-----------------------------------------------------------ATYKVKFITPEGE\r
+QEVECDDDVYVLDAAEEAGIDLPYSCRAGSCSSCAGKVVSGSVDQSDQSFLDDDQIAEGFVLTCAAYPTSDV\r
+TIETHREEDMV--\r
+>FER1_ARATH Ferredoxin-1, chloroplast precursor\r
+MAST----ALSSAIVGTSFIRRSPAPISLRSLPSANTQ--SLFGLKS-GTARGGRVTAMATYKVKFITPEGE\r
+LEVECDDDVYVLDAAEEAGIDLPYSCRAGSCSSCAGKVVSGSVDQSDQSFLDDEQIGEGFVLTCAAYPTSDV\r
+TIETHKEEDIV--\r
+>FER_BRANA Ferredoxin\r
+-----------------------------------------------------------ATYKVKFITPEGE\r
+QEVECDDDVYVLDAAEEAGIDLPYSCRAGSCSSCAGKVVSGFVDQSDESFLDDDQIAEGFVLTCAAYPTSDV\r
+TIETHKEEELV--\r
+>FER2_ARATH Ferredoxin-2, chloroplast precursor\r
+MAST----ALSSAIVSTSFLRRQQTPISLRSLPFANTQ--SLFGLKS-STARGGRVTAMATYKVKFITPEGE\r
+QEVECEEDVYVLDAAEEAGLDLPYSCRAGSCSSCAGKVVSGSIDQSDQSFLDDEQMSEGYVLTCVAYPTSDV\r
+VIETHKEEAIM--\r
+>Q93Z60_ARATH At1g10960/T19D16_12\r
+MAST----ALSSAIVSTSFLRRQQTPISLRSLPFANTQ--SLFGLKS-STARGGRVTAMATYKVKFITPEGE\r
+QEVECEEDVYVLDAAEEAGLDLPYSCRAGSCSSCAGKVVSGSIDQSDQSFLDD-------------------\r
+-------------\r
+>FER1_MAIZE Ferredoxin-1, chloroplast precursor\r
+MATVLGSPRAPAFFFSSSSLRAAPAPTAV--ALPAAKV--GIMGRSA-SSRR--RLRAQATYNVKLITPEGE\r
+VELQVPDDVYILDQAEEDGIDLPYSCRAGSCSSCAGKVVSGSVDQSDQSYLDDGQIADGWVLTCHAYPTSDV\r
+VIETHKEEELTGA\r
+>O80429_MAIZE Ferredoxin\r
+MAAT---------ALSMSILR---APPPCFSSPLRLRV--AVAKPLA-APMRRQLLRAQATYNVKLITPEGE\r
+VELQVPDDVYILDFAEEEGIDLPFSCRAGSCSSCAGKVVSGSVDQSDQSFLNDNQVADGWVLTCAAYPTSDV\r
+VIETHKEDDLL--\r
diff --git a/examples-jbake/assets/uniref50_mz.fa b/examples-jbake/assets/uniref50_mz.fa
new file mode 100644 (file)
index 0000000..9974fc7
--- /dev/null
@@ -0,0 +1,30 @@
+>FER1_MAIZE/53-118 Ferredoxin-1, chloroplast precursor
+ATYNVKLITPEGEVELQVPDDVYILDQAEEDGIDLPYSCRAGSCSSCAGKVVSGSVDQSDQSYLDD
+>FER_CAPAA/1-66 Ferredoxin
+ASYKVKLITPDGPIEFDCPDDVYILDQAEEAGHDLPYSCRAGSCSSCAGKIAGGAVDQTDGNFLDD
+>FER_CAPAN/48-113 Ferredoxin, chloroplast precursor
+ASYKVKLITPDGPIEFDCPDNVYILDQAEEAGHDLPYSCRAGSCSSCAGKIAGGAVDQTDGNFLDD
+>FER1_SOLLC/48-113 Ferredoxin-1, chloroplast precursor
+ASYKVKLITPEGPIEFECPDDVYILDQAEEEGHDLPYSCRAGSCSSCAGKVTAGSVDQSDGNFLDE
+>Q93XJ9_SOLTU/48-113 Ferredoxin I precursor
+ASYKVKLITPDGPIEFECPDDVYILDQAEEEGHDLPYSCRAGSCSSCAGKVTAGTVDQSDGKFLDD
+>FER1_PEA/53-118 Ferredoxin-1, chloroplast precursor
+ASYKVKLVTPDGTQEFECPSDVYILDHAEEVGIDLPYSCRAGSCSSCAGKVVGGEVDQSDGSFLDD
+>Q7XA98_TRIPR/56-121 Ferredoxin I
+ATYKVKLITPEGPQEFDCPDDVYILDHAEEVGIELPYSCRAGSCSSCAGKVVNGNVNQEDGSFLDD
+>FER1_MESCR/52-117 Ferredoxin-1, chloroplast precursor
+AAYKVTLVTPEGKQELECPDDVYILDAAEEAGIDLPYSCRAGSCSSCAGKVTSGSVNQDDGSFLDD
+>FER1_SPIOL/51-116 Ferredoxin-1, chloroplast precursor
+AAYKVTLVTPTGNVEFQCPDDVYILDAAEEEGIDLPYSCRAGSCSSCAGKLKTGSLNQDDQSFLDD
+>FER3_RAPSA/1-66 Ferredoxin, leaf L-A
+ATYKVKFITPEGEQEVECDDDVYVLDAAEEAGIDLPYSCRAGSCSSCAGKVVSGSVDQSDQSFLDD
+>FER1_ARATH/53-118 Ferredoxin-1, chloroplast precursor
+ATYKVKFITPEGELEVECDDDVYVLDAAEEAGIDLPYSCRAGSCSSCAGKVVSGSVDQSDQSFLDD
+>FER_BRANA/1-66 Ferredoxin
+ATYKVKFITPEGEQEVECDDDVYVLDAAEEAGIDLPYSCRAGSCSSCAGKVVSGFVDQSDESFLDD
+>FER2_ARATH/53-118 Ferredoxin-2, chloroplast precursor
+ATYKVKFITPEGEQEVECEEDVYVLDAAEEAGLDLPYSCRAGSCSSCAGKVVSGSIDQSDQSFLDD
+>Q93Z60_ARATH/53-118 At1g10960/T19D16_12
+ATYKVKFITPEGEQEVECEEDVYVLDAAEEAGLDLPYSCRAGSCSSCAGKVVSGSIDQSDQSFLDD
+>O80429_MAIZE/45-110 Ferredoxin
+ATYNVKLITPEGEVELQVPDDVYILDFAEEEGIDLPFSCRAGSCSSCAGKVVSGSVDQSDQSFLND
diff --git a/examples-jbake/content/appletParameters.html b/examples-jbake/content/appletParameters.html
new file mode 100644 (file)
index 0000000..edf937b
--- /dev/null
@@ -0,0 +1,438 @@
+title=Applet Parameters
+type=page
+jvl=jalviewApplet.jar
+jmol=JmolApplet-12.2.4.jar
+status=published
+~~~~~~
+        <p>
+                                               <strong>Quick Links:<ul><li>Download the applet jar file from <a
+                                                       href="jalviewApplet.jar">here</a>
+                                               </li>
+                                               <li>Parameters are described <a href="#parameters">below</a></li>
+                                               <li>The javascript API is described <a
+                                                               href="jalviewLiteJs.html">here</a></li>
+                                               </ul></strong>
+                                       </p>
+     <p>Additional <a href="#appletdeploymentnotes">applet deployment notes are below</a>.</p>
+           <p><h2>Applet Parameters</h2><br/>The applet takes the following initialisation parameters.</p>
+        <a name="parameters"></a>        <table width="97%" class="borderTable" align="center" >
+          <tr> 
+            <td width="103" height="23"><strong>&lt;param name=&quot;&quot;</strong></td>
+            <td width="80" ><strong>value=&quot;&quot;&gt;</strong></td>
+            <td width="100%"><strong>Description</strong></td>
+          </tr>
+          <tr>
+          <td>permissions</td>
+          <td>sandbox</td>
+          <td><strong>This parameter is necessary, and must have the value <em>sandbox</em> to allow the JalviewLite applet to run.</strong></td>
+          </tr>
+          <tr> 
+            <td>file</td>
+            <td>fileName</td>
+            <td>The file to open, must be on same server as the applet.</td>
+          </tr>
+          <tr> 
+            <td>sequence1,<br>
+              sequence2,<br>
+              sequence3</td>
+            <td>sequence in (preferably) PFAM or Fasta format</td>
+            <td>The alignment can be added as a series of sequences instead of 
+              from a file.</td>
+          </tr>
+          <tr> 
+            <td>tree</td>
+            <td>fileName</td>
+            <td>Tree file in Newick format</td>
+          </tr>
+          <tr> 
+            <td>features</td>
+            <td>fileName</td>
+            <td>Jalview Features file to be applied to the alignment</td>
+          </tr>
+          <tr> 
+            <td>annotations</td>
+            <td>fileName</td>
+            <td>Jalview Annotation file will be added to the alignment</td>
+          </tr>
+          <tr> 
+            <td>jnetfile</td>
+            <td>fileName</td>
+            <td>Secondary structure predictions from a <a
+            href="http://www.compbio.dundee.ac.uk/~www-jpred/">Jnet</a> Concise 
+              file will be added to the first sequence in the alignment.</td>
+          </tr>
+          <tr> 
+            <td>PDBfile(x)</td>
+            <td><p>fileName seq1 seq2 seq3</p>
+              <p>or</p>
+              <p>fileName A=seq1 B=seq2 C=seq3</p></td>
+            <td>PDB file which is to be associated with a sequence, followed by 
+              space separated list of alignment sequence ids. PDB chains can be 
+              specifed to map to particular sequence by using A=SeqA notation</td>
+          </tr>
+          <tr> 
+            <td><p>PDBSeq<br>
+                *Not needed post Jalview 2.3, use PDBFile instead</p></td>
+            <td>SequenceId</td>
+            <td>The sequence to associate a PDB file with. Note the value is case 
+              sensitive.</td>
+          </tr>
+          <tr> 
+            <td>defaultColour</td>
+            <td> <em>One of: </em><br>
+              Clustal, Blosum62, % Identity, Hydrophobic, Zappo, Taylor, Helix 
+              Propensity, Strand Propensity, Turn Propensity, Buried Index, Nucleotide</td>
+            <td>Default is no colour.</td>
+          </tr>
+          <tr> 
+            <td>userDefinedColour</td>
+            <td><p><em>Example:</em><br>
+                D,E=red; K,R,H=0022FF; c=yellow</p></td>
+            <td>Define residue colours</td>
+          </tr>
+          <tr> 
+            <td height="35">showFullId</td>
+            <td>true <em>or</em> false</td>
+            <td>if true displays start and end residue at the end of sequence 
+              Id.</td>
+          </tr>
+          <tr> 
+            <td>showAnnotation</td>
+            <td>true <em>or</em> false</td>
+            <td>If true shows the annotation panel below the alignment.</td>
+          </tr>
+          <tr> 
+            <td>showConservation</td>
+            <td>true <em>or</em> false</td>
+            <td>Default is true.</td>
+          </tr>
+          <tr> 
+            <td>showQuality</td>
+            <td>true <em>or</em> false</td>
+            <td>Default is true.</td>
+          </tr>
+          <tr> 
+            <td>showConsensus</td>
+            <td>true <em>or</em> false</td>
+            <td>Default is true.</td>
+          </tr>
+          <tr> 
+            <td>sortBy</td>
+            <td> Id <em>, </em> Pairwise Identity<em>, or</em> Length</td>
+            <td> Sorts the alignment on startup</td>
+          </tr>
+          <tr> 
+            <td>RGB</td>
+            <td>colour as hex string</td>
+            <td>Background colour for applet button - purely cosmetic to blend 
+              in with your web page. For orange, enter the value FF6600</td>
+          </tr>
+          <tr> 
+            <td>embedded</td>
+            <td>true <em>or</em> false</td>
+            <td>The applet is embedded in the web page, the &quot;Start Jalview&quot; 
+              button is not displayed.</td>
+          </tr>
+          <tr> 
+            <td>windowWidth</td>
+            <td>value</td>
+            <td>frame width</td>
+          </tr>
+          <tr> 
+            <td>windowHeight</td>
+            <td>value</td>
+            <td>frame height</td>
+          </tr>
+          <tr> 
+            <td>label</td>
+            <td>label text</td>
+            <td>Change text for the Launch Jalview Button</td>
+          </tr>
+          <tr> 
+            <td>wrap</td>
+            <td>true <em>or</em> false</td>
+            <td>Opens new windows in wrapped mode</td>
+          </tr>
+          <tr> 
+            <td>linkLabel_1</td>
+            <td>EMBL-EBI Search</td>
+            <td rowspan="2"><p>Right click on sequence id to see list of available 
+                links. Any new links MUST have $SEQUENCE_ID$ as part of the linkURL_n 
+                value. For multiple links, increment the label and url name by 
+                1. ie <br>
+                &lt;param name=&quot;linkLabel_2&quot; ..., <br>
+                &lt;param name=&quot;linkUrl_2&quot;....<br>
+              </p>
+              <p>Regular expressions may also be used (<em>since Jalview 2.4</em>) to process the ID string inserted into the URL:
+              <br>$SEQUENCE_ID=/&lt;regex to extract ID&gt;/=$<br><em>Use the debug flag to check parsing and make sure that special symbols are properly escaped (particularly when generating applet tags from CGI scripts). 
+              <br>Regex URL links are also applied to the description line (since Jalview 2.4.+).</em></p></td>
+          </tr>
+          <tr> 
+            <td> <p>
+            <br>
+                linkUrl_1<br>
+              </p></td>
+            <td><p><br>
+                http://www.ebi.ac.uk/ebisearch/<br/>search.ebi?db=allebi&query=$SEQUENCE_ID$</p>
+                                               </td>
+          </tr>
+          <tr> 
+            <td>showFeatureSettings</td>
+            <td>true <em>or</em> false</td>
+            <td>Shows the feature settings window when starting the applet</td>
+          </tr>
+          <tr>
+            <td>showfeaturegroups</td>
+            <td><em>separator</em> separated list of feature groups</td>
+            <td>Display the features in the given groups on the alignment</td>
+          </tr>
+          <tr>
+            <td>hidefeaturegroups</td>
+            <td><em>separator</em> separated list of feature groups</td>
+            <td>Hide the features in the given groups on the alignment
+            (will be overridden by showfeaturegroups for group names
+            found in both lists)</td>
+          </tr>
+          <tr> 
+            <td>application_url</td>
+            <td><p><em>URL of dynamic JNLP servlet,</em></p>
+              <p>http://www.jalview.org/services/launchApp</p></td>
+            <td>Launches full application with original alignment, features and 
+              annotations files used in applet</td>
+          </tr>
+          <tr>
+          <td>separator</td>
+          <td><em>non-empty separator string</em><br>default: |</td>
+          <td>string used to separate fields in list parameters (such as <em>showfeaturegroups</em>)</td>
+          </tr>
+          <tr><td>debug</td>
+          <td>true</td>
+          <td>Instruct the applet to output additional debug messages to the java console</td>
+          </tr>
+          <tr><td>nojmol</td>
+          <td>false</td>
+          <td>When set, do not try to find Jmol classes. Set this to supress URL not found errors appearing 
+          in server logs when Jmol is not available.
+          </td>
+          </tr>
+          <tr><td>showbutton</td>
+          <td>true</td>
+          <td>Show the jalview button on the page. When false, JalviewLite will open immediately.</td>
+          </tr>
+          </tr>
+                 <tr><td>sortByTree</td>
+                 <td>true or false (default is false)</td>
+                 <td>automatically sort the associated alignment view by the tree when a new tree is opened.</td>
+                 </tr>
+                 <tr>
+                  <td>showTreeBootstraps</td><td>true or false (default is true)</td><td>show or hide branch bootstraps</td>
+                       </tr>
+       <tr><td>showTreeDistances</td><td>true or false (default is true)</td><td>show or hide branch lengths</td></tr>
+       <tr><td>showUnlinkedTreeNodes</td><td>true or false (default is false)</td><td>indicate if unassociated nodes should be highlighted in the tree view</td>
+       </tr>
+          <tr><td>heightScale</td>
+          <td>1.0 or greater</td>
+          <td>Adjust the height of each cell in the alignment grid relative to the height of a character in the alignment font. (<em>since 2.5.1</em>)</td>
+          </tr>
+          <tr><td>widthScale</td>
+          <td>1.0 or greater</td>
+          <td>Adjust the width of each cell in the alignment grid relative to the width of a character in the alignment font. (<em>since 2.5.1</em>)</td>
+          </tr>
+          <tr><td>centrecolumnlabels</td>
+          <td>true of false (default is false)</td>
+          <td>When true, text labels associated with a column in the alignment will be shown centered with respect to the column. (<em>since 2.4</em>)</td>
+          <tr><td>showUnconserved</td>
+          <td>true of false (default is false)</td>
+          <td>When true, only gaps and symbols different to the consensus sequence for a column will be shown. Useful for visualizing alignments exhibiting low sequence variation, where it is important to highlight mutations. (<em>since 2.5</em>)</td>
+          </tr>
+          <tr><td>upperCase</td>
+          <td><em>bold</em> or other value</td>
+          <td>Indicate a text style to apply to uppercase sequence symbols. Currently, only <strong>bold</strong> is supported.</td>
+          </tr>
+          <tr><td>automaticScrolling</td>
+          <td>true of false (default is true)</td>
+          <td>When true, alignment panels will automatically scroll to show any regions of the alignment highlighted due to javascript events or when mousing over a position in an associated structure. (<em>since 2.6</em>)</td>
+          </tr>
+          
+          <tr><td>showGroupConsensus</td>
+          <td>true of false (default is false)</td>
+          <td>When true, shows consensus annotation row for any groups on the alignment. (<em>since 2.7</em>)</td>
+          </tr>
+          
+          <tr><td>showGroupConservation</td>
+          <td>true of false (default is false)</td>
+          <td>When true, shows amino-acid property conservation annotation row for any groups on the alignment. (<em>since 2.7</em>)</td>
+          </tr>
+          <tr><td>showConsensusHistogram</td>
+          <td>true of false (default is true)</td>
+          <td>When true, shows the percentage occurence of the consensus symbol for each column as a histogram above the consensus sequence row. (<em>since 2.7</em>)</td>
+          </tr>
+          <tr><td>showSequenceLogo</td>
+          <td>true of false (default is false)</td>
+          <td>When true, shows a sequence logo above the consensus sequence (overlaid above the Consensus Histogram, if visible, with symbols coloured using the alignment's default colourscheme). (<em>since 2.7</em>)</td>
+          </tr>
+          <tr><td>normaliseSequenceLogo</td>
+          <td>true of false (default is false)</td>
+          <td>When true, all sequence logos will be normalised (all symbol stacks add up to full height of annotation row), rather than being scaled according to the fraction of symbols identical to the consensus. (<em>since 2.8</em>)</td>
+          </tr>
+          <tr><td>oninit</td>
+          <td><em>after_init()</em></td>
+          <td>name of javascript function that will be called after the jalviewLite instance has completed its initialisation. (<em>since 2.7</em>)</td>
+          </tr>
+          <tr><td>relaxedidmatch</td>
+          <td><em>true or false (default is false)</em></td>
+          <td>When true, use stem based matching to identify sequences that match features imported from a GFF or Jalview sequence features file, and for associating PDB data (passed on PDBfile parguments) with sequences (based on a given destination sequence ID). (<em>since 2.7</em>)</td>
+          </tr>
+          <tr><td>alignpdbfiles</td>
+          <td><em>true or false (default is false)</em></td>
+          <td>When true, and jalviewLite is able to use jmol as a structure viewer, attempt to show a superposition of all structures loaded onto the alignment, superimposed using the aligned regions of corresponding sequences. [experimental] (<em>since 2.7</em>)</td>
+          </tr>
+          <tr><td>externalstructureviewer</td>
+          <td><em>true or false (default is false)</em></td>
+          <td>re-route jmol colouring commands, selection and mouseover events to an external viewer using javascript callbacks. [experimental] (<em>since 2.7</em>)</td>
+          
+          </tr>
+          <tr><td>annotationcolour_max</td>
+          <td>colour name or RGB hex triplet (default is red)</td>
+          <td>Default colour used for maximum value when shading by annotation. (<em>since 2.7</em>)</td>
+          </tr>
+          <tr><td>annotationcolour_min</td>
+          <td>colour name or RGB hex triplet (default is orange)</td>
+          <td>Default colour used for minimum value when shading by annotation. (<em>since 2.7</em>)</td>
+          </tr>
+          <tr><td>jalviewhelpurl</td>
+          <td>absolute or relative url or javascript function prefixed by <em>javascript:</em> (default is http://www.jalview.org/help.html)</td>
+          <td>Optional parameter allowing modification of the default Jalview Help URL normally opened when JalviewLite's 'Help' menu item is selected. (<em>since 2.7</em>)</td>
+          </tr>
+          <tr><td>resolvetocodebase</td>
+          <td>True or False (False)</td>
+          <td>Set to true to re-instate pre-JalviewLite 2.7 behaviour where relative URLs were prepended with the applet 'codebase' rather than the current document base URL before resolution. (<em>since 2.7</em>)</td>
+          </tr>
+          <tr><td>scoreFile</td>
+          <td>file</td>
+          <td>Multiple sequences aligment scores file. Currently is supported only the T-Coffee score_ascii file format</td>
+          </tr>
+                  </table>
+                  <p><h2><a name="appletdeploymentnotes"/>Notes on applet deployment</h2><br/>
+        <ul>
+          <li>Package all your data files into a single (or multiple) zip / jar 
+            files. This is very useful to reduce download time of large data files. 
+            The applet archive tag can take multiple entries separated by commas, 
+            eg<br>
+            <pre>&lt;applet code=&quot;jalview.bin.JalviewLite&quot;<em><strong> 
+            archive=&quot;jalviewApplet.jar, mydata.zip&quot;</strong></em>&gt;<br>
+            </pre></li>
+          <li> Use Jalview for input to a HTML form. For an example of how to 
+            code this using Javascript, click <a href="formComplete.html">here</a>. 
+            <br>
+          </li>
+          <li>Embed Jalview into the web page, without the &quot;Start Jalview&quot; 
+            button by setting the embed parameter to true;<br>
+            &lt;param name=&quot;embedded&quot;
+          value=&quot;true&quot;&gt; </li>
+        </ul>
+        <p><strong>**NEW FEATURES** in Jalview 2.8</strong></p>
+        <ul>
+        <li>Normalised sequence logo display
+        </li>
+        <li>RNA secondary structure annotation row
+        </li>
+<li>Jmol compatibility updated to Jmol 12.2.x series - <a href="JmolApplet-12.2.4.jar">download the JmolApplet here</a></li>
+<li>To use Jmol as the structure viewer for Jalview, you must include 
+            the jar file in the applet archive argument thus:<br>
+            <pre>archive=&quot;jalviewApplet.jar,Jmol-12.2.4.jar&quot;</pre>
+          </li>
+          <li>Jmol 12.2.x requires at least Java 1.6 to run in the clients web browser. If the client does not have 
+            Java 1.6, or if the Jmol-12.2.jar is not added to the archive, the 
+            original Jalview structure viewer will still be available. <br>
+          </li>
+          
+        </ul>
+        <p><strong>**NEW FEATURES** in Jalview 2.7</strong></p>
+        <ul>
+        <li>Javascript callbacks capabilities<ul><li>oninit parameter and methods for registering javascript handlers for selections, mouseovers and linking to Jmol applets on the page.</li>
+        <li>To use javascript callbacks, ensure the applet tag includes the '<a href="http://download.oracle.com/javase/6/docs/technotes/guides/plugin/developer_guide/java_js.html">mayscript</a>' attribute - either as a parameter (&lt;param name="mayscript" value="true"/;gt;) or as a bare attribute in the applet html tag).</li></ul>
+        </li>
+        <li>New <a href="jalviewLiteJs.html">jalviewLite java api</a> methods for selecting, highlighting, scrolling and reordering sequences in an alignment view.
+        </li></ul>
+        <p><strong>**NEW FEATURES** in Jalview 2.6</strong></p>
+        <ul>
+        <li>Jmol compatibility updated to Jmol 12.1.x series</li>
+          <li>Jalview 2.6 works only with Jmol version 12.1.13 or later. You can use the JmolApplet.jar from 
+          the Jmol binary distribution available at the Jmol Sourceforge site, 
+          or <a href="JmolApplet-12.1.13.jar">download the Jmol applet from here</a></li>
+          <li>Minimum recommended version of Java runtime for the applet is now 1.5 (JalviewLite v2.6 without the Jmol viewer may work ok on earlier Java environments but compatibility can no-longer be guaranteed).</li>
+  </ul>
+        <br><strong>**NEW FEATURES** in Jalview 2.5</strong></p>
+        <ul>
+        <li>New parameters to control display of tree annotation, width of alignment columns, and to disable the jalview button and check for Jmol on startup.</li>
+  </ul>        
+        <br><strong>**NEW FEATURES** in Jalview 2.4</strong></p>
+        <ul>
+        <li>New applet API methods for feature display control, views, and obtaining current selection via javascript.</li>
+          <li>Group show and hide parameters:
+        &quot;showfeaturegroups&quot; and
+        &quot;hidefeaturegroups&quot;. Both take a list
+        of feature group names (separarated by &quot;|&quot; by default) to hide or show on the displayed
+        alignment.
+        </li>
+        <li>Regular expressions can be used in URL links for sequence IDs.</li>
+        <li>&quot;debug&quot; parameter to control verbosity of the applet's console output.</li>
+        <li>&quot;showbutton&quot; parameter to disable launch button and open JalviewLite immediatly.</li>
+        <li>&quot;nojmol&quot; parameter to disable check for Jmol classes.</li>
+        </ul><br>
+        <strong>**NEW FEATURES** in Jalview 2.3</strong></p>
+        <ul>
+          <li>Note that Parameter &quot;PDBFile&quot; now takes 
+            the PDB file followed by a space separated list of alignment sequence 
+            ids to associate the structure to. It is also possible to associate 
+            multiple PDB files by adding an incremental value to PDBFile (up to 
+            10). It is also possible to map specific sequences to specific chains 
+            by using the following notation:<br>
+            <br>
+            <pre>
+            &lt;param name=&quot;PDBFile&quot; value=&quot;First.pdb SeqA SeqB 
+            SeqC&quot;&gt;<br>
+            &lt;param name=&quot;PDBFile2&quot; value=&quot;Second.pdb 
+            A=SeqA B=SeqB C=SeqC&quot;&gt;<br>
+            &lt;param name=&quot;PDBFile3&quot; value=&quot;Third.pdb 
+            D=SeqX B=SeqY C=SeqZ&quot;&gt;<br>
+            </pre>
+          </li>
+          <li>Note parameter &quot;PDBSeq&quot; is no longer required.<br>
+          </li>
+          <li>Jalview 2.3 was updated to work with Jmol 11. See the <a href="/development">versions archive if you want to download the old Jmol applet</a>.</li> 
+            <p>&nbsp;</p>
+          </li>
+        </ul>
+        <strong>**NEW FEATURES** in Jalview 2.1</strong> 
+        <ul>
+          <li>Jalview Applet can read and display JNet secondary structure annotation 
+            directly via the <strong>jnetfile</strong> parameter. <br>
+          </li>
+          <li>Param &quot;UserDefinedColour&quot; - specify your own colours for each residue using a semi colon 
+            separated list. Multiple residues can be assigned the same colour 
+            using commas. eg:<br>
+            <pre>&lt;param name=&quot;userDefinedColour&quot; 
+            value=&quot;D,E=red; K,R,H=0022FF; C=yellow&quot;&gt;</pre>
+          </li>
+          <li>Param &quot;showFeatureSettings&quot;
+            - this will display the feature settings window when the applet starts.
+          </li>
+          <li>Param &quot;Application_URL&quot; value=&quot;http://www.jalview.org/services/launchApp&quot;<br/>
+            This calls a servlet which creates a JNLP file with the alignment 
+            file, annotations file and features file of the applet as arguments. 
+            If the user has Java installed, the returned JNLP file should start 
+            up the full Jalview Application. BUT this does not currently work 
+            for alignment files added to the applet in a zip file.
+            <br/>Look at the XML comments in the file downloaded from <a href="http://www.jalview.org/services/launchApp">The LaunchApp page</a> for full documentation.
+          </li>
+          <li>Alignment file can be a series of parameters using eg PFAM format 
+            <br>
+            <pre>&lt;param name=&quot;sequence1&quot; 
+            value=&quot;Q93XJ9_SOLTU/11-26 TSFLPRKPVVTSLKAI&quot;&gt;<br>
+            &lt;param name=&quot;sequence2&quot; value=&quot;FER1_PEA/14-29 TSFLRTQPMPMSVTTT&quot;&gt;<br>
+            </pre>(All the usual Jalview File formats are valid, however each 
+            new line in an alignment file must be entered as a parameter)</li>
+        </ul>
+        
diff --git a/examples-jbake/content/applets.html b/examples-jbake/content/applets.html
new file mode 100644 (file)
index 0000000..011c10e
--- /dev/null
@@ -0,0 +1,9 @@
+title=JalviewLite Examples
+type=page
+jvl=jalviewApplet.jar
+jmol=JmolApplet-12.2.4.jar
+status=published
+level=0
+class=jvl_examples.ftl
+~~~~~~
+
diff --git a/examples-jbake/content/embedded.html b/examples-jbake/content/embedded.html
new file mode 100644 (file)
index 0000000..3b6fc63
--- /dev/null
@@ -0,0 +1,8 @@
+title=Embedded Alignment
+type=page
+jvl=jalviewApplet.jar
+jmol=JmolApplet-12.2.4.jar
+class=jvl_embedded.ftl
+status=published
+level=2
+~~~~~~
diff --git a/examples-jbake/content/embeddedWJmol.html b/examples-jbake/content/embeddedWJmol.html
new file mode 100644 (file)
index 0000000..ecc5769
--- /dev/null
@@ -0,0 +1,9 @@
+title=Jalview and Jmol
+type=page
+jvl=jalviewApplet.jar
+jmol=JmolApplet-12.2.4.jar
+class=jvl_embeddedWJmol.ftl
+hclass=jvl_embeddedWJmol_hdr.ftl
+status=published
+level=2
+~~~~~~
diff --git a/examples-jbake/content/formComplete.html b/examples-jbake/content/formComplete.html
new file mode 100644 (file)
index 0000000..c2ee860
--- /dev/null
@@ -0,0 +1,9 @@
+title=Access from Javascript
+type=page
+jvl=jalviewApplet.jar
+jmol=JmolApplet-12.2.4.jar
+class=jvl_formComplete.ftl
+status=published
+level=2
+~~~~~~
+<!-- end of -->
diff --git a/examples-jbake/content/javascriptLaunch.html b/examples-jbake/content/javascriptLaunch.html
new file mode 100644 (file)
index 0000000..6a0dc9b
--- /dev/null
@@ -0,0 +1,9 @@
+title=Javascript Launch
+type=page
+jvl=jalviewApplet.jar
+jmol=JmolApplet-12.2.4.jar
+class=jvl_javascriptLaunch.ftl
+status=published
+level=2
+~~~~~~
+
diff --git a/examples-jbake/content/linkedapplets_ng.html b/examples-jbake/content/linkedapplets_ng.html
new file mode 100644 (file)
index 0000000..99ac0d3
--- /dev/null
@@ -0,0 +1,8 @@
+title=Linked JalviewLite applets
+type=page
+jvl=jalviewApplet.jar
+jmol=JmolApplet-12.2.4.jar
+class=jvl_linkedapplets_ng.ftl
+status=published
+level=2
+~~~~~~
diff --git a/examples-jbake/jbake.properties b/examples-jbake/jbake.properties
new file mode 100644 (file)
index 0000000..c2f41c4
--- /dev/null
@@ -0,0 +1,2 @@
+site.host=http://www.jalview.org/examples/
+render.tags=true
\ No newline at end of file
diff --git a/examples-jbake/jbake.properties~ b/examples-jbake/jbake.properties~
new file mode 100644 (file)
index 0000000..3962e47
--- /dev/null
@@ -0,0 +1,2 @@
+site.host=http://www.jalview.org/
+render.tags=false
\ No newline at end of file
diff --git a/examples-jbake/templates/archive.ftl b/examples-jbake/templates/archive.ftl
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/examples-jbake/templates/feed.ftl b/examples-jbake/templates/feed.ftl
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/examples-jbake/templates/footer.ftl b/examples-jbake/templates/footer.ftl
new file mode 100644 (file)
index 0000000..1a4607d
--- /dev/null
@@ -0,0 +1,20 @@
+</div> <!-- content -->
+</div> <!-- pagewrap -->
+<div id ="footer">
+<div id="innerFooter">
+<div id="copyright"><p>Published under <a href="http://creativecommons.org/licenses/by-sa/3.0/">CC-SA 3.0</a></p></div>
+<div id="cite">
+<p>
+If you use Jalview in your work, please cite this publication:
+</p>
+<br />
+<p>
+Waterhouse, A.M., Procter, J.B., Martin, D.M.A, Clamp, M. and Barton, G. J. (2009)
+"Jalview Version 2 - a multiple sequence alignment editor and analysis workbench"
+Bioinformatics 25 (9) 1189-1191 <a href="http://dx.doi.org/10.1093/bioinformatics/btp033">doi: 10.1093/bioinformatics/btp033</a>
+</p>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/examples-jbake/templates/header.ftl b/examples-jbake/templates/header.ftl
new file mode 100644 (file)
index 0000000..dc086e1
--- /dev/null
@@ -0,0 +1,145 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<!--
+    * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8)
+    * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle
+    * 
+    * This file is part of Jalview.
+    * 
+    * Jalview is free software: you can redistribute it and/or
+    * modify it under the terms of the GNU General Public License 
+    * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+    *  
+    * Jalview is distributed in the hope that it will be useful, but 
+    * WITHOUT ANY WARRANTY; without even the implied warranty 
+    * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+    * PURPOSE.  See the GNU General Public License for more details.
+    * 
+    * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+  -->
+<head>
+  <TITLE>${content.title}</TITLE>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
+
+  <link href="css/reset.css" rel="stylesheet" type="text/css" />
+  <link href="css/style.css" rel="stylesheet" type="text/css" />
+  
+  <!--[if IE 6]>
+      <link rel="stylesheet" type="text/css" href="css/ie6.css" />
+      <![endif]-->
+
+  <!--[if IE 7]>
+      <link rel="stylesheet" type="text/css" href="css/ie7.css" />
+      <![endif]-->
+
+  <!-- dd menu -->
+  <script type="text/javascript">
+    <!--
+       var timeout         = 500;
+       var closetimer  = 0;
+       var ddmenuitem      = 0;
+
+       // open hidden layer
+       function mopen(id)
+       { 
+       // cancel close timer
+       mcancelclosetime();
+
+       // close old layer
+       if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
+
+       // get new layer and show it
+       ddmenuitem = document.getElementById(id);
+       ddmenuitem.style.visibility = 'visible';
+
+       }
+       // close showed layer
+       function mclose()
+       {
+       if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
+       }
+
+       // go close timer
+       function mclosetime()
+       {
+       closetimer = window.setTimeout(mclose, timeout);
+       }
+
+       // cancel close timer
+       function mcancelclosetime()
+       {
+       if(closetimer)
+       {
+       window.clearTimeout(closetimer);
+       closetimer = null;
+       }
+       }
+
+       // close layer when click-out
+       document.onclick = mclose; 
+       // -->
+  </script>
+  <script>
+    <!--//--><![CDATA[//><!--
+var _gaq = _gaq || [];_gaq.push(["_setAccount", "UA-9060947-1"]);_gaq.push(["_trackPageview"]);(function() {var ga = document.createElement("script");ga.type = "text/javascript";ga.async = true;ga.src = ("https:" == document.location.protocol ? "https://ssl" : "http://www") + ".google-analytics.com/ga.js";var s = document.getElementsByTagName("script")[0];s.parentNode.insertBefore(ga, s);})();
+//--><!]]>
+  </script>
+<#if (content.hclass?exists) > 
+  <#include content.hclass />
+</#if>
+
+</head>
+
+
+<body>
+
+
+  <div id="header">
+    <div id="logo"><a href="http://www.jalview.org" title="Home"></a></div>
+    <ul id="buttons">
+      <li id="applet"><a href="applets.html" title="applet"></a></li>
+      <li id="desktop"><a href="../webstart/jalview.jnlp" title="desktop"></a></li>
+    </ul>
+  </div>
+
+  
+  <div id ="nav">
+    <div id="navInner">
+
+      <ul id="sddm">
+       <li><a href="http://www.jalview.org">Home</a></li>
+       <li><a href="http://www.jalview.org/about" onmouseover="mopen('m1')" onmouseout="mclosetime()">About</a>
+         <div id="m1" onmouseover="mcancelclosetime()" onmouseout="mclosetime()">
+           <a href="http://www.jalview.org/about/documentation">Documentation</a>
+           <a href="http://www.jalview.org/about/citation">Publications</a>
+           <a href="http://www.jalview.org/about/credits">Credits</a>
+         </div>
+       </li>
+       <li><a href="http://www.jalview.org/faq">FAQ</a></li>
+       <li><a href="http://www.jalview.org/community" onmouseover="mopen('m3')" onmouseout="mclosetime()" class="community">Community</a>
+         <div id="m3" onmouseover="mcancelclosetime()" onmouseout="mclosetime()">
+           <a href="http://www.jalview.org/mailman/listinfo/jalview-announce">News Mailing List</a>
+           <a href="http://www.jalview.org/mailman/listinfo/jalview-discuss">Discussion Mailing List</a>
+           <a href="http://www.jalview.org/community/links">Links</a>
+           <a href="http://www.jalview.org/community/community-news">Community News</a>
+         </div>
+       </li>
+       <li><a href="http://www.jalview.org/development" onmouseover="mopen('m4')" onmouseout="mclosetime()" class="development">Development</a>
+         <div id="m4" onmouseover="mcancelclosetime()" onmouseout="mclosetime()">
+           <a href="http://www.jalview.org/development/release-history">Release History</a>
+           <a href="http://issues.jalview.org">Jalview Bug Tracker</a>
+           <a href="http://source.jalview.org/gitweb/">Jalview Git Web</a>
+           <a href="http://www.jalview.org/development/development-news">Development News</a>
+         </div>
+       </li>
+       <li><a href="http://www.jalview.org/training" onmouseover="mopen('m5')" onmouseout="mclosetime()" class="training">Training</a>
+         <div id="m5" onmouseover="mcancelclosetime()" onmouseout="mclosetime()">
+           <a href="http://www.jalview.org/training/training-courses">Training Courses</a>
+           <a href="http://www.jalview.org/training/training-news">Training News</a>
+         </div>
+       </li>
+       <li><a href="http://www.jalview.org/download" class="download-right">Download</a></li>
+      </ul>
+      <div style="clear:both"></div>
+    </div>
+
+  </div>
diff --git a/examples-jbake/templates/index.ftl b/examples-jbake/templates/index.ftl
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/examples-jbake/templates/jvl_embedded.ftl b/examples-jbake/templates/jvl_embedded.ftl
new file mode 100644 (file)
index 0000000..572fccb
--- /dev/null
@@ -0,0 +1,20 @@
+
+<h1>Embedded viewing of Alignments</h1>
+<p>The alignment below was generated from the following files:
+  <ul>
+    <li><a href="plantfdx.fa">plantfdx.fa</a> - Alignment file in
+      FASTA format</li>
+    <li><a href="plantfdx.features">plantfdx.features</a> - Jalview
+      Format Sequence Features file</li>
+    <li><a href="plantfdx.annotations">plantfdx.annotations</a> -
+      Jalview Alignment Annotations File</li>
+  </ul>
+  <@jvlitebutton appjar="${content.jvl}" width=756 height=560 
+                params={
+                "file":"plantfdx.fa",
+                "annotations":"plantfdx.annotations",
+                "features":"plantfdx.features",
+                "embedded":"true",
+                "userDefinedColour":"C=yellow; R,K,H=FF5555; D,E=5555FF",
+                "showFullId":"false"}></@jvlitebutton>
+  </p>
diff --git a/examples-jbake/templates/jvl_embeddedWJmol.ftl b/examples-jbake/templates/jvl_embeddedWJmol.ftl
new file mode 100644 (file)
index 0000000..2faa3dd
--- /dev/null
@@ -0,0 +1,10 @@
+
+ <center>
+    <script>
+       jmolApplet("500x500","zap; load FILE '1gaq.txt'; frame 0; select all; wireframe off; spacefill off; cartoons; restrict; center *; set selectionhalos true;select 0","jmolView");
+</script>
+  <script>
+    deployJava.runApplet(_jvA.attributes, _jvA.parameters, '1.4');
+    </script>
+       </center>
+</div>
diff --git a/examples-jbake/templates/jvl_embeddedWJmol_hdr.ftl b/examples-jbake/templates/jvl_embeddedWJmol_hdr.ftl
new file mode 100644 (file)
index 0000000..d41f599
--- /dev/null
@@ -0,0 +1,91 @@
+<script src="javascript/deployJava.js"></script>
+<script src="jmol/Jmol.js"></script>
+<script src="javascript/jquery-1.4.4.min.js"></script>
+<script src="javascript/jquery.timer.js"></script>
+<script src="javascript/jquery.blockUI.js"></script>
+<script src="javascript/jshashtable-2.1.js" language="javascript"></script>
+<!-- <script src="archive-min.js" language="javascript"></script>
+-->
+<script src="javascript/jalview.js" language="javascript"></script>
+<script language="JavaScript">
+// instead of this, we use a custom JmolApplet spec
+// jmolInitialize('jmol');
+jmolInitialize("","JmolApplet-12.2.4.jar");
+function genHref()
+{
+ var s1 = "ml:i@midd..", s2 = "atelcpoueau", s3 = "iomyob.neck", href="";
+ for(i=0; i<11; i++)
+ { href = href + s1.charAt(i) + s2.charAt(i) + s3.charAt(i); 
+ }
+ window.location=href;
+}
+</script>
+<script>
+ var loglevel=1;
+ function dbg(lvl,string) {
+  if (_console && lvl<=loglevel) {_console.value += string + "\n";}
+ }
+ var _lastTime=new Date();
+ var _path;
+ var _datazip;
+ var _zip;
+ var alignA;
+ var alignB;
+ var featuresA;
+ var featuresB;
+ var pairs;
+ var atompairs;
+ var structdata;
+ var jmolview;
+ var jvstructassoc;
+ var modeltofiles = new Array();
+
+ function lJvA() {
+  jvfollower = document.getElementById("jvA");
+  setConsole(document.getElementById("stdout"));
+  
+  sep = jvfollower.getSeparator();
+  //jvapp.setSeparator(""+jvapp.getSeparator());
+  linkJvJmol(jvfollower, "jmolView", modeltofiles);
+ };
+
+ var _jvA=new Object();
+ _jvA.attributes = {
+  code : 'jalview.bin.JalviewLite',
+  archive : 'jalviewApplet.jar',
+  width : '500',
+  height : '350',
+  mayscript : 'True',
+  scriptable: 'True',
+  id : 'jvA'
+ };
+ _jvA.parameters = {
+   java_arguments : "-Xmx256m",
+  externalstructureviewer : "true",
+   oninit : "lJvA",
+  automaticScrolling : "true",
+//  <!-- defaultColour : "Strand Propensity", -->
+  file : "uniref50_mz.fa",
+  
+  relaxedidmatch : "true",
+  debug : "true",
+  wrap : "false",
+  // separator : "^",
+  showAnnotation : "false",
+  embedded : "true",
+  showFullId : "false",
+  RGB : "F2F2FF",
+  linkLabel_1 : "EMBL-EBI Search",
+  linkUrl_1 : "http://www.ebi.ac.uk/ebisearch/search.ebi?db=allebi&query=$SEQUENCE_ID$"
+  ,
+  linkLabel_2 : "Uniprot"
+  ,
+  linkUrl_2 : "http://www.uniprot.org/uniprot/$SEQUENCE_ID$",
+  APPLICATION_URL : "http://www.jalview.org/services/launchApp",
+  PDBfile : "1gaq.txt FER1_MAIZE",
+  permissions : "all-permissions"
+ };
+ jmolSetCallback("hoverCallback","_jmolhover");
+  jmolSetCallback("pickCallback","_jmolpick");
+  modeltofiles+="1gaq.txt";
+</script>
diff --git a/examples-jbake/templates/jvl_examples.ftl b/examples-jbake/templates/jvl_examples.ftl
new file mode 100644 (file)
index 0000000..09a74a1
--- /dev/null
@@ -0,0 +1,87 @@
+
+<p align="left">
+  Try out JalviewLite by pressing one of the buttons below. For more information on how to use the applet in your website, see the <a
+                                                                                                                                     href="appletParameters.html"><strong>applet parameters</strong></a> and other documentation in the links to the left.</p>
+<div align="center">
+  <p>
+    <h2>Ferredoxins, chloroplast precursor related UniRef50
+      cluster</h2>
+    <br /> (15 sequences x 150 residues)
+  </p>
+  <table width="90%">
+    <tr>
+      <td width="10%" valign="center">
+       <@jvlitebutton appjar="${content.jvl}" params={ "permissions":"all-permissions" , "file":"uniref50.fa"
+                      , "treeFile":"ferredoxin.nw"
+                      , "userDefinedColour":"C=yellow; R,K,H=FF5555; D,E=5555FF"
+                      , "showFullId":"false"
+                      , "sortByTree":"True"
+                      , "showSequenceLogo":"true"
+                      , "showGroupConsensus":"true"} prots=true /></td>
+      <td valign="center">User Defined Colours, loads an associated
+       Newick format tree file which is used to sort the alignment, and
+       group consensus and sequence logos are shown below the alignment.</td>
+    </tr>
+    <tr>
+      <td width="10%" valign="center"><@jvlitebutton appjar="${content.jvl}" params={ "permissions":"all-permissions",
+       "file":"uniref50.fa"
+                                                    , "features":"exampleFeatures.txt"
+                                                    , "showFeatureSettings":"true"
+                                                    , "wrap":"true"
+                                                    , "showAnnotation":"false"
+                                                    , "windowHeight":"500"
+                                                    , "windowWidth":"650"
+                                                    , "showFullId":"false"}/></td>
+      <td valign="center">Displays a features file on the alignment</td>
+    </tr>
+    <tr>
+      <td width="10%" valign="center"><@jvlitebutton appjar="${content.jvl},${content.jmol}" params={ "permissions":"all-permissions"
+                                                    , "file":"uniref50.fa"
+                                                    , "defaultColour":"Strand Propensity"
+                                                    , "wrap":"true"
+                                                    , "showAnnotation":"false"
+                                                    , "windowHeight":"500"
+                                                    , "windowWidth":"650"
+                                                    , "showFullId":"false"
+                                                    , "PDBfile":"1gaq.txt FER1_MAIZE"} /></td>
+      <td valign="center">Associates PDB file 1GAQ with sequence
+       FER1_MAIZE</td>
+    </tr>
+    <tr>
+      <td width="10%" valign="center"><@jvlitebutton appjar="${content.jvl}" params={ "permissions":"all-permissions"
+                                                      , "file":"jpred_msa.fasta"
+                                                      , "jnetfile":"jpred_msa.seq.concise"
+                                                      , "defaultColour":"Clustal"
+                                                      , "showAnnotation":"true"
+                                                      , "windowHeight":"515"
+                                                      , "windowWidth":"650"
+                                                      , "showConservation":"false"
+                                                      , "showQuality":"false"
+                                                      , "showConsensus":"false"
+                                                      , "showFullId":"false"} />
+                                                      </td>
+      <td valign="middle">Displays a Multiple Sequence Alignment
+       Based JNet Prediction for a Sequence</td>
+    </tr>
+  </table>
+  <p>
+    <h2>RF00031 RFAM Alignment with per sequence secondary
+      structure</h2>
+  </p>
+  <table width="90%">
+    <tr>
+      <td width="10%" valign="center"><@jvlitebutton appjar="${content.jvl}" params={ "permissions":"all-permissions"
+                                                    , "file":"RF00031_folded.stk"
+                                                    , "defaultColour":"Purine/Pyrimidine"
+                                                    , "showAnnotation":"true"
+                                                    , "windowHeight":"515"
+                                                    , "windowWidth":"650"
+                                                    , "showConservation":"false"
+                                                    , "showQuality":"false"
+                                                    , "showConsensus":"true"
+                                                    , "showFullId":"false"} prots=false /></td>
+      <td valign="center">Displays an RFAM RNA fold family with
+       secondary structure annotation</td>
+    </tr>
+  </table>
+</div>
\ No newline at end of file
diff --git a/examples-jbake/templates/jvl_formComplete.ftl b/examples-jbake/templates/jvl_formComplete.ftl
new file mode 100644 (file)
index 0000000..97318b4
--- /dev/null
@@ -0,0 +1,49 @@
+<strong>Using the <a href="jalviewLiteJs.html">JalviewLite API</a> to fill out forms using data from JalviewLite<br/></strong>
+Click the Javascript buttons below to interact with the Applet
+instance on the page.<br/>
+View the source in your browser to see how it has been done. <br/>
+<a name="api">View the full <a href="jalviewLiteJs.html">JalviewLite API documentation</a>.</a>
+<applet code="jalview.bin.JalviewLite" width="0" height="0"
+       archive="${content.jvl}" name="Jalview">
+  <#if content.permissions?exists><param name="permissions" value="${content.permissions}"/></#if>
+  <param name="file" value="plantfdx.fa"/>
+  <param name="features" value="plantfdx.features"/>
+  <param name="wrap" value="true"/>
+  <param name="showAnnotation" value="false"/>
+  <param name="windowHeight" value="500"/>
+  <param name="windowWidth" value="650"/>
+  <param name="showFullId" value="false"/>
+  <param name="linkLabel_1" value="Uniprot"/>
+  <param name="linkUrl_1"
+        value="http://www.uniprot.org/uniprot/$SEQUENCE_ID$"/>
+  <param name="linkLabel_2" value="Expasy">
+  <param name="linkUrl_2"
+        value="http://us.expasy.org/cgi-bin/niceprot.pl?$SEQUENCE_ID$"/>
+  <param name="hidefeaturegroups" value="uniprot" />
+  <param name="showbutton" value="false" />
+</applet>
+<form name="exampleForm"><br/>
+  <br/>
+  <center><strong>Using the Jalview Applet for Input
+      to an HTML Form</strong></center>
+  <div align="center"><input type="button"
+                            onClick="document.forms.exampleForm.exampleTextarea.value=document.applets.Jalview.getAlignment('fasta', 'false')"
+                            value="Fill Form from Jalview" /> <br/>
+    <br/>
+    <textarea name="exampleTextarea" cols="55" rows="9"></textarea></div>
+</form>
+<center><strong>Make a new View and Get and Set
+    Group Display List</strong></center>
+<form name="groupForm">
+  <div align="center"><input type="button"
+                            onClick="document.forms.groupForm.groups.value=document.applets.Jalview.getFeatureGroups()"
+                            value="Get groups" /> <input type="button"
+                                                         onClick="document.applets.Jalview.newView()" value="new View" /> <br/>
+    <textarea name="groups" cols="55" rows="9"></textarea> <br/>
+    <input type="button"
+          onClick="document.applets.Jalview.setFeatureGroupState(document.forms.groupForm.groups.value, true)"
+          value="Display groups" /> <input type="button"
+                                           onClick="document.applets.Jalview.setFeatureGroupState(document.forms.groupForm.groups.value, false)"
+                                           value="Hide groups" /></div>
+</form>
+</div>
diff --git a/examples-jbake/templates/jvl_javascriptLaunch.ftl b/examples-jbake/templates/jvl_javascriptLaunch.ftl
new file mode 100644 (file)
index 0000000..18b216d
--- /dev/null
@@ -0,0 +1,97 @@
+  <SCRIPT type="text/javascript">
+  /* <![CDATA[ // */
+// From http://snipplr.com/view.php?codeview&id=1272
+//----------------------------------------
+//Wrapper function for constructing a request object.
+//     Parameters:
+//             reqType: The HTTP request type, such as GET or POST.
+//             url: The URL of the server program.
+//             asynch: Whether to send the request asynchronously or not.
+//----------------------------------------
+
+function httpRequest(reqType,url,asynch,respHandle) {
+
+       // Mozilla-based browsers
+       if (window.XMLHttpRequest) {
+               request = new XMLHttpRequest();
+       } else if (window.ActiveXObject) {
+               request = new ActiveXObject("Msxml2.XMLHTTP");
+               if (!request) {
+                       request = new ActiveXObject("Microsoft.XMLHTTP");
+               }
+       }
+       
+       // Request could still be null if neither ActiveXObject
+       //   initialization succeeded
+       if (request) {
+               // If the reqType param is POST, then the fifth arg is the POSTed data
+               if (reqType.toLowerCase() != "post") {
+                       initReq(reqType, url, asynch, respHandle);
+               } else {
+                       // The POSTed data
+                       var args = arguments[5];
+                       if (args != null && args.length > 0) {
+                               initReq(reqType, url, asynch, respHandle, args);
+                       }
+               }
+       } else {
+               alert("Your browser does not permit the use of all " +
+                       "of this application's features!");
+       }
+
+}
+
+//----------------------------------------
+//Initialize a request object that is already constructed
+//----------------------------------------
+
+function initReq(reqType, url, bool, respHandle) {
+       try {
+               // Specify the function that will handle the HTTP response
+               request.onreadystatechange = respHandle;
+               request.open(reqType, url, bool);
+               // If the reqType param is POST, then the
+               //   fifth argument to the function is the POSTed data
+               if (reqType.toLowerCase() == "post") {
+                       // Set the Content-Type header for a POST request
+                       request.setRequestHeader("Content-Type", "application/x-ww-form-urlencoded; charset=UTF-8");
+                       request.send(arguments[4]);
+               } else {
+                       request.send(null);
+               }
+       } catch (errv) {
+               alert("The application cannot contact the server at the moment. " +
+                       "Please try again in a few seconds.\n" +
+                       "Error detail: " + errv.message);
+       }
+}
+
+// jalview launching with fetched data
+
+function startJalview(aligURL,title,alwvar) {
+               var aligment = "";
+               httpRequest("get",aligURL,true,function() {
+                               if (request.readyState == 4) { 
+                                       alignment = request.responseText; 
+                                       eval("var "+alwvar+" = document.JalviewLite.loadAlignment(alignment,title)");
+                               }
+               })
+               
+}
+
+/* ]]> */
+</SCRIPT>
+  <form name="Form1">
+<applet name="JalviewLite"  code="jalview.bin.JalviewLite"
+archive="${content.jvl}" width="0" height="0">
+<param name="debug" value="true"/>
+<param name="showbutton" value="false"/>
+<#if (content.permissions?exists)>
+<param name="permissions" value="${content.permissions}"/>
+</#if>
+</applet>
+
+
+  <input type="button" name="Button1" value="Start"
+onClick="startJalview('plantfdx.fa','Button1.alignment','alwvar')"/>
+  </form>
diff --git a/examples-jbake/templates/jvl_linkedapplets_ng.ftl b/examples-jbake/templates/jvl_linkedapplets_ng.ftl
new file mode 100644 (file)
index 0000000..292c4a2
--- /dev/null
@@ -0,0 +1,94 @@
+<script src="http://www.java.com/js/deployJava.js"></script>
+<script src="javascript/jalview.js" language="javascript"></script>
+<script>  //deployJava.debug="true";
+  
+  function lJvApp() {
+    var jvapp = document.getElementById("jvapp");
+    var jvfollower = document.getElementById("jvfollower");
+    setConsole(document.getElementById("stdout"));
+    //jvapp.setSeparator(""+jvapp.getSeparator());
+    linkJvJmol(jvapp);
+  };
+
+  function lJvFollow() {
+    var jvapp = document.getElementById("jvapp");
+    var jvfollower = document.getElementById("jvfollower");
+    //jvfollower.setSeparator(""+jvfollower.getSeparator());
+    linkJvJmol(jvfollower);
+  };
+</script>
+    <strong>JalviewLite Linked Applets Demo<br></strong>
+    <p>The two applets below use <a href="JalviewLiteJs.html">JalviewLite's javascript API</a> to exchange events about the currently selected region and mouse position in the alignment.
+    </p>
+       <script> 
+  var attributes = {
+    code : 'jalview.bin.JalviewLite',
+    archive : 'jalviewApplet.jar',
+    width : 800,
+    height : 300,
+    mayscript : 'True', scriptable: 'True',
+    id : 'jvapp'
+  };
+  var parameters = {
+    oninit : "lJvApp",
+    automaticScrolling : "true",
+    file : "plantfdx.fa",
+    annotations : "plantfdx.annotations",
+    debug : "true",
+    wrap : "false",
+    // separator : "^",
+    showAnnotation : "true",
+    embedded : "true",
+    showFullId : "false",
+    RGB : "F2F2FF",
+    linkLabel_1 : "EMBL-EBI Search",
+    linkUrl_1 : "http://www.ebi.ac.uk/ebisearch/search.ebi?db=allebi&query=$SEQUENCE_ID$"
+    ,
+    linkLabel_2 : "Uniprot"
+    ,
+    linkUrl_2 : "http://www.uniprot.org/uniprot/$SEQUENCE_ID$",
+    permissions : 'all-permissions',
+    APPLICATION_URL : "http://www.jalview.org/services/launchApp"
+  };
+  deployJava.runApplet(attributes, parameters, '1.6+');
+</script>
+<script> 
+  var attributes = {
+    code : 'jalview.bin.JalviewLite',
+    archive : 'jalviewApplet.jar',
+    width : 800,
+    height : 300,
+    mayscript : 'True', scriptable: 'True',
+    id : "jvfollower"
+  };
+  var parameters = {
+    oninit : "lJvFollow",
+    file : "plantfdx.fa",
+    annotations : "plantfdx.annotations",
+    automaticScrolling : "true",
+    debug : "true",
+    wrap : "false",
+    // separator : "^",
+    showAnnotation : "true",
+    embedded : "true",
+    showFullId : "false",
+    RGB : "F2F2FF",
+    linkLabel_1 : "EMBL-EBI Search",
+    linkUrl_1 : "http://www.ebi.ac.uk/ebisearch/search.ebi?db=allebi&query=$SEQUENCE_ID$"
+    ,
+    linkLabel_2 : "Uniprot"
+    ,
+    linkUrl_2 : "http://www.uniprot.org/uniprot/$SEQUENCE_ID$",
+    permissions : 'all-permissions',
+   APPLICATION_URL : "http://www.jalview.org/services/launchApp"
+  };
+  deployJava.runApplet(attributes, parameters, '1.6+');
+</script>
+    <p>
+<!--      <a href="javascript:linkJvJmol()">Click Me If you don't see any messages below</a>
+      <br>
+       --><form name="console" id="console"><textarea name="output"
+        id="stdout" rows="20" cols="80">Messages  will appear here.</textarea></form>
+      <br>
+</p>
diff --git a/examples-jbake/templates/macros.ftl b/examples-jbake/templates/macros.ftl
new file mode 100644 (file)
index 0000000..0673d76
--- /dev/null
@@ -0,0 +1,20 @@
+<#assign appparams = [ "file","features","treeFile","userDefinedColour","sortByTree","showSequenceLogo","showGroupConsensus","showFullId","linkLabel_1","linkUrl_1","linkUrl_2","linkLabel_2","windowHeight","windowWidth","showFeatureSettings","wrap","showAnnotation","defaultColour","embedded", "debug" ] />
+
+
+<#macro jvlitebutton appjar params prots=true width=140 height=35>
+<applet
+   code="jalview.bin.JalviewLite" width="${width}" height="${width}"
+   archive="${appjar}">
+<#list appparams as p><#if (params[p])?has_content><param name="${p}" value="${params[p]}"/></#if></#list>
+<#if (prots)>
+   <param name="linkLabel_1" value="Uniprot"/>
+   <param name="linkUrl_1"
+     value="http://www.uniprot.org/uniprot/$SEQUENCE_ID$"/>
+   <param name="linkLabel_2" value="EMBL-EBI Search"/>
+   <param name="linkUrl_2"
+     value="http://www.ebi.ac.uk/ebisearch/search.ebi?db=allebi&query=$SEQUENCE_ID$"/>
+</#if>
+   <param name="APPLICATION_URL"
+     value="http://www.jalview.org/services/launchApp"/>
+</applet>
+</#macro>
diff --git a/examples-jbake/templates/menu.ftl b/examples-jbake/templates/menu.ftl
new file mode 100644 (file)
index 0000000..1aa78f0
--- /dev/null
@@ -0,0 +1,34 @@
+
+       <!-- Fixed navbar -->
+      <div class="navbar navbar-fixed-top">
+        <div class="navbar-inner">
+          <div class="container">
+            <button type="button" class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
+              <span class="icon-bar"></span>
+              <span class="icon-bar"></span>
+              <span class="icon-bar"></span>
+            </button>
+            <a class="brand" href="/">JBake</a>
+            <div class="nav-collapse collapse">
+              <ul class="nav">
+                <li><a href="/index.html">Home</a></li>
+                <li><a href="about.html">About</a></li>
+                <li><a href="${config.feed_file}">Subscribe</a></li>
+                <li class="dropdown">
+                  <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
+                  <ul class="dropdown-menu">
+                    <li><a href="#">Action</a></li>
+                    <li><a href="#">Another action</a></li>
+                    <li><a href="#">Something else here</a></li>
+                    <li class="divider"></li>
+                    <li class="nav-header">Nav header</li>
+                    <li><a href="#">Separated link</a></li>
+                    <li><a href="#">One more separated link</a></li>
+                  </ul>
+                </li>
+              </ul>
+            </div><!--/.nav-collapse -->
+          </div>
+        </div>
+      </div>
+      <div class="container">
\ No newline at end of file
diff --git a/examples-jbake/templates/page.ftl b/examples-jbake/templates/page.ftl
new file mode 100644 (file)
index 0000000..34b8789
--- /dev/null
@@ -0,0 +1,13 @@
+<#include "header.ftl"/>
+<#include "macros.ftl"/>
+<#include "sidebar.ftl"/>
+<div id="content" class="content">
+
+<#if (content.class?exists) > 
+  <#include content.class />
+</#if>
+<!-- content start -->
+${content.body}
+<!-- content end -->
+</div>
+<#include "footer.ftl"/>
\ No newline at end of file
diff --git a/examples-jbake/templates/post.ftl b/examples-jbake/templates/post.ftl
new file mode 100644 (file)
index 0000000..ea57d31
--- /dev/null
@@ -0,0 +1,15 @@
+<#include "header.ftl">
+       
+       <#include "menu.ftl">
+       
+       <div class="page-header">
+               <h1>${content.title}</h1>
+       </div>
+
+       <p><em>${content.date?string("dd MMMM yyyy")}</em></p>
+
+       <p>${content.body}</p>
+
+       <hr>
+       
+<#include "footer.ftl">
\ No newline at end of file
diff --git a/examples-jbake/templates/sidebar.ftl b/examples-jbake/templates/sidebar.ftl
new file mode 100644 (file)
index 0000000..84bbed8
--- /dev/null
@@ -0,0 +1,25 @@
+<div id="sideNav">
+ <ul>
+  <#list pages as page>
+  <#assign noclass=""/>
+  <#if page.title==content.title>
+  <#assign noclass="class=\"jvlite-nav-title\"">
+  </#if>
+    <#if (((page.level!"1")?number)<1) >
+          <li ${noclass}><a href="${page.uri?substring(1)}">${page.title}</a>
+    </#if>
+  </#list>
+  <ul>
+  <#list pages as page>
+  <#assign noclass=""/>
+  <#if page.title==content.title>
+  <#assign noclass="class=\"jvlite-nav-small\"">
+  </#if>
+  <#if (((page.level!"1")?number)>0) >
+    <li ${noclass}><a href="${page.uri?substring(1)}">${page.title}</a></li>
+  </#if>
+  </#list>
+ </ul>
+ </ul>
+</div>
+