Merge branch 'bug/JAL-2634' into develop
authorJim Procter <jprocter@issues.jalview.org>
Wed, 9 Aug 2017 08:09:56 +0000 (09:09 +0100)
committerJim Procter <jprocter@issues.jalview.org>
Wed, 9 Aug 2017 08:09:56 +0000 (09:09 +0100)
42 files changed:
examples/exampleFeatures.txt
examples/testdata/AGC_DMPK.pdb [new file with mode: 0644]
examples/testdata/agc_dmpk_frag.fa [new file with mode: 0644]
help/help.jhm
help/helpTOC.xml
help/html/calculations/calculatedialog.png [new file with mode: 0644]
help/html/calculations/calculations.html [new file with mode: 0644]
help/html/calculations/pca.html
help/html/calculations/tree.html
help/html/features/search.html
help/html/features/search.png [new file with mode: 0644]
help/html/features/searchclearhist.png [new file with mode: 0644]
help/html/features/searchhist.png [new file with mode: 0644]
help/html/features/viewingpdbs.html
help/html/menus/alignmentMenu.html
help/html/menus/alwcalculate.html
help/html/releases.html
help/html/whatsNew.html
src/jalview/appletgui/FeatureColourChooser.java
src/jalview/appletgui/FeatureSettings.java
src/jalview/appletgui/OverviewPanel.java
src/jalview/appletgui/PaintRefresher.java
src/jalview/datamodel/HiddenSequences.java
src/jalview/gui/AlignFrame.java
src/jalview/gui/ColourMenuHelper.java
src/jalview/gui/FeatureColourChooser.java
src/jalview/gui/IdPanel.java
src/jalview/gui/Jalview2XML.java
src/jalview/gui/OverviewPanel.java
src/jalview/gui/SliderPanel.java
src/jalview/schemes/ResidueColourScheme.java
src/jalview/schemes/UserColourScheme.java
src/jalview/viewmodel/AlignmentViewport.java
src/jalview/viewmodel/OverviewDimensions.java
src/jalview/viewmodel/OverviewDimensionsHideHidden.java
src/jalview/viewmodel/OverviewDimensionsShowHidden.java
test/jalview/gui/AlignFrameTest.java
test/jalview/io/FeaturesFileTest.java
test/jalview/viewmodel/OverviewDimensionsHideHiddenTest.java
test/jalview/viewmodel/OverviewDimensionsShowHiddenTest.java
utils/eclipse/JalviewCodeStyle.xml
utils/eclipse/README [new file with mode: 0644]

index 83dc4b1..9e65534 100755 (executable)
@@ -1,5 +1,5 @@
-ST-TURN-IIL    blue|255,0,255|absolute|20.0|95.0|below|66.0
-GAMMA-TURN-CLASSIC     lightGray|0,255,255|20.0|95.0|below|66.0
+ST-TURN-IIL    blue
+GAMMA-TURN-CLASSIC     lightgray
 BETA-TURN-IR   9a6a94
 BETA-TURN-IL   d6a6ca
 BETA-BULGE     1dc451
@@ -24,6 +24,7 @@ BETA-TURN-IIR c79792
 PHOSPHORYLATION (T)    c88395
 BETA-TURN-IIL  8b5b50
 ST-MOTIF       ac25a1
+kdHydrophobicity       ccffcc|333300|-3.9|4.5|above|-2.0
 
 STARTGROUP     uniprot
 <html><a href="http://pfam.xfam.org/family/PF00111">Pfam family</a></html>     FER_CAPAA       -1      0       0       Pfam
@@ -310,3 +311,54 @@ 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
+
+STARTGROUP     kd
+A      Q93XJ9_SOLTU    -1      48      48      kdHydrophobicity        1.8
+A      Q93XJ9_SOLTU    -1      49      49      kdHydrophobicity        -0.8
+A      Q93XJ9_SOLTU    -1      50      50      kdHydrophobicity        -1.3
+A      Q93XJ9_SOLTU    -1      51      51      kdHydrophobicity        -3.9
+A      Q93XJ9_SOLTU    -1      52      52      kdHydrophobicity        4.2
+A      Q93XJ9_SOLTU    -1      53      53      kdHydrophobicity        -3.9
+A      Q93XJ9_SOLTU    -1      54      54      kdHydrophobicity        3.8
+A      Q93XJ9_SOLTU    -1      55      55      kdHydrophobicity        4.5
+A      Q93XJ9_SOLTU    -1      56      56      kdHydrophobicity        -0.7
+A      Q93XJ9_SOLTU    -1      57      57      kdHydrophobicity        -1.6
+A      Q93XJ9_SOLTU    -1      58      58      kdHydrophobicity        -3.5
+A      Q93XJ9_SOLTU    -1      59      59      kdHydrophobicity        -0.4
+A      Q93XJ9_SOLTU    -1      60      60      kdHydrophobicity        -1.6
+A      Q93XJ9_SOLTU    -1      61      61      kdHydrophobicity        4.5
+A      Q93XJ9_SOLTU    -1      62      62      kdHydrophobicity        -3.5
+A      Q93XJ9_SOLTU    -1      63      63      kdHydrophobicity        2.8
+A      FER1_SPIOL      -1      51      51      kdHydrophobicity        1.8
+A      FER1_SPIOL      -1      52      52      kdHydrophobicity        1.8
+A      FER1_SPIOL      -1      53      53      kdHydrophobicity        -1.3
+A      FER1_SPIOL      -1      54      54      kdHydrophobicity        -3.9
+A      FER1_SPIOL      -1      55      55      kdHydrophobicity        4.2
+A      FER1_SPIOL      -1      56      56      kdHydrophobicity        -0.7
+A      FER1_SPIOL      -1      57      57      kdHydrophobicity        3.8
+A      FER1_SPIOL      -1      58      58      kdHydrophobicity        4.2
+A      FER1_SPIOL      -1      59      59      kdHydrophobicity        -0.7
+A      FER1_SPIOL      -1      60      60      kdHydrophobicity        -1.6
+A      FER1_SPIOL      -1      61      61      kdHydrophobicity        -0.7
+A      FER1_SPIOL      -1      62      62      kdHydrophobicity        -0.4
+A      FER1_SPIOL      -1      63      63      kdHydrophobicity        -3.5
+A      FER1_SPIOL      -1      64      64      kdHydrophobicity        4.2
+A      FER1_SPIOL      -1      65      65      kdHydrophobicity        -3.5
+A      FER1_SPIOL      -1      66      66      kdHydrophobicity        2.8
+C      FER1_MAIZE      -1      53      53      kdHydrophobicity        1.8
+C      FER1_MAIZE      -1      54      54      kdHydrophobicity        -0.7
+C      FER1_MAIZE      -1      55      55      kdHydrophobicity        -1.3
+C      FER1_MAIZE      -1      56      56      kdHydrophobicity        -3.5
+C      FER1_MAIZE      -1      57      57      kdHydrophobicity        4.2
+C      FER1_MAIZE      -1      58      58      kdHydrophobicity        -3.9
+C      FER1_MAIZE      -1      59      59      kdHydrophobicity        3.8
+C      FER1_MAIZE      -1      60      60      kdHydrophobicity        4.5
+C      FER1_MAIZE      -1      61      61      kdHydrophobicity        -0.7
+C      FER1_MAIZE      -1      62      62      kdHydrophobicity        -1.6
+C      FER1_MAIZE      -1      63      63      kdHydrophobicity        -3.5
+C      FER1_MAIZE      -1      64      64      kdHydrophobicity        -0.4
+C      FER1_MAIZE      -1      65      65      kdHydrophobicity        -3.5
+C      FER1_MAIZE      -1      66      66      kdHydrophobicity        4.2
+C      FER1_MAIZE      -1      67      67      kdHydrophobicity        -3.5
+C      FER1_MAIZE      -1      68      68      kdHydrophobicity        3.8
+ENDGROUP       kd
diff --git a/examples/testdata/AGC_DMPK.pdb b/examples/testdata/AGC_DMPK.pdb
new file mode 100644 (file)
index 0000000..c510bb1
--- /dev/null
@@ -0,0 +1,2961 @@
+ATOM      1  N   GLN B  11     -10.853 -14.481  42.553
+ATOM      2  CA  GLN B  11      -9.805 -14.723  41.510
+ATOM      3  C   GLN B  11     -10.049 -16.025  40.737
+ATOM      4  O   GLN B  11      -9.630 -16.159  39.586
+ATOM      5  CB  GLN B  11      -8.405 -14.729  42.147
+ATOM      6  CG  GLN B  11      -7.269 -15.148  41.206
+ATOM      7  CD  GLN B  11      -5.887 -14.948  41.809
+ATOM      8  N   GLN B  12     -10.712 -16.984  41.377
+ATOM      9  CA  GLN B  12     -11.055 -18.251  40.739
+ATOM     10  C   GLN B  12     -11.878 -18.006  39.473
+ATOM     11  O   GLN B  12     -11.549 -18.516  38.406
+ATOM     12  CB  GLN B  12     -11.831 -19.149  41.714
+ATOM     13  N   LEU B  13     -12.937 -17.212  39.601
+ATOM     14  CA  LEU B  13     -13.794 -16.841  38.466
+ATOM     15  C   LEU B  13     -13.010 -16.133  37.359
+ATOM     16  O   LEU B  13     -13.226 -16.380  36.162
+ATOM     17  CB  LEU B  13     -14.924 -15.918  38.943
+ATOM     18  N   VAL B  14     -12.097 -15.257  37.776
+ATOM     19  CA  VAL B  14     -11.343 -14.404  36.863
+ATOM     20  C   VAL B  14     -10.360 -15.210  36.010
+ATOM     21  O   VAL B  14     -10.253 -14.981  34.809
+ATOM     22  CB  VAL B  14     -10.579 -13.295  37.644
+ATOM     23  CG1 VAL B  14      -9.829 -12.366  36.696
+ATOM     24  CG2 VAL B  14     -11.540 -12.492  38.524
+ATOM     25  N   LEU B  15      -9.649 -16.153  36.622
+ATOM     26  CA  LEU B  15      -8.675 -16.975  35.891
+ATOM     27  C   LEU B  15      -9.308 -18.105  35.066
+ATOM     28  O   LEU B  15      -8.668 -18.671  34.180
+ATOM     29  CB  LEU B  15      -7.657 -17.551  36.857
+ATOM     30  CG  LEU B  15      -6.665 -16.500  37.346
+ATOM     31  CD1 LEU B  15      -6.095 -16.873  38.704
+ATOM     32  CD2 LEU B  15      -5.556 -16.310  36.321
+ATOM     33  N   ASP B  16     -10.569 -18.409  35.360
+ATOM     34  CA  ASP B  16     -11.320 -19.444  34.668
+ATOM     35  C   ASP B  16     -11.491 -19.143  33.180
+ATOM     36  O   ASP B  16     -12.189 -18.192  32.827
+ATOM     37  CB  ASP B  16     -12.699 -19.569  35.325
+ATOM     38  CG  ASP B  16     -13.547 -20.666  34.716
+ATOM     39  OD1 ASP B  16     -13.245 -21.124  33.597
+ATOM     40  OD2 ASP B  16     -14.533 -21.065  35.360
+ATOM     41  N   PRO B  17     -10.879 -19.968  32.296
+ATOM     42  CA  PRO B  17     -11.084 -19.863  30.834
+ATOM     43  C   PRO B  17     -12.528 -19.918  30.389
+ATOM     44  O   PRO B  17     -12.833 -19.526  29.276
+ATOM     45  CB  PRO B  17     -10.339 -21.073  30.284
+ATOM     46  CG  PRO B  17      -9.271 -21.336  31.273
+ATOM     47  CD  PRO B  17      -9.903 -21.029  32.616
+ATOM     48  N   GLY B  18     -13.409 -20.405  31.245
+ATOM     49  CA  GLY B  18     -14.827 -20.441  30.930
+ATOM     50  C   GLY B  18     -15.507 -19.103  31.094
+ATOM     51  O   GLY B  18     -16.487 -18.828  30.411
+ATOM     52  N   PHE B  19     -14.999 -18.274  32.006
+ATOM     53  CA  PHE B  19     -15.623 -16.978  32.308
+ATOM     54  C   PHE B  19     -14.887 -15.813  31.664
+ATOM     55  O   PHE B  19     -15.497 -14.977  30.987
+ATOM     56  CB  PHE B  19     -15.664 -16.749  33.807
+ATOM     57  CG  PHE B  19     -16.279 -15.445  34.191
+ATOM     58  CD1 PHE B  19     -17.644 -15.237  34.020
+ATOM     59  CD2 PHE B  19     -15.500 -14.424  34.716
+ATOM     60  CE1 PHE B  19     -18.228 -14.036  34.377
+ATOM     61  CE2 PHE B  19     -16.072 -13.213  35.081
+ATOM     62  CZ  PHE B  19     -17.440 -13.017  34.911
+ATOM     63  N   LEU B  20     -13.578 -15.761  31.914
+ATOM     64  CA  LEU B  20     -12.702 -14.742  31.342
+ATOM     65  C   LEU B  20     -11.368 -15.376  31.016
+ATOM     66  O   LEU B  20     -11.127 -15.753  29.883
+ATOM     67  CB  LEU B  20     -12.527 -13.555  32.309
+ATOM     68  CG  LEU B  20     -11.573 -12.458  31.828
+ATOM     69  CD1 LEU B  20     -12.216 -11.669  30.709
+ATOM     70  CD2 LEU B  20     -11.210 -11.558  32.954
+ATOM     71  N   GLY B  21     -10.505 -15.501  32.010
+ATOM     72  CA  GLY B  21      -9.214 -16.117  31.806
+ATOM     73  C   GLY B  21      -8.141 -15.151  31.372
+ATOM     74  O   GLY B  21      -8.416 -14.056  30.905
+ATOM     75  N   LEU B  22      -6.904 -15.596  31.529
+ATOM     76  CA  LEU B  22      -5.721 -14.804  31.273
+ATOM     77  C   LEU B  22      -5.449 -14.556  29.784
+ATOM     78  O   LEU B  22      -4.857 -13.539  29.427
+ATOM     79  CB  LEU B  22      -4.521 -15.529  31.867
+ATOM     80  CG  LEU B  22      -3.456 -14.652  32.501
+ATOM     81  CD1 LEU B  22      -3.781 -14.455  33.979
+ATOM     82  CD2 LEU B  22      -2.090 -15.300  32.316
+ATOM     83  N   GLU B  23      -5.842 -15.486  28.916
+ATOM     84  CA  GLU B  23      -5.511 -15.368  27.491
+ATOM     85  C   GLU B  23      -6.156 -14.132  26.832
+ATOM     86  O   GLU B  23      -5.451 -13.357  26.172
+ATOM     87  CB  GLU B  23      -5.841 -16.659  26.719
+ATOM     88  CG  GLU B  23      -4.962 -17.894  27.076
+ATOM     89  CD  GLU B  23      -3.458 -17.740  26.723
+ATOM     90  OE1 GLU B  23      -3.114 -17.661  25.523
+ATOM     91  OE2 GLU B  23      -2.615 -17.729  27.654
+ATOM     92  N   PRO B  24      -7.479 -13.927  27.016
+ATOM     93  CA  PRO B  24      -8.066 -12.676  26.506
+ATOM     94  C   PRO B  24      -7.489 -11.398  27.147
+ATOM     95  O   PRO B  24      -7.274 -10.408  26.443
+ATOM     96  CB  PRO B  24      -9.565 -12.806  26.825
+ATOM     97  CG  PRO B  24      -9.695 -13.934  27.780
+ATOM     98  CD  PRO B  24      -8.478 -14.801  27.656
+ATOM     99  N   LEU B  25      -7.235 -11.411  28.459
+ATOM    100  CA  LEU B  25      -6.655 -10.235  29.124
+ATOM    101  C   LEU B  25      -5.290  -9.857  28.528
+ATOM    102  O   LEU B  25      -5.008  -8.681  28.333
+ATOM    103  CB  LEU B  25      -6.535 -10.451  30.635
+ATOM    104  CG  LEU B  25      -7.859 -10.607  31.395
+ATOM    105  CD1 LEU B  25      -7.604 -10.966  32.868
+ATOM    106  CD2 LEU B  25      -8.743  -9.354  31.272
+ATOM    107  N   LEU B  26      -4.454 -10.844  28.218
+ATOM    108  CA  LEU B  26      -3.160 -10.556  27.602
+ATOM    109  C   LEU B  26      -3.364 -10.102  26.164
+ATOM    110  O   LEU B  26      -2.821  -9.084  25.750
+ATOM    111  CB  LEU B  26      -2.224 -11.761  27.674
+ATOM    112  CG  LEU B  26      -1.718 -12.126  29.078
+ATOM    113  CD1 LEU B  26      -1.095 -13.522  29.073
+ATOM    114  CD2 LEU B  26      -0.724 -11.078  29.649
+ATOM    115  N   ASP B  27      -4.180 -10.826  25.403
+ATOM    116  CA  ASP B  27      -4.511 -10.391  24.043
+ATOM    117  C   ASP B  27      -4.994  -8.946  24.018
+ATOM    118  O   ASP B  27      -4.636  -8.190  23.120
+ATOM    119  CB  ASP B  27      -5.562 -11.300  23.410
+ATOM    120  CG  ASP B  27      -4.974 -12.579  22.846
+ATOM    121  OD1 ASP B  27      -3.751 -12.636  22.625
+ATOM    122  OD2 ASP B  27      -5.743 -13.526  22.600
+ATOM    123  N   LEU B  28      -5.796  -8.559  25.001
+ATOM    124  CA  LEU B  28      -6.284  -7.182  25.069
+ATOM    125  C   LEU B  28      -5.108  -6.244  25.304
+ATOM    126  O   LEU B  28      -4.937  -5.272  24.570
+ATOM    127  CB  LEU B  28      -7.361  -7.005  26.160
+ATOM    128  CG  LEU B  28      -8.011  -5.617  26.286
+ATOM    129  CD1 LEU B  28      -8.320  -5.034  24.928
+ATOM    130  CD2 LEU B  28      -9.283  -5.652  27.144
+ATOM    131  N   LEU B  29      -4.283  -6.560  26.301
+ATOM    132  CA  LEU B  29      -3.132  -5.713  26.640
+ATOM    133  C   LEU B  29      -2.239  -5.477  25.426
+ATOM    134  O   LEU B  29      -1.957  -4.326  25.071
+ATOM    135  CB  LEU B  29      -2.320  -6.324  27.785
+ATOM    136  CG  LEU B  29      -0.947  -5.707  28.076
+ATOM    137  CD1 LEU B  29      -1.029  -4.221  28.127
+ATOM    138  CD2 LEU B  29      -0.376  -6.261  29.376
+ATOM    139  N   LEU B  30      -1.821  -6.576  24.793
+ATOM    140  CA  LEU B  30      -1.024  -6.535  23.561
+ATOM    141  C   LEU B  30      -1.698  -5.781  22.436
+ATOM    142  O   LEU B  30      -1.032  -5.070  21.672
+ATOM    143  CB  LEU B  30      -0.710  -7.938  23.083
+ATOM    144  CG  LEU B  30       0.520  -8.585  23.722
+ATOM    145  CD1 LEU B  30       0.173  -9.890  24.413
+ATOM    146  CD2 LEU B  30       1.564  -8.822  22.655
+ATOM    147  N   GLY B  31      -3.016  -5.923  22.346
+ATOM    148  CA  GLY B  31      -3.793  -5.289  21.280
+ATOM    149  C   GLY B  31      -3.943  -3.788  21.422
+ATOM    150  O   GLY B  31      -3.884  -3.050  20.438
+ATOM    151  N   VAL B  32      -4.159  -3.335  22.648
+ATOM    152  CA  VAL B  32      -4.307  -1.917  22.905
+ATOM    153  C   VAL B  32      -2.966  -1.227  22.727
+ATOM    154  O   VAL B  32      -2.917  -0.091  22.269
+ATOM    155  CB  VAL B  32      -4.892  -1.646  24.308
+ATOM    156  CG1 VAL B  32      -4.701  -0.202  24.707
+ATOM    157  CG2 VAL B  32      -6.368  -1.992  24.322
+ATOM    158  N   HIS B  33      -1.878  -1.911  23.066
+ATOM    159  CA  HIS B  33      -0.542  -1.349  22.839
+ATOM    160  C   HIS B  33      -0.264  -1.153  21.348
+ATOM    161  O   HIS B  33       0.285  -0.120  20.941
+ATOM    162  CB  HIS B  33       0.531  -2.249  23.433
+ATOM    163  CG  HIS B  33       1.914  -1.699  23.290
+ATOM    164  ND1 HIS B  33       2.818  -2.196  22.375
+ATOM    165  CD2 HIS B  33       2.547  -0.693  23.940
+ATOM    166  CE1 HIS B  33       3.949  -1.521  22.468
+ATOM    167  NE2 HIS B  33       3.813  -0.605  23.412
+ATOM    168  N   GLN B  34      -0.644  -2.152  20.548
+ATOM    169  CA  GLN B  34      -0.470  -2.098  19.104
+ATOM    170  C   GLN B  34      -1.238  -0.933  18.480
+ATOM    171  O   GLN B  34      -0.629  -0.028  17.909
+ATOM    172  CB  GLN B  34      -0.920  -3.415  18.459
+ATOM    173  CG  GLN B  34      -0.658  -3.523  16.944
+ATOM    174  CD  GLN B  34       0.818  -3.709  16.622
+ATOM    175  OE1 GLN B  34       1.281  -4.827  16.411
+ATOM    176  NE2 GLN B  34       1.566  -2.617  16.610
+ATOM    177  N   GLU B  35      -2.564  -0.957  18.592
+ATOM    178  CA  GLU B  35      -3.399   0.045  17.932
+ATOM    179  C   GLU B  35      -3.053   1.469  18.361
+ATOM    180  O   GLU B  35      -2.992   2.367  17.520
+ATOM    181  CB  GLU B  35      -4.888  -0.220  18.164
+ATOM    182  CG  GLU B  35      -5.374  -1.493  17.499
+ATOM    183  CD  GLU B  35      -6.898  -1.601  17.408
+ATOM    184  OE1 GLU B  35      -7.446  -2.682  17.763
+ATOM    185  OE2 GLU B  35      -7.542  -0.621  16.963
+ATOM    186  N   LEU B  36      -2.824   1.681  19.651
+ATOM    187  CA  LEU B  36      -2.434   3.006  20.130
+ATOM    188  C   LEU B  36      -1.079   3.429  19.579
+ATOM    189  O   LEU B  36      -0.942   4.542  19.067
+ATOM    190  CB  LEU B  36      -2.400   3.055  21.656
+ATOM    191  CG  LEU B  36      -3.758   2.990  22.346
+ATOM    192  CD1 LEU B  36      -3.539   3.197  23.839
+ATOM    193  CD2 LEU B  36      -4.732   4.017  21.780
+ATOM    194  N   GLY B  37      -0.085   2.548  19.682
+ATOM    195  CA  GLY B  37       1.237   2.800  19.099
+ATOM    196  C   GLY B  37       1.155   3.212  17.634
+ATOM    197  O   GLY B  37       1.831   4.151  17.205
+ATOM    198  N   ALA B  38       0.304   2.516  16.879
+ATOM    199  CA  ALA B  38       0.077   2.795  15.455
+ATOM    200  C   ALA B  38      -0.886   3.970  15.174
+ATOM    201  O   ALA B  38      -1.063   4.355  14.015
+ATOM    202  CB  ALA B  38      -0.428   1.533  14.761
+ATOM    203  N   SER B  39      -1.501   4.542  16.212
+ATOM    204  CA  SER B  39      -2.504   5.595  16.031
+ATOM    205  C   SER B  39      -1.898   6.983  16.118
+ATOM    206  O   SER B  39      -0.752   7.153  16.538
+ATOM    207  CB  SER B  39      -3.614   5.477  17.079
+ATOM    208  N   GLU B  40      -2.699   7.966  15.707
+ATOM    209  CA  GLU B  40      -2.375   9.382  15.840
+ATOM    210  C   GLU B  40      -2.633   9.863  17.277
+ATOM    211  O   GLU B  40      -2.171  10.944  17.665
+ATOM    212  CB  GLU B  40      -3.208  10.203  14.852
+ATOM    213  N   LEU B  41      -3.371   9.061  18.055
+ATOM    214  CA  LEU B  41      -3.610   9.339  19.483
+ATOM    215  C   LEU B  41      -2.343   9.204  20.338
+ATOM    216  O   LEU B  41      -2.290   9.748  21.441
+ATOM    217  CB  LEU B  41      -4.714   8.429  20.050
+ATOM    218  CG  LEU B  41      -6.174   8.882  19.899
+ATOM    219  CD1 LEU B  41      -7.124   7.741  20.282
+ATOM    220  CD2 LEU B  41      -6.456  10.147  20.727
+ATOM    221  N   ALA B  42      -1.335   8.491  19.831
+ATOM    222  CA  ALA B  42      -0.016   8.420  20.471
+ATOM    223  C   ALA B  42       0.547   9.813  20.808
+ATOM    224  O   ALA B  42       1.406   9.950  21.685
+ATOM    225  CB  ALA B  42       0.953   7.660  19.575
+ATOM    226  N   GLN B  43       0.061  10.830  20.088
+ATOM    227  CA  GLN B  43       0.373  12.238  20.348
+ATOM    228  C   GLN B  43      -0.095  12.708  21.727
+ATOM    229  O   GLN B  43       0.610  13.467  22.390
+ATOM    230  CB  GLN B  43      -0.267  13.123  19.273
+ATOM    231  N   ASP B  44      -1.280  12.268  22.150
+ATOM    232  CA  ASP B  44      -1.846  12.664  23.452
+ATOM    233  C   ASP B  44      -0.951  12.238  24.622
+ATOM    234  O   ASP B  44      -0.364  11.157  24.603
+ATOM    235  CB  ASP B  44      -3.253  12.081  23.628
+ATOM    236  N   LYS B  45      -0.849  13.105  25.630
+ATOM    237  CA  LYS B  45       0.053  12.877  26.764
+ATOM    238  C   LYS B  45      -0.295  11.577  27.483
+ATOM    239  O   LYS B  45       0.509  10.642  27.510
+ATOM    240  CB  LYS B  45       0.008  14.048  27.755
+ATOM    241  N   TYR B  46      -1.504  11.525  28.042
+ATOM    242  CA  TYR B  46      -1.928  10.394  28.868
+ATOM    243  C   TYR B  46      -1.872   9.049  28.144
+ATOM    244  O   TYR B  46      -1.542   8.040  28.759
+ATOM    245  CB  TYR B  46      -3.310  10.633  29.492
+ATOM    246  CG  TYR B  46      -4.373  11.191  28.574
+ATOM    247  CD1 TYR B  46      -4.988  10.386  27.618
+ATOM    248  CD2 TYR B  46      -4.791  12.515  28.690
+ATOM    249  CE1 TYR B  46      -5.980  10.890  26.780
+ATOM    250  CE2 TYR B  46      -5.779  13.031  27.859
+ATOM    251  CZ  TYR B  46      -6.371  12.213  26.904
+ATOM    252  OH  TYR B  46      -7.351  12.722  26.071
+ATOM    253  N   VAL B  47      -2.167   9.030  26.849
+ATOM    254  CA  VAL B  47      -1.982   7.817  26.059
+ATOM    255  C   VAL B  47      -0.489   7.497  25.900
+ATOM    256  O   VAL B  47      -0.084   6.334  25.941
+ATOM    257  CB  VAL B  47      -2.626   7.932  24.659
+ATOM    258  CG1 VAL B  47      -2.261   6.728  23.796
+ATOM    259  CG2 VAL B  47      -4.141   8.078  24.772
+ATOM    260  N   ALA B  48       0.316   8.542  25.720
+ATOM    261  CA  ALA B  48       1.748   8.406  25.446
+ATOM    262  C   ALA B  48       2.491   7.768  26.599
+ATOM    263  O   ALA B  48       3.398   6.968  26.389
+ATOM    264  CB  ALA B  48       2.348   9.770  25.151
+ATOM    265  N   ASP B  49       2.102   8.144  27.813
+ATOM    266  CA  ASP B  49       2.746   7.669  29.032
+ATOM    267  C   ASP B  49       2.371   6.210  29.329
+ATOM    268  O   ASP B  49       3.210   5.429  29.776
+ATOM    269  CB  ASP B  49       2.406   8.604  30.209
+ATOM    270  N   PHE B  50       1.125   5.835  29.050
+ATOM    271  CA  PHE B  50       0.697   4.431  29.161
+ATOM    272  C   PHE B  50       1.453   3.502  28.197
+ATOM    273  O   PHE B  50       1.739   2.347  28.531
+ATOM    274  CB  PHE B  50      -0.810   4.300  28.919
+ATOM    275  CG  PHE B  50      -1.256   2.890  28.656
+ATOM    276  CD1 PHE B  50      -1.579   2.043  29.702
+ATOM    277  CD2 PHE B  50      -1.331   2.403  27.363
+ATOM    278  CE1 PHE B  50      -1.981   0.731  29.463
+ATOM    279  CE2 PHE B  50      -1.735   1.090  27.111
+ATOM    280  CZ  PHE B  50      -2.055   0.249  28.161
+ATOM    281  N   LEU B  51       1.743   3.990  26.993
+ATOM    282  CA  LEU B  51       2.493   3.200  26.020
+ATOM    283  C   LEU B  51       3.909   3.000  26.529
+ATOM    284  O   LEU B  51       4.467   1.911  26.427
+ATOM    285  CB  LEU B  51       2.507   3.880  24.651
+ATOM    286  CG  LEU B  51       1.163   3.974  23.900
+ATOM    287  CD1 LEU B  51       1.182   5.096  22.866
+ATOM    288  CD2 LEU B  51       0.766   2.660  23.232
+ATOM    289  N   GLN B  52       4.475   4.056  27.109
+ATOM    290  CA  GLN B  52       5.823   3.993  27.684
+ATOM    291  C   GLN B  52       5.942   2.977  28.830
+ATOM    292  O   GLN B  52       6.997   2.369  29.008
+ATOM    293  CB  GLN B  52       6.267   5.374  28.161
+ATOM    294  CG  GLN B  52       7.658   5.393  28.760
+ATOM    295  CD  GLN B  52       8.112   6.787  29.143
+ATOM    296  OE1 GLN B  52       7.757   7.775  28.495
+ATOM    297  NE2 GLN B  52       8.908   6.875  30.202
+ATOM    298  N   TRP B  53       4.873   2.814  29.608
+ATOM    299  CA  TRP B  53       4.837   1.816  30.681
+ATOM    300  C   TRP B  53       4.699   0.400  30.118
+ATOM    301  O   TRP B  53       5.350  -0.534  30.585
+ATOM    302  CB  TRP B  53       3.676   2.116  31.634
+ATOM    303  CG  TRP B  53       3.328   0.986  32.558
+ATOM    304  CD1 TRP B  53       3.943   0.665  33.732
+ATOM    305  CD2 TRP B  53       2.273   0.033  32.384
+ATOM    306  NE1 TRP B  53       3.332  -0.424  34.304
+ATOM    307  CE2 TRP B  53       2.308  -0.835  33.491
+ATOM    308  CE3 TRP B  53       1.305  -0.174  31.396
+ATOM    309  CZ2 TRP B  53       1.413  -1.901  33.636
+ATOM    310  CZ3 TRP B  53       0.412  -1.238  31.542
+ATOM    311  CH2 TRP B  53       0.474  -2.084  32.653
+ATOM    312  N   ALA B  54       3.842   0.245  29.117
+ATOM    313  CA  ALA B  54       3.537  -1.069  28.583
+ATOM    314  C   ALA B  54       4.614  -1.597  27.637
+ATOM    315  O   ALA B  54       4.619  -2.781  27.324
+ATOM    316  CB  ALA B  54       2.199  -1.039  27.880
+ATOM    317  N   GLU B  55       5.515  -0.727  27.185
+ATOM    318  CA  GLU B  55       6.574  -1.108  26.236
+ATOM    319  C   GLU B  55       7.527  -2.190  26.755
+ATOM    320  O   GLU B  55       7.732  -3.197  26.076
+ATOM    321  CB  GLU B  55       7.390   0.124  25.814
+ATOM    322  CG  GLU B  55       8.405  -0.139  24.698
+ATOM    323  CD  GLU B  55       7.773  -0.143  23.320
+ATOM    324  OE1 GLU B  55       6.555  -0.384  23.211
+ATOM    325  OE2 GLU B  55       8.501   0.118  22.340
+ATOM    326  N   PRO B  56       8.146  -1.978  27.932
+ATOM    327  CA  PRO B  56       8.968  -3.063  28.465
+ATOM    328  C   PRO B  56       8.194  -4.360  28.650
+ATOM    329  O   PRO B  56       8.725  -5.427  28.368
+ATOM    330  CB  PRO B  56       9.434  -2.525  29.828
+ATOM    331  CG  PRO B  56       8.530  -1.398  30.133
+ATOM    332  CD  PRO B  56       8.179  -0.805  28.816
+ATOM    333  N   ILE B  57       6.947  -4.250  29.101
+ATOM    334  CA  ILE B  57       6.130  -5.417  29.414
+ATOM    335  C   ILE B  57       5.782  -6.172  28.129
+ATOM    336  O   ILE B  57       5.992  -7.394  28.026
+ATOM    337  CB  ILE B  57       4.840  -5.033  30.164
+ATOM    338  CG1 ILE B  57       5.165  -4.187  31.393
+ATOM    339  CG2 ILE B  57       4.091  -6.272  30.633
+ATOM    340  CD1 ILE B  57       3.939  -3.743  32.160
+ATOM    341  N   VAL B  58       5.272  -5.452  27.136
+ATOM    342  CA  VAL B  58       4.981  -6.091  25.866
+ATOM    343  C   VAL B  58       6.255  -6.700  25.286
+ATOM    344  O   VAL B  58       6.235  -7.831  24.795
+ATOM    345  CB  VAL B  58       4.340  -5.148  24.850
+ATOM    346  CG1 VAL B  58       4.107  -5.892  23.540
+ATOM    347  CG2 VAL B  58       3.029  -4.623  25.386
+ATOM    348  N   VAL B  59       7.369  -5.980  25.365
+ATOM    349  CA  VAL B  59       8.613  -6.512  24.808
+ATOM    350  C   VAL B  59       8.994  -7.856  25.427
+ATOM    351  O   VAL B  59       9.211  -8.813  24.687
+ATOM    352  CB  VAL B  59       9.778  -5.508  24.876
+ATOM    353  CG1 VAL B  59      11.110  -6.233  25.019
+ATOM    354  CG2 VAL B  59       9.760  -4.619  23.627
+ATOM    355  N   ARG B  60       9.032  -7.963  26.750
+ATOM    356  CA  ARG B  60       9.266  -9.276  27.375
+ATOM    357  C   ARG B  60       8.180 -10.306  27.004
+ATOM    358  O   ARG B  60       8.502 -11.474  26.785
+ATOM    359  CB  ARG B  60       9.400  -9.173  28.908
+ATOM    360  CG  ARG B  60       9.506 -10.519  29.647
+ATOM    361  N   LEU B  61       6.910  -9.889  26.932
+ATOM    362  CA  LEU B  61       5.825 -10.826  26.582
+ATOM    363  C   LEU B  61       6.024 -11.404  25.184
+ATOM    364  O   LEU B  61       5.814 -12.595  24.964
+ATOM    365  CB  LEU B  61       4.430 -10.173  26.675
+ATOM    366  CG  LEU B  61       3.786 -10.147  28.066
+ATOM    367  CD1 LEU B  61       2.402  -9.503  28.055
+ATOM    368  CD2 LEU B  61       3.697 -11.539  28.622
+ATOM    369  N   LYS B  62       6.440 -10.562  24.250
+ATOM    370  CA  LYS B  62       6.610 -10.998  22.875
+ATOM    371  C   LYS B  62       7.806 -11.961  22.748
+ATOM    372  O   LYS B  62       7.758 -12.927  21.971
+ATOM    373  CB  LYS B  62       6.715  -9.786  21.935
+ATOM    374  CG  LYS B  62       5.366  -9.031  21.756
+ATOM    375  CD  LYS B  62       5.436  -7.900  20.720
+ATOM    376  CE  LYS B  62       4.044  -7.485  20.190
+ATOM    377  N   GLU B  63       8.844 -11.731  23.550
+ATOM    378  CA  GLU B  63      10.018 -12.622  23.589
+ATOM    379  C   GLU B  63       9.688 -14.068  23.998
+ATOM    380  O   GLU B  63      10.312 -15.004  23.511
+ATOM    381  CB  GLU B  63      11.096 -12.066  24.528
+ATOM    382  N   VAL B  64       8.706 -14.253  24.872
+ATOM    383  CA  VAL B  64       8.391 -15.586  25.393
+ATOM    384  C   VAL B  64       7.246 -16.280  24.643
+ATOM    385  O   VAL B  64       7.134 -17.518  24.680
+ATOM    386  CB  VAL B  64       8.041 -15.508  26.885
+ATOM    387  CG1 VAL B  64       7.774 -16.906  27.450
+ATOM    388  CG2 VAL B  64       9.173 -14.834  27.634
+ATOM    389  N   ARG B  65       6.406 -15.485  23.975
+ATOM    390  CA  ARG B  65       5.255 -16.008  23.249
+ATOM    391  C   ARG B  65       5.628 -16.408  21.843
+ATOM    392  O   ARG B  65       6.572 -15.859  21.256
+ATOM    393  CB  ARG B  65       4.145 -14.979  23.172
+ATOM    394  CG  ARG B  65       3.456 -14.739  24.479
+ATOM    395  CD  ARG B  65       2.801 -13.377  24.481
+ATOM    396  NE  ARG B  65       1.538 -13.346  23.743
+ATOM    397  CZ  ARG B  65       0.387 -13.793  24.225
+ATOM    398  NH1 ARG B  65       0.326 -14.341  25.435
+ATOM    399  NH2 ARG B  65      -0.712 -13.708  23.496
+ATOM    400  N   LEU B  66       4.860 -17.347  21.302
+ATOM    401  CA  LEU B  66       5.080 -17.827  19.954
+ATOM    402  C   LEU B  66       4.814 -16.736  18.932
+ATOM    403  O   LEU B  66       3.833 -16.009  19.025
+ATOM    404  CB  LEU B  66       4.187 -19.033  19.633
+ATOM    405  CG  LEU B  66       4.507 -20.346  20.347
+ATOM    406  CD1 LEU B  66       3.452 -21.357  19.989
+ATOM    407  CD2 LEU B  66       5.907 -20.871  20.020
+ATOM    408  N   GLN B  67       5.722 -16.653  17.968
+ATOM    409  CA  GLN B  67       5.594 -15.843  16.776
+ATOM    410  C   GLN B  67       5.840 -16.764  15.591
+ATOM    411  O   GLN B  67       6.402 -17.848  15.761
+ATOM    412  CB  GLN B  67       6.679 -14.790  16.777
+ATOM    413  CG  GLN B  67       6.894 -14.098  18.117
+ATOM    414  CD  GLN B  67       8.222 -13.370  18.179
+ATOM    415  OE1 GLN B  67       8.872 -13.141  17.149
+ATOM    416  NE2 GLN B  67       8.640 -13.015  19.392
+ATOM    417  N   ARG B  68       5.467 -16.330  14.392
+ATOM    418  CA  ARG B  68       5.739 -17.111  13.187
+ATOM    419  C   ARG B  68       7.224 -17.452  13.065
+ATOM    420  O   ARG B  68       7.588 -18.569  12.693
+ATOM    421  CB  ARG B  68       5.292 -16.349  11.942
+ATOM    422  CG  ARG B  68       5.240 -17.225  10.707
+ATOM    423  CD  ARG B  68       5.185 -16.444   9.421
+ATOM    424  NE  ARG B  68       3.880 -15.842   9.225
+ATOM    425  CZ  ARG B  68       3.410 -15.425   8.052
+ATOM    426  NH1 ARG B  68       4.144 -15.534   6.951
+ATOM    427  NH2 ARG B  68       2.190 -14.901   7.989
+ATOM    428  N   ASP B  69       8.070 -16.471  13.375
+ATOM    429  CA  ASP B  69       9.524 -16.646  13.416
+ATOM    430  C   ASP B  69      10.032 -17.877  14.193
+ATOM    431  O   ASP B  69      11.128 -18.380  13.925
+ATOM    432  CB  ASP B  69      10.187 -15.393  14.028
+ATOM    433  CG  ASP B  69      10.773 -14.452  12.979
+ATOM    434  OD1 ASP B  69      10.563 -14.668  11.759
+ATOM    435  OD2 ASP B  69      11.467 -13.492  13.394
+ATOM    436  N   ASP B  70       9.275 -18.347  15.171
+ATOM    437  CA  ASP B  70       9.699 -19.508  15.935
+ATOM    438  C   ASP B  70       9.576 -20.811  15.144
+ATOM    439  O   ASP B  70      10.130 -21.831  15.556
+ATOM    440  CB  ASP B  70       8.882 -19.612  17.209
+ATOM    441  CG  ASP B  70       9.039 -18.414  18.094
+ATOM    442  OD1 ASP B  70      10.195 -18.051  18.398
+ATOM    443  OD2 ASP B  70       8.002 -17.841  18.485
+ATOM    444  N   PHE B  71       8.847 -20.778  14.028
+ATOM    445  CA  PHE B  71       8.740 -21.925  13.136
+ATOM    446  C   PHE B  71       9.439 -21.666  11.796
+ATOM    447  O   PHE B  71       9.482 -20.540  11.327
+ATOM    448  CB  PHE B  71       7.273 -22.234  12.841
+ATOM    449  CG  PHE B  71       6.434 -22.462  14.060
+ATOM    450  CD1 PHE B  71       5.890 -21.396  14.753
+ATOM    451  CD2 PHE B  71       6.161 -23.744  14.502
+ATOM    452  CE1 PHE B  71       5.101 -21.603  15.873
+ATOM    453  CE2 PHE B  71       5.375 -23.957  15.633
+ATOM    454  CZ  PHE B  71       4.847 -22.890  16.313
+ATOM    455  N   GLU B  72       9.972 -22.723  11.192
+ATOM    456  CA  GLU B  72      10.387 -22.711   9.796
+ATOM    457  C   GLU B  72       9.226 -23.202   8.980
+ATOM    458  O   GLU B  72       8.649 -24.233   9.307
+ATOM    459  CB  GLU B  72      11.554 -23.666   9.548
+ATOM    460  CG  GLU B  72      12.857 -23.226  10.153
+ATOM    461  CD  GLU B  72      14.010 -24.167   9.819
+ATOM    462  OE1 GLU B  72      13.789 -25.134   9.048
+ATOM    463  OE2 GLU B  72      15.141 -23.937  10.332
+ATOM    464  N   ILE B  73       8.891 -22.483   7.914
+ATOM    465  CA  ILE B  73       7.882 -22.943   6.965
+ATOM    466  C   ILE B  73       8.558 -23.852   5.941
+ATOM    467  O   ILE B  73       9.392 -23.393   5.176
+ATOM    468  CB  ILE B  73       7.226 -21.769   6.236
+ATOM    469  CG1 ILE B  73       6.197 -21.074   7.143
+ATOM    470  CG2 ILE B  73       6.543 -22.258   4.950
+ATOM    471  CD1 ILE B  73       6.768 -20.366   8.376
+ATOM    472  N   LEU B  74       8.197 -25.133   5.922
+ATOM    473  CA  LEU B  74       8.911 -26.123   5.100
+ATOM    474  C   LEU B  74       8.300 -26.306   3.724
+ATOM    475  O   LEU B  74       9.023 -26.384   2.729
+ATOM    476  CB  LEU B  74       8.961 -27.495   5.790
+ATOM    477  CG  LEU B  74       9.841 -27.633   7.034
+ATOM    478  CD1 LEU B  74       9.873 -29.080   7.468
+ATOM    479  CD2 LEU B  74      11.238 -27.133   6.791
+ATOM    480  N   LYS B  75       6.978 -26.376   3.672
+ATOM    481  CA  LYS B  75       6.274 -26.793   2.474
+ATOM    482  C   LYS B  75       4.818 -26.420   2.656
+ATOM    483  O   LYS B  75       4.227 -26.721   3.692
+ATOM    484  CB  LYS B  75       6.409 -28.313   2.316
+ATOM    485  CG  LYS B  75       5.679 -28.940   1.113
+ATOM    486  CD  LYS B  75       5.438 -30.455   1.330
+ATOM    487  CE  LYS B  75       5.000 -31.194   0.048
+ATOM    488  NZ  LYS B  75       6.028 -31.105  -1.046
+ATOM    489  N   VAL B  76       4.231 -25.759   1.670
+ATOM    490  CA  VAL B  76       2.799 -25.437   1.739
+ATOM    491  C   VAL B  76       2.014 -26.627   1.193
+ATOM    492  O   VAL B  76       2.284 -27.094   0.098
+ATOM    493  CB  VAL B  76       2.470 -24.159   0.956
+ATOM    494  CG1 VAL B  76       0.971 -23.906   0.971
+ATOM    495  CG2 VAL B  76       3.249 -22.971   1.537
+ATOM    496  N   ILE B  77       1.077 -27.142   1.976
+ATOM    497  CA  ILE B  77       0.306 -28.324   1.587
+ATOM    498  C   ILE B  77      -1.165 -28.006   1.310
+ATOM    499  O   ILE B  77      -1.889 -28.851   0.800
+ATOM    500  CB  ILE B  77       0.405 -29.460   2.652
+ATOM    501  CG1 ILE B  77      -0.179 -29.035   4.003
+ATOM    502  CG2 ILE B  77       1.850 -29.898   2.832
+ATOM    503  CD1 ILE B  77      -0.051 -30.084   5.070
+ATOM    504  N   GLY B  78      -1.610 -26.797   1.651
+ATOM    505  CA  GLY B  78      -2.984 -26.371   1.400
+ATOM    506  C   GLY B  78      -3.041 -24.888   1.082
+ATOM    507  O   GLY B  78      -2.291 -24.094   1.665
+ATOM    508  N   ARG B  79      -3.921 -24.520   0.153
+ATOM    509  CA  ARG B  79      -4.110 -23.120  -0.238
+ATOM    510  C   ARG B  79      -5.576 -22.827  -0.449
+ATOM    511  O   ARG B  79      -6.063 -22.909  -1.563
+ATOM    512  CB  ARG B  79      -3.373 -22.808  -1.537
+ATOM    513  CG  ARG B  79      -1.887 -22.837  -1.438
+ATOM    514  CD  ARG B  79      -1.301 -22.206  -2.659
+ATOM    515  NE  ARG B  79       0.094 -22.570  -2.869
+ATOM    516  CZ  ARG B  79       1.139 -21.869  -2.440
+ATOM    517  NH1 ARG B  79       0.966 -20.749  -1.744
+ATOM    518  NH2 ARG B  79       2.368 -22.299  -2.716
+ATOM    519  N   GLY B  80      -6.274 -22.479   0.627
+ATOM    520  CA  GLY B  80      -7.704 -22.155   0.571
+ATOM    521  C   GLY B  80      -8.081 -20.774  -0.005
+ATOM    522  O   GLY B  80      -7.244 -20.022  -0.624
+ATOM    523  N   ALA B  81      -9.379 -20.481   0.177
+ATOM    524  CA  ALA B  81      -9.950 -19.153  -0.057
+ATOM    525  C   ALA B  81      -9.205 -18.133   0.819
+ATOM    526  O   ALA B  81      -8.503 -17.221   0.324
+ATOM    527  CB  ALA B  81     -11.439 -19.163   0.296
+ATOM    528  N   PHE B  82      -9.323 -18.345   2.127
+ATOM    529  CA  PHE B  82      -8.817 -17.408   3.098
+ATOM    530  C   PHE B  82      -7.850 -18.047   4.090
+ATOM    531  O   PHE B  82      -7.848 -17.696   5.263
+ATOM    532  CB  PHE B  82     -10.009 -16.791   3.831
+ATOM    533  CG  PHE B  82     -11.086 -16.298   2.903
+ATOM    534  CD1 PHE B  82     -12.409 -16.717   3.069
+ATOM    535  CD2 PHE B  82     -10.763 -15.433   1.840
+ATOM    536  CE1 PHE B  82     -13.407 -16.266   2.210
+ATOM    537  CE2 PHE B  82     -11.748 -14.981   0.960
+ATOM    538  CZ  PHE B  82     -13.078 -15.396   1.144
+ATOM    539  N   SER B  83      -7.017 -18.966   3.616
+ATOM    540  CA  SER B  83      -6.034 -19.593   4.474
+ATOM    541  C   SER B  83      -4.969 -20.315   3.669
+ATOM    542  O   SER B  83      -5.195 -20.689   2.532
+ATOM    543  CB  SER B  83      -6.713 -20.574   5.427
+ATOM    544  OG  SER B  83      -7.198 -21.693   4.721
+ATOM    545  N   GLU B  84      -3.795 -20.473   4.270
+ATOM    546  CA  GLU B  84      -2.765 -21.386   3.771
+ATOM    547  C   GLU B  84      -2.417 -22.370   4.887
+ATOM    548  O   GLU B  84      -2.468 -22.012   6.069
+ATOM    549  CB  GLU B  84      -1.532 -20.606   3.338
+ATOM    550  CG  GLU B  84      -1.765 -19.768   2.087
+ATOM    551  CD  GLU B  84      -0.539 -18.956   1.682
+ATOM    552  OE1 GLU B  84       0.169 -18.468   2.586
+ATOM    553  OE2 GLU B  84      -0.284 -18.796   0.465
+ATOM    554  N   VAL B  85      -2.104 -23.609   4.522
+ATOM    555  CA  VAL B  85      -1.612 -24.581   5.506
+ATOM    556  C   VAL B  85      -0.224 -25.103   5.125
+ATOM    557  O   VAL B  85      -0.004 -25.549   4.004
+ATOM    558  CB  VAL B  85      -2.588 -25.737   5.695
+ATOM    559  CG1 VAL B  85      -1.991 -26.774   6.607
+ATOM    560  CG2 VAL B  85      -3.868 -25.224   6.290
+ATOM    561  N   ALA B  86       0.717 -25.024   6.054
+ATOM    562  CA  ALA B  86       2.073 -25.459   5.773
+ATOM    563  C   ALA B  86       2.552 -26.483   6.793
+ATOM    564  O   ALA B  86       2.166 -26.445   7.961
+ATOM    565  CB  ALA B  86       3.030 -24.260   5.738
+ATOM    566  N   VAL B  87       3.377 -27.413   6.322
+ATOM    567  CA  VAL B  87       4.164 -28.229   7.202
+ATOM    568  C   VAL B  87       5.196 -27.260   7.733
+ATOM    569  O   VAL B  87       5.875 -26.626   6.946
+ATOM    570  CB  VAL B  87       4.853 -29.399   6.453
+ATOM    571  CG1 VAL B  87       5.998 -29.994   7.291
+ATOM    572  CG2 VAL B  87       3.850 -30.480   6.102
+ATOM    573  N   VAL B  88       5.289 -27.124   9.052
+ATOM    574  CA  VAL B  88       6.253 -26.230   9.685
+ATOM    575  C   VAL B  88       7.086 -27.003  10.689
+ATOM    576  O   VAL B  88       6.686 -28.059  11.137
+ATOM    577  CB  VAL B  88       5.555 -25.066  10.456
+ATOM    578  CG1 VAL B  88       4.610 -24.283   9.550
+ATOM    579  CG2 VAL B  88       4.818 -25.591  11.677
+ATOM    580  N   LYS B  89       8.241 -26.460  11.053
+ATOM    581  CA  LYS B  89       9.080 -27.044  12.100
+ATOM    582  C   LYS B  89       9.359 -26.011  13.208
+ATOM    583  O   LYS B  89       9.858 -24.920  12.935
+ATOM    584  CB  LYS B  89      10.404 -27.553  11.517
+ATOM    585  CG  LYS B  89      11.262 -28.324  12.528
+ATOM    586  CD  LYS B  89      12.746 -28.256  12.207
+ATOM    587  CE  LYS B  89      13.095 -28.881  10.865
+ATOM    588  NZ  LYS B  89      14.581 -28.899  10.664
+ATOM    589  N   MET B  90       9.035 -26.359  14.453
+ATOM    590  CA  MET B  90       9.331 -25.487  15.576
+ATOM    591  C   MET B  90      10.821 -25.570  15.796
+ATOM    592  O   MET B  90      11.377 -26.661  15.785
+ATOM    593  CB  MET B  90       8.582 -25.920  16.828
+ATOM    594  CG  MET B  90       8.860 -25.036  18.040
+ATOM    595  SD  MET B  90       7.502 -25.033  19.233
+ATOM    596  CE  MET B  90       8.332 -24.683  20.793
+ATOM    597  N   LYS B  91      11.462 -24.420  15.989
+ATOM    598  CA  LYS B  91      12.919 -24.342  15.963
+ATOM    599  C   LYS B  91      13.595 -24.819  17.239
+ATOM    600  O   LYS B  91      14.679 -25.370  17.177
+ATOM    601  CB  LYS B  91      13.368 -22.915  15.661
+ATOM    602  CG  LYS B  91      13.013 -22.443  14.269
+ATOM    603  CD  LYS B  91      13.464 -20.997  14.039
+ATOM    604  CE  LYS B  91      13.137 -20.487  12.623
+ATOM    605  NZ  LYS B  91      13.511 -19.057  12.440
+ATOM    606  N   GLN B  92      12.984 -24.597  18.395
+ATOM    607  CA  GLN B  92      13.603 -25.015  19.658
+ATOM    608  C   GLN B  92      13.668 -26.523  19.784
+ATOM    609  O   GLN B  92      14.622 -27.071  20.321
+ATOM    610  CB  GLN B  92      12.844 -24.466  20.876
+ATOM    611  CG  GLN B  92      13.245 -23.072  21.290
+ATOM    612  CD  GLN B  92      14.685 -22.996  21.756
+ATOM    613  OE1 GLN B  92      15.472 -22.201  21.237
+ATOM    614  NE2 GLN B  92      15.043 -23.831  22.732
+ATOM    615  N   THR B  93      12.634 -27.192  19.309
+ATOM    616  CA  THR B  93      12.485 -28.595  19.585
+ATOM    617  C   THR B  93      12.726 -29.405  18.339
+ATOM    618  O   THR B  93      12.998 -30.581  18.437
+ATOM    619  CB  THR B  93      11.063 -28.897  20.121
+ATOM    620  OG1 THR B  93      10.090 -28.588  19.115
+ATOM    621  CG2 THR B  93      10.768 -28.075  21.367
+ATOM    622  N   GLY B  94      12.599 -28.800  17.162
+ATOM    623  CA  GLY B  94      12.693 -29.555  15.914
+ATOM    624  C   GLY B  94      11.443 -30.353  15.582
+ATOM    625  O   GLY B  94      11.417 -31.053  14.576
+ATOM    626  N   GLN B  95      10.405 -30.239  16.414
+ATOM    627  CA  GLN B  95       9.121 -30.921  16.186
+ATOM    628  C   GLN B  95       8.431 -30.399  14.948
+ATOM    629  O   GLN B  95       8.363 -29.188  14.769
+ATOM    630  CB  GLN B  95       8.169 -30.695  17.366
+ATOM    631  CG  GLN B  95       8.478 -31.552  18.581
+ATOM    632  CD  GLN B  95       7.753 -31.085  19.827
+ATOM    633  OE1 GLN B  95       7.859 -29.922  20.226
+ATOM    634  NE2 GLN B  95       7.019 -31.991  20.456
+ATOM    635  N   VAL B  96       7.897 -31.304  14.125
+ATOM    636  CA  VAL B  96       7.130 -30.929  12.920
+ATOM    637  C   VAL B  96       5.633 -30.761  13.228
+ATOM    638  O   VAL B  96       5.072 -31.481  14.024
+ATOM    639  CB  VAL B  96       7.337 -31.947  11.735
+ATOM    640  CG1 VAL B  96       6.984 -33.357  12.150
+ATOM    641  CG2 VAL B  96       6.517 -31.533  10.495
+ATOM    642  N   TYR B  97       5.001 -29.784  12.592
+ATOM    643  CA  TYR B  97       3.578 -29.511  12.782
+ATOM    644  C   TYR B  97       2.994 -28.981  11.498
+ATOM    645  O   TYR B  97       3.726 -28.611  10.600
+ATOM    646  CB  TYR B  97       3.373 -28.409  13.803
+ATOM    647  CG  TYR B  97       3.884 -28.657  15.195
+ATOM    648  CD1 TYR B  97       5.078 -28.108  15.615
+ATOM    649  CD2 TYR B  97       3.126 -29.341  16.114
+ATOM    650  CE1 TYR B  97       5.531 -28.285  16.904
+ATOM    651  CE2 TYR B  97       3.559 -29.512  17.401
+ATOM    652  CZ  TYR B  97       4.766 -28.991  17.794
+ATOM    653  OH  TYR B  97       5.212 -29.179  19.071
+ATOM    654  N   ALA B  98       1.669 -28.906  11.439
+ATOM    655  CA  ALA B  98       0.959 -28.304  10.296
+ATOM    656  C   ALA B  98       0.283 -27.055  10.821
+ATOM    657  O   ALA B  98      -0.422 -27.119  11.820
+ATOM    658  CB  ALA B  98      -0.070 -29.267   9.707
+ATOM    659  N   MET B  99       0.505 -25.940  10.134
+ATOM    660  CA  MET B  99       0.150 -24.620  10.609
+ATOM    661  C   MET B  99      -0.832 -24.011   9.638
+ATOM    662  O   MET B  99      -0.544 -23.900   8.450
+ATOM    663  CB  MET B  99       1.409 -23.743  10.677
+ATOM    664  CG  MET B  99       1.183 -22.235  10.905
+ATOM    665  SD  MET B  99       2.742 -21.325  11.171
+ATOM    666  CE  MET B  99       3.107 -21.731  12.873
+ATOM    667  N   LYS B 100      -1.999 -23.627  10.138
+ATOM    668  CA  LYS B 100      -2.943 -22.889   9.332
+ATOM    669  C   LYS B 100      -2.718 -21.430   9.631
+ATOM    670  O   LYS B 100      -2.614 -21.055  10.793
+ATOM    671  CB  LYS B 100      -4.374 -23.267   9.681
+ATOM    672  CG  LYS B 100      -5.409 -22.562   8.821
+ATOM    673  CD  LYS B 100      -6.809 -22.893   9.285
+ATOM    674  CE  LYS B 100      -7.859 -22.240   8.431
+ATOM    675  NZ  LYS B 100      -9.187 -22.347   9.100
+ATOM    676  N   ILE B 101      -2.652 -20.617   8.582
+ATOM    677  CA  ILE B 101      -2.512 -19.184   8.724
+ATOM    678  C   ILE B 101      -3.690 -18.470   8.041
+ATOM    679  O   ILE B 101      -4.029 -18.786   6.890
+ATOM    680  CB  ILE B 101      -1.198 -18.681   8.091
+ATOM    681  CG1 ILE B 101      -0.005 -19.504   8.583
+ATOM    682  CG2 ILE B 101      -0.993 -17.203   8.428
+ATOM    683  CD1 ILE B 101       1.316 -19.115   7.964
+ATOM    684  N   MET B 102      -4.285 -17.499   8.741
+ATOM    685  CA  MET B 102      -5.322 -16.650   8.178
+ATOM    686  C   MET B 102      -4.996 -15.160   8.309
+ATOM    687  O   MET B 102      -4.247 -14.766   9.181
+ATOM    688  CB  MET B 102      -6.624 -16.937   8.888
+ATOM    689  CG  MET B 102      -7.174 -18.273   8.568
+ATOM    690  SD  MET B 102      -8.063 -18.973   9.956
+ATOM    691  CE  MET B 102      -6.742 -19.429  11.117
+ATOM    692  N   ASN B 103      -5.585 -14.346   7.436
+ATOM    693  CA  ASN B 103      -5.415 -12.894   7.440
+ATOM    694  C   ASN B 103      -6.548 -12.251   8.230
+ATOM    695  O   ASN B 103      -7.706 -12.425   7.871
+ATOM    696  CB  ASN B 103      -5.440 -12.381   5.994
+ATOM    697  CG  ASN B 103      -5.179 -10.894   5.876
+ATOM    698  OD1 ASN B 103      -5.600 -10.096   6.711
+ATOM    699  ND2 ASN B 103      -4.486 -10.509   4.814
+ATOM    700  N   LYS B 104      -6.220 -11.505   9.289
+ATOM    701  CA  LYS B 104      -7.228 -10.834  10.134
+ATOM    702  C   LYS B 104      -8.127  -9.907   9.339
+ATOM    703  O   LYS B 104      -9.317  -9.873   9.549
+ATOM    704  CB  LYS B 104      -6.558 -10.003  11.246
+ATOM    705  CG  LYS B 104      -6.016 -10.800  12.420
+ATOM    706  CD  LYS B 104      -5.341  -9.902  13.423
+ATOM    707  CE  LYS B 104      -5.030 -10.642  14.701
+ATOM    708  NZ  LYS B 104      -4.199  -9.830  15.620
+ATOM    709  N   TRP B 105      -7.547  -9.128   8.441
+ATOM    710  CA  TRP B 105      -8.312  -8.181   7.650
+ATOM    711  C   TRP B 105      -9.359  -8.911   6.819
+ATOM    712  O   TRP B 105     -10.473  -8.405   6.654
+ATOM    713  CB  TRP B 105      -7.364  -7.387   6.758
+ATOM    714  CG  TRP B 105      -7.979  -6.292   5.943
+ATOM    715  CD1 TRP B 105      -7.668  -5.980   4.666
+ATOM    716  CD2 TRP B 105      -8.979  -5.345   6.356
+ATOM    717  NE1 TRP B 105      -8.406  -4.908   4.247
+ATOM    718  CE2 TRP B 105      -9.224  -4.502   5.267
+ATOM    719  CE3 TRP B 105      -9.691  -5.128   7.541
+ATOM    720  CZ2 TRP B 105     -10.157  -3.470   5.319
+ATOM    721  CZ3 TRP B 105     -10.616  -4.090   7.586
+ATOM    722  CH2 TRP B 105     -10.844  -3.288   6.487
+ATOM    723  N   ASP B 106      -9.003 -10.098   6.313
+ATOM    724  CA  ASP B 106      -9.952 -10.927   5.563
+ATOM    725  C   ASP B 106     -11.095 -11.351   6.467
+ATOM    726  O   ASP B 106     -12.252 -11.242   6.093
+ATOM    727  CB  ASP B 106      -9.291 -12.172   4.941
+ATOM    728  CG  ASP B 106      -8.410 -11.848   3.710
+ATOM    729  OD1 ASP B 106      -8.516 -10.730   3.152
+ATOM    730  OD2 ASP B 106      -7.614 -12.726   3.285
+ATOM    731  N   MET B 107     -10.774 -11.812   7.665
+ATOM    732  CA  MET B 107     -11.808 -12.219   8.603
+ATOM    733  C   MET B 107     -12.775 -11.081   8.938
+ATOM    734  O   MET B 107     -13.969 -11.316   9.122
+ATOM    735  CB  MET B 107     -11.192 -12.768   9.887
+ATOM    736  CG  MET B 107     -10.310 -13.989   9.681
+ATOM    737  SD  MET B 107     -11.119 -15.351   8.830
+ATOM    738  CE  MET B 107     -10.692 -14.997   7.123
+ATOM    739  N   LEU B 108     -12.279  -9.854   8.997
+ATOM    740  CA  LEU B 108     -13.145  -8.727   9.318
+ATOM    741  C   LEU B 108     -14.079  -8.383   8.163
+ATOM    742  O   LEU B 108     -15.213  -7.998   8.384
+ATOM    743  CB  LEU B 108     -12.317  -7.503   9.714
+ATOM    744  CG  LEU B 108     -11.516  -7.711  10.996
+ATOM    745  CD1 LEU B 108     -10.671  -6.498  11.289
+ATOM    746  CD2 LEU B 108     -12.428  -8.062  12.184
+ATOM    747  N   LYS B 109     -13.587  -8.514   6.935
+ATOM    748  CA  LYS B 109     -14.376  -8.220   5.746
+ATOM    749  C   LYS B 109     -15.397  -9.316   5.476
+ATOM    750  O   LYS B 109     -16.547  -9.003   5.200
+ATOM    751  CB  LYS B 109     -13.470  -8.008   4.540
+ATOM    752  CG  LYS B 109     -12.681  -6.711   4.612
+ATOM    753  CD  LYS B 109     -11.834  -6.458   3.370
+ATOM    754  CE  LYS B 109     -10.696  -7.446   3.277
+ATOM    755  NZ  LYS B 109      -9.763  -7.113   2.182
+ATOM    756  N   ARG B 110     -14.992 -10.586   5.560
+ATOM    757  CA  ARG B 110     -15.934 -11.714   5.422
+ATOM    758  C   ARG B 110     -17.033 -11.577   6.481
+ATOM    759  O   ARG B 110     -18.206 -11.906   6.244
+ATOM    760  CB  ARG B 110     -15.225 -13.068   5.551
+ATOM    761  N   GLY B 111     -16.643 -11.073   7.651
+ATOM    762  CA  GLY B 111     -17.596 -10.630   8.661
+ATOM    763  C   GLY B 111     -18.438 -11.749   9.230
+ATOM    764  O   GLY B 111     -17.964 -12.864   9.400
+ATOM    765  N   GLU B 112     -19.703 -11.437   9.494
+ATOM    766  CA  GLU B 112     -20.632 -12.348  10.159
+ATOM    767  C   GLU B 112     -20.577 -13.769   9.619
+ATOM    768  O   GLU B 112     -20.834 -14.718  10.361
+ATOM    769  CB  GLU B 112     -22.071 -11.811  10.060
+ATOM    770  N   VAL B 113     -20.240 -13.933   8.342
+ATOM    771  CA  VAL B 113     -20.176 -15.281   7.779
+ATOM    772  C   VAL B 113     -19.052 -16.159   8.361
+ATOM    773  O   VAL B 113     -19.248 -17.363   8.508
+ATOM    774  CB  VAL B 113     -20.043 -15.275   6.259
+ATOM    775  CG1 VAL B 113     -20.241 -16.677   5.744
+ATOM    776  CG2 VAL B 113     -21.065 -14.345   5.646
+ATOM    777  N   SER B 114     -17.893 -15.575   8.692
+ATOM    778  CA  SER B 114     -16.722 -16.373   9.113
+ATOM    779  C   SER B 114     -16.769 -16.813  10.574
+ATOM    780  O   SER B 114     -17.316 -16.109  11.435
+ATOM    781  CB  SER B 114     -15.411 -15.634   8.852
+ATOM    782  OG  SER B 114     -15.164 -14.667   9.848
+ATOM    783  N   CYS B 115     -16.146 -17.967  10.819
+ATOM    784  CA  CYS B 115     -16.237 -18.692  12.063
+ATOM    785  C   CYS B 115     -14.871 -18.957  12.688
+ATOM    786  O   CYS B 115     -14.621 -20.046  13.234
+ATOM    787  CB  CYS B 115     -16.878 -20.037  11.778
+ATOM    788  SG  CYS B 115     -18.398 -19.886  10.923
+ATOM    789  N   PHE B 116     -13.973 -17.982  12.602
+ATOM    790  CA  PHE B 116     -12.639 -18.173  13.147
+ATOM    791  C   PHE B 116     -12.722 -18.417  14.657
+ATOM    792  O   PHE B 116     -11.948 -19.167  15.220
+ATOM    793  CB  PHE B 116     -11.743 -16.979  12.813
+ATOM    794  CG  PHE B 116     -12.168 -15.690  13.465
+ATOM    795  CD1 PHE B 116     -12.991 -14.790  12.793
+ATOM    796  CD2 PHE B 116     -11.741 -15.372  14.741
+ATOM    797  CE1 PHE B 116     -13.378 -13.597  13.377
+ATOM    798  CE2 PHE B 116     -12.133 -14.193  15.327
+ATOM    799  CZ  PHE B 116     -12.956 -13.295  14.631
+ATOM    800  N   ARG B 117     -13.696 -17.788  15.289
+ATOM    801  CA  ARG B 117     -13.900 -17.888  16.722
+ATOM    802  C   ARG B 117     -14.330 -19.304  17.125
+ATOM    803  O   ARG B 117     -13.818 -19.869  18.113
+ATOM    804  CB  ARG B 117     -14.949 -16.849  17.123
+ATOM    805  CG  ARG B 117     -15.279 -16.709  18.588
+ATOM    806  CD  ARG B 117     -14.208 -15.963  19.361
+ATOM    807  NE  ARG B 117     -13.433 -16.892  20.174
+ATOM    808  CZ  ARG B 117     -12.260 -16.618  20.726
+ATOM    809  NH1 ARG B 117     -11.688 -15.423  20.561
+ATOM    810  NH2 ARG B 117     -11.660 -17.555  21.449
+ATOM    811  N   GLU B 118     -15.254 -19.880  16.355
+ATOM    812  CA  GLU B 118     -15.782 -21.212  16.642
+ATOM    813  C   GLU B 118     -14.767 -22.295  16.289
+ATOM    814  O   GLU B 118     -14.614 -23.293  17.035
+ATOM    815  CB  GLU B 118     -17.069 -21.450  15.872
+ATOM    816  CG  GLU B 118     -18.246 -20.624  16.348
+ATOM    817  CD  GLU B 118     -18.341 -19.276  15.689
+ATOM    818  OE1 GLU B 118     -17.302 -18.735  15.252
+ATOM    819  OE2 GLU B 118     -19.469 -18.749  15.617
+ATOM    820  N   GLU B 119     -14.072 -22.109  15.161
+ATOM    821  CA  GLU B 119     -13.033 -23.056  14.743
+ATOM    822  C   GLU B 119     -12.092 -23.249  15.898
+ATOM    823  O   GLU B 119     -11.757 -24.376  16.285
+ATOM    824  CB  GLU B 119     -12.257 -22.551  13.526
+ATOM    825  CG  GLU B 119     -11.159 -23.505  13.014
+ATOM    826  CD  GLU B 119     -10.451 -22.995  11.750
+ATOM    827  OE1 GLU B 119     -10.682 -21.843  11.351
+ATOM    828  OE2 GLU B 119      -9.672 -23.747  11.121
+ATOM    829  N   ARG B 120     -11.696 -22.120  16.468
+ATOM    830  CA  ARG B 120     -10.748 -22.110  17.555
+ATOM    831  C   ARG B 120     -11.339 -22.735  18.786
+ATOM    832  O   ARG B 120     -10.727 -23.604  19.356
+ATOM    833  CB  ARG B 120     -10.302 -20.681  17.828
+ATOM    834  CG  ARG B 120      -9.226 -20.553  18.858
+ATOM    835  CD  ARG B 120      -9.809 -20.081  20.168
+ATOM    836  NE  ARG B 120      -8.764 -19.978  21.171
+ATOM    837  CZ  ARG B 120      -8.946 -20.195  22.463
+ATOM    838  NH1 ARG B 120      -7.921 -20.076  23.284
+ATOM    839  NH2 ARG B 120     -10.127 -20.561  22.930
+ATOM    840  N   ASP B 121     -12.536 -22.327  19.191
+ATOM    841  CA  ASP B 121     -13.141 -22.915  20.402
+ATOM    842  C   ASP B 121     -13.318 -24.436  20.325
+ATOM    843  O   ASP B 121     -13.116 -25.148  21.317
+ATOM    844  CB  ASP B 121     -14.492 -22.283  20.702
+ATOM    845  CG  ASP B 121     -14.382 -20.848  21.150
+ATOM    846  OD1 ASP B 121     -13.288 -20.437  21.593
+ATOM    847  OD2 ASP B 121     -15.409 -20.136  21.062
+ATOM    848  N   VAL B 122     -13.707 -24.930  19.150
+ATOM    849  CA  VAL B 122     -13.842 -26.370  18.960
+ATOM    850  C   VAL B 122     -12.486 -27.042  19.048
+ATOM    851  O   VAL B 122     -12.345 -28.023  19.751
+ATOM    852  CB  VAL B 122     -14.529 -26.726  17.611
+ATOM    853  CG1 VAL B 122     -14.452 -28.230  17.352
+ATOM    854  CG2 VAL B 122     -15.979 -26.259  17.633
+ATOM    855  N   LEU B 123     -11.489 -26.525  18.335
+ATOM    856  CA  LEU B 123     -10.143 -27.092  18.413
+ATOM    857  C   LEU B 123      -9.587 -27.062  19.856
+ATOM    858  O   LEU B 123      -8.860 -27.981  20.251
+ATOM    859  CB  LEU B 123      -9.173 -26.376  17.463
+ATOM    860  CG  LEU B 123      -9.369 -26.632  15.968
+ATOM    861  CD1 LEU B 123      -8.545 -25.659  15.114
+ATOM    862  CD2 LEU B 123      -9.040 -28.043  15.588
+ATOM    863  N   VAL B 124      -9.941 -26.028  20.629
+ATOM    864  CA  VAL B 124      -9.434 -25.856  21.996
+ATOM    865  C   VAL B 124     -10.208 -26.631  23.067
+ATOM    866  O   VAL B 124      -9.627 -26.994  24.062
+ATOM    867  CB  VAL B 124      -9.345 -24.361  22.419
+ATOM    868  CG1 VAL B 124      -8.943 -24.234  23.897
+ATOM    869  CG2 VAL B 124      -8.331 -23.623  21.549
+ATOM    870  N   ASN B 125     -11.496 -26.886  22.873
+ATOM    871  CA  ASN B 125     -12.279 -27.683  23.828
+ATOM    872  C   ASN B 125     -12.698 -29.076  23.342
+ATOM    873  O   ASN B 125     -13.207 -29.872  24.112
+ATOM    874  CB  ASN B 125     -13.532 -26.911  24.225
+ATOM    875  CG  ASN B 125     -13.209 -25.597  24.879
+ATOM    876  OD1 ASN B 125     -12.999 -25.530  26.079
+ATOM    877  ND2 ASN B 125     -13.159 -24.548  24.095
+ATOM    878  N   GLY B 126     -12.487 -29.378  22.071
+ATOM    879  CA  GLY B 126     -12.954 -30.630  21.510
+ATOM    880  C   GLY B 126     -12.210 -31.850  22.012
+ATOM    881  O   GLY B 126     -11.215 -31.748  22.729
+ATOM    882  N   ASP B 127     -12.704 -33.015  21.603
+ATOM    883  CA  ASP B 127     -12.167 -34.276  22.056
+ATOM    884  C   ASP B 127     -11.135 -34.765  21.060
+ATOM    885  O   ASP B 127     -11.476 -35.158  19.947
+ATOM    886  CB  ASP B 127     -13.296 -35.286  22.194
+ATOM    887  CG  ASP B 127     -12.815 -36.648  22.602
+ATOM    888  OD1 ASP B 127     -11.583 -36.833  22.693
+ATOM    889  OD2 ASP B 127     -13.672 -37.536  22.824
+ATOM    890  N   ARG B 128      -9.877 -34.776  21.488
+ATOM    891  CA  ARG B 128      -8.740 -35.137  20.629
+ATOM    892  C   ARG B 128      -8.635 -36.589  20.203
+ATOM    893  O   ARG B 128      -7.793 -36.886  19.351
+ATOM    894  CB  ARG B 128      -7.423 -34.714  21.265
+ATOM    895  CG  ARG B 128      -7.251 -33.237  21.231
+ATOM    896  CD  ARG B 128      -6.143 -32.797  22.110
+ATOM    897  NE  ARG B 128      -6.508 -32.843  23.523
+ATOM    898  CZ  ARG B 128      -5.624 -32.769  24.512
+ATOM    899  NH1 ARG B 128      -4.330 -32.636  24.243
+ATOM    900  NH2 ARG B 128      -6.033 -32.822  25.773
+ATOM    901  N   ARG B 129      -9.468 -37.478  20.757
+ATOM    902  CA  ARG B 129      -9.616 -38.838  20.190
+ATOM    903  C   ARG B 129     -10.133 -38.807  18.746
+ATOM    904  O   ARG B 129      -9.782 -39.669  17.948
+ATOM    905  CB  ARG B 129     -10.546 -39.722  21.038
+ATOM    906  CG  ARG B 129      -9.958 -40.109  22.390
+ATOM    907  CD  ARG B 129     -10.785 -41.149  23.103
+ATOM    908  NE  ARG B 129     -10.628 -42.477  22.510
+ATOM    909  CZ  ARG B 129      -9.715 -43.388  22.857
+ATOM    910  NH1 ARG B 129      -8.826 -43.151  23.820
+ATOM    911  NH2 ARG B 129      -9.692 -44.562  22.231
+ATOM    912  N   TRP B 130     -10.950 -37.804  18.414
+ATOM    913  CA  TRP B 130     -11.647 -37.760  17.136
+ATOM    914  C   TRP B 130     -11.327 -36.553  16.290
+ATOM    915  O   TRP B 130     -11.372 -36.647  15.067
+ATOM    916  CB  TRP B 130     -13.140 -37.748  17.372
+ATOM    917  CG  TRP B 130     -13.603 -38.878  18.167
+ATOM    918  CD1 TRP B 130     -14.123 -38.834  19.409
+ATOM    919  CD2 TRP B 130     -13.605 -40.247  17.773
+ATOM    920  NE1 TRP B 130     -14.448 -40.099  19.830
+ATOM    921  CE2 TRP B 130     -14.144 -40.983  18.833
+ATOM    922  CE3 TRP B 130     -13.207 -40.921  16.619
+ATOM    923  CZ2 TRP B 130     -14.278 -42.360  18.789
+ATOM    924  CZ3 TRP B 130     -13.338 -42.291  16.575
+ATOM    925  CH2 TRP B 130     -13.869 -42.996  17.650
+ATOM    926  N   ILE B 131     -11.051 -35.407  16.903
+ATOM    927  CA  ILE B 131     -10.776 -34.228  16.093
+ATOM    928  C   ILE B 131      -9.281 -33.989  15.983
+ATOM    929  O   ILE B 131      -8.533 -34.455  16.832
+ATOM    930  CB  ILE B 131     -11.523 -32.960  16.593
+ATOM    931  CG1 ILE B 131     -11.010 -32.456  17.938
+ATOM    932  CG2 ILE B 131     -12.982 -33.230  16.665
+ATOM    933  CD1 ILE B 131     -11.509 -31.066  18.234
+ATOM    934  N   THR B 132      -8.858 -33.273  14.932
+ATOM    935  CA  THR B 132      -7.444 -32.893  14.768
+ATOM    936  C   THR B 132      -6.937 -32.153  16.002
+ATOM    937  O   THR B 132      -7.637 -31.295  16.544
+ATOM    938  CB  THR B 132      -7.228 -31.965  13.585
+ATOM    939  OG1 THR B 132      -8.132 -30.861  13.690
+ATOM    940  CG2 THR B 132      -7.443 -32.684  12.288
+ATOM    941  N   GLN B 133      -5.717 -32.483  16.428
+ATOM    942  CA  GLN B 133      -5.180 -31.984  17.690
+ATOM    943  C   GLN B 133      -4.514 -30.617  17.565
+ATOM    944  O   GLN B 133      -3.500 -30.477  16.933
+ATOM    945  CB  GLN B 133      -4.189 -32.982  18.261
+ATOM    946  CG  GLN B 133      -3.594 -32.537  19.559
+ATOM    947  CD  GLN B 133      -2.731 -33.585  20.227
+ATOM    948  OE1 GLN B 133      -2.424 -34.633  19.650
+ATOM    949  NE2 GLN B 133      -2.330 -33.303  21.464
+ATOM    950  N   LEU B 134      -5.101 -29.609  18.182
+ATOM    951  CA  LEU B 134      -4.499 -28.276  18.237
+ATOM    952  C   LEU B 134      -3.494 -28.231  19.372
+ATOM    953  O   LEU B 134      -3.837 -28.540  20.506
+ATOM    954  CB  LEU B 134      -5.562 -27.222  18.496
+ATOM    955  CG  LEU B 134      -5.079 -25.803  18.736
+ATOM    956  CD1 LEU B 134      -4.531 -25.242  17.452
+ATOM    957  CD2 LEU B 134      -6.231 -24.953  19.283
+ATOM    958  N   HIS B 135      -2.270 -27.819  19.060
+ATOM    959  CA  HIS B 135      -1.231 -27.682  20.048
+ATOM    960  C   HIS B 135      -1.139 -26.249  20.506
+ATOM    961  O   HIS B 135      -1.171 -25.988  21.702
+ATOM    962  CB  HIS B 135       0.100 -28.149  19.496
+ATOM    963  CG  HIS B 135       0.158 -29.622  19.242
+ATOM    964  ND1 HIS B 135       0.481 -30.532  20.221
+ATOM    965  CD2 HIS B 135      -0.060 -30.340  18.116
+ATOM    966  CE1 HIS B 135       0.474 -31.747  19.705
+ATOM    967  NE2 HIS B 135       0.152 -31.659  18.428
+ATOM    968  N   PHE B 136      -1.016 -25.319  19.564
+ATOM    969  CA  PHE B 136      -0.943 -23.890  19.919
+ATOM    970  C   PHE B 136      -1.785 -23.035  18.973
+ATOM    971  O   PHE B 136      -1.830 -23.301  17.763
+ATOM    972  CB  PHE B 136       0.507 -23.395  19.877
+ATOM    973  CG  PHE B 136       1.536 -24.446  20.240
+ATOM    974  CD1 PHE B 136       1.903 -24.656  21.549
+ATOM    975  CD2 PHE B 136       2.154 -25.197  19.261
+ATOM    976  CE1 PHE B 136       2.860 -25.599  21.879
+ATOM    977  CE2 PHE B 136       3.113 -26.159  19.594
+ATOM    978  CZ  PHE B 136       3.461 -26.353  20.900
+ATOM    979  N   ALA B 137      -2.452 -22.021  19.525
+ATOM    980  CA  ALA B 137      -3.062 -20.960  18.720
+ATOM    981  C   ALA B 137      -2.386 -19.645  19.071
+ATOM    982  O   ALA B 137      -2.044 -19.411  20.235
+ATOM    983  CB  ALA B 137      -4.544 -20.864  18.994
+ATOM    984  N   PHE B 138      -2.195 -18.776  18.090
+ATOM    985  CA  PHE B 138      -1.614 -17.470  18.379
+ATOM    986  C   PHE B 138      -1.824 -16.459  17.244
+ATOM    987  O   PHE B 138      -2.261 -16.811  16.147
+ATOM    988  CB  PHE B 138      -0.122 -17.596  18.768
+ATOM    989  CG  PHE B 138       0.773 -18.109  17.668
+ATOM    990  CD1 PHE B 138       1.026 -19.457  17.532
+ATOM    991  CD2 PHE B 138       1.383 -17.238  16.790
+ATOM    992  CE1 PHE B 138       1.860 -19.932  16.516
+ATOM    993  CE2 PHE B 138       2.224 -17.698  15.790
+ATOM    994  CZ  PHE B 138       2.457 -19.054  15.652
+ATOM    995  N   GLN B 139      -1.508 -15.198  17.535
+ATOM    996  CA  GLN B 139      -1.737 -14.100  16.600
+ATOM    997  C   GLN B 139      -0.606 -13.114  16.587
+ATOM    998  O   GLN B 139       0.219 -13.085  17.492
+ATOM    999  CB  GLN B 139      -3.028 -13.354  16.949
+ATOM   1000  CG  GLN B 139      -3.142 -12.938  18.379
+ATOM   1001  CD  GLN B 139      -4.505 -12.416  18.721
+ATOM   1002  OE1 GLN B 139      -5.055 -11.595  18.004
+ATOM   1003  NE2 GLN B 139      -5.063 -12.888  19.826
+ATOM   1004  N   ASP B 140      -0.580 -12.306  15.537
+ATOM   1005  CA  ASP B 140       0.272 -11.114  15.484
+ATOM   1006  C   ASP B 140      -0.540  -9.965  14.871
+ATOM   1007  O   ASP B 140      -1.749 -10.104  14.696
+ATOM   1008  CB  ASP B 140       1.592 -11.399  14.739
+ATOM   1009  CG  ASP B 140       1.392 -11.938  13.324
+ATOM   1010  OD1 ASP B 140       0.431 -11.551  12.624
+ATOM   1011  OD2 ASP B 140       2.242 -12.740  12.894
+ATOM   1012  N   GLU B 141       0.120  -8.850  14.553
+ATOM   1013  CA  GLU B 141      -0.538  -7.656  13.996
+ATOM   1014  C   GLU B 141      -1.499  -8.006  12.844
+ATOM   1015  O   GLU B 141      -2.607  -7.463  12.775
+ATOM   1016  CB  GLU B 141       0.502  -6.625  13.533
+ATOM   1017  N   ASN B 142      -1.089  -8.933  11.972
+ATOM   1018  CA  ASN B 142      -1.829  -9.218  10.746
+ATOM   1019  C   ASN B 142      -2.509 -10.581  10.674
+ATOM   1020  O   ASN B 142      -3.521 -10.725   9.988
+ATOM   1021  CB  ASN B 142      -0.892  -9.067   9.561
+ATOM   1022  CG  ASN B 142      -0.375  -7.648   9.407
+ATOM   1023  OD1 ASN B 142      -0.964  -6.690   9.912
+ATOM   1024  ND2 ASN B 142       0.725  -7.505   8.692
+ATOM   1025  N   TYR B 143      -1.982 -11.573  11.382
+ATOM   1026  CA  TYR B 143      -2.372 -12.959  11.130
+ATOM   1027  C   TYR B 143      -2.813 -13.731  12.374
+ATOM   1028  O   TYR B 143      -2.383 -13.438  13.497
+ATOM   1029  CB  TYR B 143      -1.214 -13.715  10.451
+ATOM   1030  CG  TYR B 143      -0.737 -13.101   9.150
+ATOM   1031  CD1 TYR B 143       0.359 -12.279   9.126
+ATOM   1032  CD2 TYR B 143      -1.396 -13.341   7.945
+ATOM   1033  CE1 TYR B 143       0.795 -11.692   7.942
+ATOM   1034  CE2 TYR B 143      -0.961 -12.768   6.761
+ATOM   1035  CZ  TYR B 143       0.138 -11.938   6.773
+ATOM   1036  OH  TYR B 143       0.596 -11.337   5.633
+ATOM   1037  N   LEU B 144      -3.688 -14.711  12.142
+ATOM   1038  CA  LEU B 144      -4.023 -15.735  13.110
+ATOM   1039  C   LEU B 144      -3.287 -17.008  12.716
+ATOM   1040  O   LEU B 144      -2.991 -17.224  11.536
+ATOM   1041  CB  LEU B 144      -5.522 -15.983  13.122
+ATOM   1042  CG  LEU B 144      -6.377 -14.769  13.487
+ATOM   1043  CD1 LEU B 144      -7.841 -15.057  13.283
+ATOM   1044  CD2 LEU B 144      -6.117 -14.380  14.913
+ATOM   1045  N   TYR B 145      -2.963 -17.830  13.706
+ATOM   1046  CA  TYR B 145      -2.224 -19.067  13.477
+ATOM   1047  C   TYR B 145      -2.779 -20.183  14.346
+ATOM   1048  O   TYR B 145      -2.925 -20.019  15.565
+ATOM   1049  CB  TYR B 145      -0.743 -18.914  13.836
+ATOM   1050  CG  TYR B 145      -0.029 -17.789  13.166
+ATOM   1051  CD1 TYR B 145      -0.056 -16.524  13.697
+ATOM   1052  CD2 TYR B 145       0.690 -17.995  12.006
+ATOM   1053  CE1 TYR B 145       0.603 -15.497  13.093
+ATOM   1054  CE2 TYR B 145       1.352 -16.966  11.388
+ATOM   1055  CZ  TYR B 145       1.313 -15.724  11.945
+ATOM   1056  OH  TYR B 145       1.964 -14.682  11.333
+ATOM   1057  N   LEU B 146      -3.070 -21.315  13.713
+ATOM   1058  CA  LEU B 146      -3.364 -22.538  14.433
+ATOM   1059  C   LEU B 146      -2.299 -23.545  14.088
+ATOM   1060  O   LEU B 146      -2.153 -23.891  12.916
+ATOM   1061  CB  LEU B 146      -4.699 -23.091  14.001
+ATOM   1062  CG  LEU B 146      -5.909 -22.255  14.328
+ATOM   1063  CD1 LEU B 146      -7.074 -22.795  13.524
+ATOM   1064  CD2 LEU B 146      -6.136 -22.320  15.818
+ATOM   1065  N   VAL B 147      -1.566 -24.001  15.102
+ATOM   1066  CA  VAL B 147      -0.546 -25.028  14.943
+ATOM   1067  C   VAL B 147      -1.061 -26.383  15.419
+ATOM   1068  O   VAL B 147      -1.225 -26.631  16.621
+ATOM   1069  CB  VAL B 147       0.725 -24.700  15.713
+ATOM   1070  CG1 VAL B 147       1.784 -25.761  15.424
+ATOM   1071  CG2 VAL B 147       1.226 -23.326  15.334
+ATOM   1072  N   MET B 148      -1.257 -27.252  14.435
+ATOM   1073  CA  MET B 148      -1.891 -28.545  14.564
+ATOM   1074  C   MET B 148      -0.873 -29.672  14.498
+ATOM   1075  O   MET B 148       0.222 -29.519  13.960
+ATOM   1076  CB  MET B 148      -2.811 -28.755  13.354
+ATOM   1077  CG  MET B 148      -3.742 -27.586  12.965
+ATOM   1078  SD  MET B 148      -4.987 -27.304  14.219
+ATOM   1079  CE  MET B 148      -5.234 -28.956  14.884
+ATOM   1080  N   GLU B 149      -1.282 -30.830  14.983
+ATOM   1081  CA  GLU B 149      -0.595 -32.064  14.695
+ATOM   1082  C   GLU B 149      -0.652 -32.302  13.196
+ATOM   1083  O   GLU B 149      -1.695 -32.113  12.579
+ATOM   1084  CB  GLU B 149      -1.308 -33.210  15.392
+ATOM   1085  CG  GLU B 149      -0.653 -34.580  15.237
+ATOM   1086  CD  GLU B 149       0.467 -34.815  16.218
+ATOM   1087  OE1 GLU B 149       0.570 -34.071  17.223
+ATOM   1088  OE2 GLU B 149       1.247 -35.759  15.983
+ATOM   1089  N   TYR B 150       0.464 -32.750  12.623
+ATOM   1090  CA  TYR B 150       0.530 -33.105  11.208
+ATOM   1091  C   TYR B 150       0.158 -34.566  10.978
+ATOM   1092  O   TYR B 150       0.914 -35.465  11.337
+ATOM   1093  CB  TYR B 150       1.935 -32.845  10.679
+ATOM   1094  CG  TYR B 150       2.161 -33.165   9.215
+ATOM   1095  CD1 TYR B 150       1.222 -32.830   8.237
+ATOM   1096  CD2 TYR B 150       3.340 -33.771   8.805
+ATOM   1097  CE1 TYR B 150       1.452 -33.122   6.900
+ATOM   1098  CE2 TYR B 150       3.581 -34.062   7.471
+ATOM   1099  CZ  TYR B 150       2.645 -33.733   6.529
+ATOM   1100  OH  TYR B 150       2.911 -34.027   5.214
+ATOM   1101  N   TYR B 151      -0.998 -34.796  10.350
+ATOM   1102  CA  TYR B 151      -1.464 -36.154  10.033
+ATOM   1103  C   TYR B 151      -0.963 -36.605   8.663
+ATOM   1104  O   TYR B 151      -1.324 -36.037   7.643
+ATOM   1105  CB  TYR B 151      -2.981 -36.221  10.158
+ATOM   1106  CG  TYR B 151      -3.403 -35.875  11.570
+ATOM   1107  CD1 TYR B 151      -4.021 -34.662  11.874
+ATOM   1108  CD2 TYR B 151      -3.129 -36.747  12.620
+ATOM   1109  CE1 TYR B 151      -4.388 -34.363  13.185
+ATOM   1110  CE2 TYR B 151      -3.485 -36.452  13.913
+ATOM   1111  CZ  TYR B 151      -4.101 -35.258  14.195
+ATOM   1112  OH  TYR B 151      -4.428 -34.995  15.499
+ATOM   1113  N   VAL B 152      -0.106 -37.625   8.662
+ATOM   1114  CA  VAL B 152       0.636 -38.037   7.456
+ATOM   1115  C   VAL B 152      -0.044 -39.131   6.647
+ATOM   1116  O   VAL B 152       0.498 -39.559   5.634
+ATOM   1117  CB  VAL B 152       2.064 -38.563   7.819
+ATOM   1118  CG1 VAL B 152       2.734 -37.619   8.807
+ATOM   1119  CG2 VAL B 152       1.992 -39.970   8.403
+ATOM   1120  N   GLY B 153      -1.211 -39.594   7.093
+ATOM   1121  CA  GLY B 153      -1.879 -40.717   6.454
+ATOM   1122  C   GLY B 153      -2.772 -40.364   5.284
+ATOM   1123  O   GLY B 153      -3.431 -41.236   4.740
+ATOM   1124  N   GLY B 154      -2.808 -39.096   4.894
+ATOM   1125  CA  GLY B 154      -3.658 -38.651   3.790
+ATOM   1126  C   GLY B 154      -5.087 -38.427   4.229
+ATOM   1127  O   GLY B 154      -5.399 -38.508   5.409
+ATOM   1128  N   ASP B 155      -5.961 -38.140   3.275
+ATOM   1129  CA  ASP B 155      -7.364 -37.905   3.578
+ATOM   1130  C   ASP B 155      -8.230 -38.990   2.949
+ATOM   1131  O   ASP B 155      -7.763 -39.762   2.123
+ATOM   1132  CB  ASP B 155      -7.778 -36.532   3.079
+ATOM   1133  CG  ASP B 155      -7.952 -36.493   1.581
+ATOM   1134  OD1 ASP B 155      -6.940 -36.389   0.847
+ATOM   1135  OD2 ASP B 155      -9.114 -36.582   1.135
+ATOM   1136  N   LEU B 156      -9.496 -39.051   3.337
+ATOM   1137  CA  LEU B 156     -10.381 -40.088   2.794
+ATOM   1138  C   LEU B 156     -10.739 -39.920   1.317
+ATOM   1139  O   LEU B 156     -11.003 -40.926   0.651
+ATOM   1140  CB  LEU B 156     -11.678 -40.229   3.605
+ATOM   1141  CG  LEU B 156     -11.682 -41.341   4.646
+ATOM   1142  CD1 LEU B 156     -13.061 -41.454   5.233
+ATOM   1143  CD2 LEU B 156     -11.237 -42.682   4.052
+ATOM   1144  N   LEU B 157     -10.778 -38.685   0.810
+ATOM   1145  CA  LEU B 157     -11.025 -38.477  -0.629
+ATOM   1146  C   LEU B 157      -9.901 -39.108  -1.480
+ATOM   1147  O   LEU B 157     -10.188 -39.922  -2.384
+ATOM   1148  CB  LEU B 157     -11.190 -36.994  -0.988
+ATOM   1149  CG  LEU B 157     -11.744 -36.674  -2.390
+ATOM   1150  CD1 LEU B 157     -13.120 -37.331  -2.637
+ATOM   1151  CD2 LEU B 157     -11.829 -35.159  -2.623
+ATOM   1152  N   THR B 158      -8.645 -38.765  -1.166
+ATOM   1153  CA  THR B 158      -7.497 -39.352  -1.857
+ATOM   1154  C   THR B 158      -7.570 -40.881  -1.870
+ATOM   1155  O   THR B 158      -7.391 -41.501  -2.918
+ATOM   1156  CB  THR B 158      -6.138 -38.937  -1.227
+ATOM   1157  OG1 THR B 158      -5.889 -37.543  -1.451
+ATOM   1158  CG2 THR B 158      -4.993 -39.750  -1.832
+ATOM   1159  N   LEU B 159      -7.828 -41.474  -0.705
+ATOM   1160  CA  LEU B 159      -7.943 -42.925  -0.581
+ATOM   1161  C   LEU B 159      -8.981 -43.448  -1.548
+ATOM   1162  O   LEU B 159      -8.643 -44.191  -2.464
+ATOM   1163  CB  LEU B 159      -8.331 -43.341   0.836
+ATOM   1164  CG  LEU B 159      -8.557 -44.848   0.994
+ATOM   1165  CD1 LEU B 159      -7.281 -45.511   1.467
+ATOM   1166  CD2 LEU B 159      -9.700 -45.127   1.951
+ATOM   1167  N   LEU B 160     -10.236 -43.061  -1.342
+ATOM   1168  CA  LEU B 160     -11.312 -43.485  -2.221
+ATOM   1169  C   LEU B 160     -10.880 -43.341  -3.676
+ATOM   1170  O   LEU B 160     -10.793 -44.332  -4.379
+ATOM   1171  CB  LEU B 160     -12.581 -42.653  -1.998
+ATOM   1172  CG  LEU B 160     -13.395 -42.773  -0.708
+ATOM   1173  CD1 LEU B 160     -14.860 -42.568  -1.075
+ATOM   1174  CD2 LEU B 160     -13.199 -44.110   0.014
+ATOM   1175  N   SER B 161     -10.578 -42.105  -4.090
+ATOM   1176  CA  SER B 161     -10.112 -41.770  -5.452
+ATOM   1177  C   SER B 161      -9.057 -42.718  -6.012
+ATOM   1178  O   SER B 161      -9.183 -43.192  -7.147
+ATOM   1179  CB  SER B 161      -9.505 -40.363  -5.485
+ATOM   1180  OG  SER B 161     -10.309 -39.426  -4.792
+ATOM   1181  N   LYS B 162      -8.016 -42.979  -5.218
+ATOM   1182  CA  LYS B 162      -6.898 -43.825  -5.660
+ATOM   1183  C   LYS B 162      -7.209 -45.333  -5.619
+ATOM   1184  O   LYS B 162      -6.507 -46.103  -6.253
+ATOM   1185  CB  LYS B 162      -5.601 -43.502  -4.868
+ATOM   1186  CG  LYS B 162      -4.810 -42.251  -5.364
+ATOM   1187  N   PHE B 163      -8.270 -45.749  -4.926
+ATOM   1188  CA  PHE B 163      -8.494 -47.175  -4.643
+ATOM   1189  C   PHE B 163      -8.798 -48.042  -5.870
+ATOM   1190  O   PHE B 163      -8.302 -49.171  -5.980
+ATOM   1191  CB  PHE B 163      -9.593 -47.363  -3.593
+ATOM   1192  CG  PHE B 163      -9.493 -48.664  -2.870
+ATOM   1193  CD1 PHE B 163     -10.195 -49.789  -3.314
+ATOM   1194  CD2 PHE B 163      -8.666 -48.783  -1.760
+ATOM   1195  CE1 PHE B 163     -10.076 -51.010  -2.649
+ATOM   1196  CE2 PHE B 163      -8.540 -50.003  -1.091
+ATOM   1197  CZ  PHE B 163      -9.246 -51.116  -1.536
+ATOM   1198  N   GLY B 164      -9.634 -47.538  -6.773
+ATOM   1199  CA  GLY B 164      -9.840 -48.201  -8.079
+ATOM   1200  C   GLY B 164     -11.019 -49.160  -8.182
+ATOM   1201  O   GLY B 164     -11.282 -49.710  -9.254
+ATOM   1202  N   GLU B 165     -11.697 -49.389  -7.060
+ATOM   1203  CA  GLU B 165     -12.982 -50.081  -7.010
+ATOM   1204  C   GLU B 165     -13.684 -49.444  -5.850
+ATOM   1205  O   GLU B 165     -13.060 -48.711  -5.070
+ATOM   1206  CB  GLU B 165     -12.862 -51.576  -6.687
+ATOM   1207  CG  GLU B 165     -11.483 -52.214  -6.841
+ATOM   1208  CD  GLU B 165     -11.567 -53.736  -7.001
+ATOM   1209  OE1 GLU B 165     -12.453 -54.359  -6.374
+ATOM   1210  OE2 GLU B 165     -10.759 -54.308  -7.768
+ATOM   1211  N   ARG B 166     -14.968 -49.740  -5.703
+ATOM   1212  CA  ARG B 166     -15.656 -49.404  -4.468
+ATOM   1213  C   ARG B 166     -14.978 -50.230  -3.358
+ATOM   1214  O   ARG B 166     -14.593 -51.390  -3.580
+ATOM   1215  CB  ARG B 166     -17.158 -49.666  -4.600
+ATOM   1216  CG  ARG B 166     -17.858 -48.647  -5.513
+ATOM   1217  N   ILE B 167     -14.780 -49.609  -2.192
+ATOM   1218  CA  ILE B 167     -13.990 -50.224  -1.110
+ATOM   1219  C   ILE B 167     -14.749 -51.367  -0.464
+ATOM   1220  O   ILE B 167     -15.971 -51.409  -0.534
+ATOM   1221  CB  ILE B 167     -13.608 -49.207   0.008
+ATOM   1222  CG1 ILE B 167     -14.861 -48.718   0.744
+ATOM   1223  CG2 ILE B 167     -12.788 -48.059  -0.565
+ATOM   1224  CD1 ILE B 167     -14.589 -47.644   1.775
+ATOM   1225  N   PRO B 168     -14.035 -52.276   0.202
+ATOM   1226  CA  PRO B 168     -14.720 -53.373   0.885
+ATOM   1227  C   PRO B 168     -15.636 -52.943   2.049
+ATOM   1228  O   PRO B 168     -15.468 -51.863   2.640
+ATOM   1229  CB  PRO B 168     -13.579 -54.244   1.415
+ATOM   1230  CG  PRO B 168     -12.333 -53.729   0.802
+ATOM   1231  CD  PRO B 168     -12.574 -52.329   0.370
+ATOM   1232  N   ALA B 169     -16.578 -53.824   2.374
+ATOM   1233  CA  ALA B 169     -17.604 -53.573   3.383
+ATOM   1234  C   ALA B 169     -17.034 -53.278   4.775
+ATOM   1235  O   ALA B 169     -17.503 -52.369   5.454
+ATOM   1236  CB  ALA B 169     -18.566 -54.755   3.450
+ATOM   1237  N   GLU B 170     -16.034 -54.042   5.197
+ATOM   1238  CA  GLU B 170     -15.400 -53.815   6.491
+ATOM   1239  C   GLU B 170     -14.766 -52.425   6.610
+ATOM   1240  O   GLU B 170     -14.802 -51.823   7.691
+ATOM   1241  CB  GLU B 170     -14.339 -54.868   6.759
+ATOM   1242  CG  GLU B 170     -13.935 -54.960   8.215
+ATOM   1243  CD  GLU B 170     -12.804 -55.949   8.441
+ATOM   1244  OE1 GLU B 170     -12.859 -57.051   7.839
+ATOM   1245  OE2 GLU B 170     -11.868 -55.615   9.215
+ATOM   1246  N   MET B 171     -14.187 -51.921   5.517
+ATOM   1247  CA  MET B 171     -13.631 -50.561   5.506
+ATOM   1248  C   MET B 171     -14.715 -49.504   5.558
+ATOM   1249  O   MET B 171     -14.592 -48.536   6.310
+ATOM   1250  CB  MET B 171     -12.790 -50.310   4.265
+ATOM   1251  CG  MET B 171     -11.617 -51.248   4.123
+ATOM   1252  SD  MET B 171     -10.307 -50.548   3.093
+ATOM   1253  CE  MET B 171      -9.633 -52.070   2.378
+ATOM   1254  N   ALA B 172     -15.766 -49.679   4.756
+ATOM   1255  CA  ALA B 172     -16.853 -48.700   4.721
+ATOM   1256  C   ALA B 172     -17.467 -48.598   6.102
+ATOM   1257  O   ALA B 172     -17.559 -47.503   6.659
+ATOM   1258  CB  ALA B 172     -17.872 -49.061   3.728
+ATOM   1259  N   ARG B 173     -17.837 -49.737   6.674
+ATOM   1260  CA  ARG B 173     -18.289 -49.772   8.058
+ATOM   1261  C   ARG B 173     -17.323 -49.085   9.009
+ATOM   1262  O   ARG B 173     -17.744 -48.410   9.929
+ATOM   1263  CB  ARG B 173     -18.495 -51.206   8.539
+ATOM   1264  CG  ARG B 173     -19.874 -51.730   8.281
+ATOM   1265  CD  ARG B 173     -19.953 -53.220   8.538
+ATOM   1266  NE  ARG B 173     -19.710 -53.533   9.939
+ATOM   1267  CZ  ARG B 173     -19.698 -54.764  10.438
+ATOM   1268  NH1 ARG B 173     -19.468 -54.947  11.736
+ATOM   1269  NH2 ARG B 173     -19.912 -55.815   9.647
+ATOM   1270  N   PHE B 174     -16.028 -49.277   8.810
+ATOM   1271  CA  PHE B 174     -15.065 -48.792   9.777
+ATOM   1272  C   PHE B 174     -15.037 -47.289   9.735
+ATOM   1273  O   PHE B 174     -15.193 -46.630  10.751
+ATOM   1274  CB  PHE B 174     -13.682 -49.367   9.501
+ATOM   1275  CG  PHE B 174     -12.627 -48.842  10.414
+ATOM   1276  CD1 PHE B 174     -12.432 -49.405  11.661
+ATOM   1277  CD2 PHE B 174     -11.830 -47.778  10.032
+ATOM   1278  CE1 PHE B 174     -11.465 -48.927  12.513
+ATOM   1279  CE2 PHE B 174     -10.857 -47.297  10.878
+ATOM   1280  CZ  PHE B 174     -10.674 -47.878  12.126
+ATOM   1281  N   TYR B 175     -14.861 -46.730   8.550
+ATOM   1282  CA  TYR B 175     -14.762 -45.288   8.449
+ATOM   1283  C   TYR B 175     -16.075 -44.581   8.798
+ATOM   1284  O   TYR B 175     -16.055 -43.543   9.485
+ATOM   1285  CB  TYR B 175     -14.286 -44.878   7.067
+ATOM   1286  CG  TYR B 175     -12.876 -45.284   6.775
+ATOM   1287  CD1 TYR B 175     -12.555 -45.903   5.578
+ATOM   1288  CD2 TYR B 175     -11.850 -45.057   7.696
+ATOM   1289  CE1 TYR B 175     -11.247 -46.281   5.299
+ATOM   1290  CE2 TYR B 175     -10.545 -45.429   7.425
+ATOM   1291  CZ  TYR B 175     -10.247 -46.037   6.216
+ATOM   1292  OH  TYR B 175      -8.956 -46.423   5.914
+ATOM   1293  N   LEU B 176     -17.205 -45.132   8.343
+ATOM   1294  CA  LEU B 176     -18.507 -44.531   8.650
+ATOM   1295  C   LEU B 176     -18.737 -44.571  10.150
+ATOM   1296  O   LEU B 176     -19.303 -43.631  10.715
+ATOM   1297  CB  LEU B 176     -19.646 -45.211   7.888
+ATOM   1298  CG  LEU B 176     -19.557 -44.964   6.374
+ATOM   1299  CD1 LEU B 176     -20.577 -45.792   5.574
+ATOM   1300  CD2 LEU B 176     -19.701 -43.478   6.059
+ATOM   1301  N   ALA B 177     -18.251 -45.637  10.790
+ATOM   1302  CA  ALA B 177     -18.399 -45.800  12.234
+ATOM   1303  C   ALA B 177     -17.626 -44.712  12.959
+ATOM   1304  O   ALA B 177     -18.172 -44.054  13.843
+ATOM   1305  CB  ALA B 177     -17.936 -47.204  12.703
+ATOM   1306  N   GLU B 178     -16.364 -44.511  12.578
+ATOM   1307  CA  GLU B 178     -15.528 -43.522  13.251
+ATOM   1308  C   GLU B 178     -16.005 -42.117  12.940
+ATOM   1309  O   GLU B 178     -15.962 -41.243  13.817
+ATOM   1310  CB  GLU B 178     -14.042 -43.683  12.900
+ATOM   1311  CG  GLU B 178     -13.398 -44.900  13.564
+ATOM   1312  CD  GLU B 178     -11.876 -44.857  13.619
+ATOM   1313  OE1 GLU B 178     -11.274 -44.012  12.931
+ATOM   1314  OE2 GLU B 178     -11.278 -45.685  14.356
+ATOM   1315  N   ILE B 179     -16.483 -41.893  11.716
+ATOM   1316  CA  ILE B 179     -16.986 -40.558  11.376
+ATOM   1317  C   ILE B 179     -18.200 -40.199  12.249
+ATOM   1318  O   ILE B 179     -18.308 -39.081  12.708
+ATOM   1319  CB  ILE B 179     -17.321 -40.413   9.874
+ATOM   1320  CG1 ILE B 179     -16.033 -40.398   9.057
+ATOM   1321  CG2 ILE B 179     -18.102 -39.127   9.625
+ATOM   1322  CD1 ILE B 179     -16.216 -40.795   7.620
+ATOM   1323  N   VAL B 180     -19.086 -41.165  12.477
+ATOM   1324  CA  VAL B 180     -20.256 -40.985  13.321
+ATOM   1325  C   VAL B 180     -19.804 -40.565  14.720
+ATOM   1326  O   VAL B 180     -20.345 -39.635  15.312
+ATOM   1327  CB  VAL B 180     -21.116 -42.308  13.379
+ATOM   1328  CG1 VAL B 180     -22.023 -42.360  14.626
+ATOM   1329  CG2 VAL B 180     -21.940 -42.497  12.099
+ATOM   1330  N   MET B 181     -18.788 -41.236  15.236
+ATOM   1331  CA  MET B 181     -18.304 -40.946  16.571
+ATOM   1332  C   MET B 181     -17.693 -39.553  16.615
+ATOM   1333  O   MET B 181     -17.778 -38.869  17.626
+ATOM   1334  CB  MET B 181     -17.241 -41.966  16.987
+ATOM   1335  CG  MET B 181     -17.719 -43.407  17.106
+ATOM   1336  SD  MET B 181     -18.706 -43.617  18.582
+ATOM   1337  CE  MET B 181     -17.472 -43.588  19.892
+ATOM   1338  N   ALA B 182     -17.052 -39.146  15.521
+ATOM   1339  CA  ALA B 182     -16.349 -37.872  15.478
+ATOM   1340  C   ALA B 182     -17.360 -36.745  15.401
+ATOM   1341  O   ALA B 182     -17.311 -35.802  16.194
+ATOM   1342  CB  ALA B 182     -15.380 -37.824  14.289
+ATOM   1343  N   ILE B 183     -18.286 -36.843  14.454
+ATOM   1344  CA  ILE B 183     -19.342 -35.839  14.333
+ATOM   1345  C   ILE B 183     -20.145 -35.673  15.633
+ATOM   1346  O   ILE B 183     -20.412 -34.551  16.060
+ATOM   1347  CB  ILE B 183     -20.328 -36.149  13.192
+ATOM   1348  CG1 ILE B 183     -19.640 -36.028  11.823
+ATOM   1349  CG2 ILE B 183     -21.478 -35.181  13.256
+ATOM   1350  CD1 ILE B 183     -20.224 -36.938  10.773
+ATOM   1351  N   ASP B 184     -20.518 -36.785  16.256
+ATOM   1352  CA  ASP B 184     -21.315 -36.725  17.468
+ATOM   1353  C   ASP B 184     -20.569 -35.993  18.577
+ATOM   1354  O   ASP B 184     -21.185 -35.259  19.362
+ATOM   1355  CB  ASP B 184     -21.708 -38.118  17.940
+ATOM   1356  CG  ASP B 184     -22.535 -38.093  19.226
+ATOM   1357  OD1 ASP B 184     -23.653 -37.517  19.223
+ATOM   1358  OD2 ASP B 184     -22.059 -38.657  20.239
+ATOM   1359  N   SER B 185     -19.253 -36.164  18.645
+ATOM   1360  CA  SER B 185     -18.490 -35.495  19.697
+ATOM   1361  C   SER B 185     -18.644 -33.982  19.541
+ATOM   1362  O   SER B 185     -18.850 -33.268  20.517
+ATOM   1363  CB  SER B 185     -17.015 -35.892  19.662
+ATOM   1364  OG  SER B 185     -16.332 -35.173  18.647
+ATOM   1365  N   VAL B 186     -18.562 -33.503  18.306
+ATOM   1366  CA  VAL B 186     -18.762 -32.093  18.016
+ATOM   1367  C   VAL B 186     -20.180 -31.627  18.379
+ATOM   1368  O   VAL B 186     -20.361 -30.549  18.962
+ATOM   1369  CB  VAL B 186     -18.448 -31.808  16.546
+ATOM   1370  CG1 VAL B 186     -18.838 -30.392  16.162
+ATOM   1371  CG2 VAL B 186     -16.962 -32.034  16.303
+ATOM   1372  N   HIS B 187     -21.179 -32.445  18.063
+ATOM   1373  CA  HIS B 187     -22.562 -32.131  18.422
+ATOM   1374  C   HIS B 187     -22.755 -32.074  19.936
+ATOM   1375  O   HIS B 187     -23.396 -31.169  20.443
+ATOM   1376  CB  HIS B 187     -23.511 -33.152  17.820
+ATOM   1377  CG  HIS B 187     -23.585 -33.095  16.328
+ATOM   1378  ND1 HIS B 187     -24.260 -34.033  15.586
+ATOM   1379  CD2 HIS B 187     -23.046 -32.228  15.439
+ATOM   1380  CE1 HIS B 187     -24.144 -33.739  14.303
+ATOM   1381  NE2 HIS B 187     -23.409 -32.648  14.187
+ATOM   1382  N   ARG B 188     -22.169 -33.025  20.653
+ATOM   1383  CA  ARG B 188     -22.196 -33.025  22.118
+ATOM   1384  C   ARG B 188     -21.424 -31.865  22.734
+ATOM   1385  O   ARG B 188     -21.625 -31.519  23.888
+ATOM   1386  CB  ARG B 188     -21.652 -34.348  22.654
+ATOM   1387  CG  ARG B 188     -22.652 -35.521  22.478
+ATOM   1388  CD  ARG B 188     -22.261 -36.793  23.264
+ATOM   1389  NE  ARG B 188     -21.056 -37.396  22.687
+ATOM   1390  CZ  ARG B 188     -19.827 -37.282  23.185
+ATOM   1391  NH1 ARG B 188     -19.602 -36.626  24.323
+ATOM   1392  NH2 ARG B 188     -18.813 -37.860  22.545
+ATOM   1393  N   LEU B 189     -20.533 -31.261  21.969
+ATOM   1394  CA  LEU B 189     -19.786 -30.107  22.439
+ATOM   1395  C   LEU B 189     -20.630 -28.844  22.301
+ATOM   1396  O   LEU B 189     -20.260 -27.809  22.849
+ATOM   1397  CB  LEU B 189     -18.504 -29.962  21.609
+ATOM   1398  CG  LEU B 189     -17.412 -29.051  22.137
+ATOM   1399  CD1 LEU B 189     -16.825 -29.599  23.449
+ATOM   1400  CD2 LEU B 189     -16.357 -28.944  21.091
+ATOM   1401  N   GLY B 190     -21.728 -28.930  21.536
+ATOM   1402  CA  GLY B 190     -22.646 -27.807  21.296
+ATOM   1403  C   GLY B 190     -22.536 -27.134  19.929
+ATOM   1404  O   GLY B 190     -22.868 -25.962  19.783
+ATOM   1405  N   TYR B 191     -22.091 -27.868  18.915
+ATOM   1406  CA  TYR B 191     -21.760 -27.255  17.632
+ATOM   1407  C   TYR B 191     -22.222 -28.080  16.447
+ATOM   1408  O   TYR B 191     -22.333 -29.305  16.546
+ATOM   1409  CB  TYR B 191     -20.248 -27.080  17.512
+ATOM   1410  CG  TYR B 191     -19.657 -26.010  18.409
+ATOM   1411  CD1 TYR B 191     -19.236 -26.302  19.719
+ATOM   1412  CD2 TYR B 191     -19.486 -24.713  17.945
+ATOM   1413  CE1 TYR B 191     -18.660 -25.312  20.527
+ATOM   1414  CE2 TYR B 191     -18.928 -23.732  18.740
+ATOM   1415  CZ  TYR B 191     -18.516 -24.035  20.023
+ATOM   1416  OH  TYR B 191     -17.966 -23.034  20.772
+ATOM   1417  N   VAL B 192     -22.462 -27.383  15.335
+ATOM   1418  CA  VAL B 192     -22.664 -27.993  14.021
+ATOM   1419  C   VAL B 192     -21.394 -27.736  13.223
+ATOM   1420  O   VAL B 192     -20.868 -26.614  13.240
+ATOM   1421  CB  VAL B 192     -23.813 -27.325  13.227
+ATOM   1422  CG1 VAL B 192     -24.466 -28.330  12.304
+ATOM   1423  CG2 VAL B 192     -24.827 -26.735  14.147
+ATOM   1424  N   HIS B 193     -20.916 -28.760  12.520
+ATOM   1425  CA  HIS B 193     -19.696 -28.666  11.715
+ATOM   1426  C   HIS B 193     -19.968 -27.921  10.394
+ATOM   1427  O   HIS B 193     -19.311 -26.945  10.090
+ATOM   1428  CB  HIS B 193     -19.170 -30.074  11.465
+ATOM   1429  CG  HIS B 193     -17.828 -30.125  10.815
+ATOM   1430  ND1 HIS B 193     -17.635 -29.844   9.479
+ATOM   1431  CD2 HIS B 193     -16.612 -30.468  11.307
+ATOM   1432  CE1 HIS B 193     -16.356 -29.997   9.182
+ATOM   1433  NE2 HIS B 193     -15.713 -30.383  10.272
+ATOM   1434  N   ARG B 194     -20.939 -28.380   9.612
+ATOM   1435  CA  ARG B 194     -21.372 -27.700   8.391
+ATOM   1436  C   ARG B 194     -20.395 -27.779   7.219
+ATOM   1437  O   ARG B 194     -20.544 -27.038   6.250
+ATOM   1438  CB  ARG B 194     -21.733 -26.222   8.651
+ATOM   1439  CG  ARG B 194     -22.839 -25.974   9.682
+ATOM   1440  CD  ARG B 194     -23.420 -24.552   9.518
+ATOM   1441  NE  ARG B 194     -22.382 -23.528   9.690
+ATOM   1442  CZ  ARG B 194     -22.529 -22.231   9.425
+ATOM   1443  NH1 ARG B 194     -21.516 -21.405   9.608
+ATOM   1444  NH2 ARG B 194     -23.672 -21.737   8.977
+ATOM   1445  N   ASP B 195     -19.415 -28.671   7.287
+ATOM   1446  CA  ASP B 195     -18.531 -28.926   6.141
+ATOM   1447  C   ASP B 195     -18.000 -30.345   6.171
+ATOM   1448  O   ASP B 195     -16.828 -30.592   5.892
+ATOM   1449  CB  ASP B 195     -17.372 -27.929   6.087
+ATOM   1450  CG  ASP B 195     -16.753 -27.808   4.692
+ATOM   1451  OD1 ASP B 195     -17.443 -28.032   3.671
+ATOM   1452  OD2 ASP B 195     -15.550 -27.488   4.620
+ATOM   1453  N   ILE B 196     -18.889 -31.283   6.489
+ATOM   1454  CA  ILE B 196     -18.549 -32.684   6.431
+ATOM   1455  C   ILE B 196     -18.395 -33.099   4.968
+ATOM   1456  O   ILE B 196     -19.259 -32.838   4.145
+ATOM   1457  CB  ILE B 196     -19.604 -33.527   7.143
+ATOM   1458  CG1 ILE B 196     -19.652 -33.160   8.636
+ATOM   1459  CG2 ILE B 196     -19.333 -35.002   6.952
+ATOM   1460  CD1 ILE B 196     -18.291 -33.164   9.372
+ATOM   1461  N   LYS B 197     -17.254 -33.704   4.662
+ATOM   1462  CA  LYS B 197     -16.938 -34.235   3.329
+ATOM   1463  C   LYS B 197     -15.621 -34.996   3.432
+ATOM   1464  O   LYS B 197     -14.861 -34.774   4.370
+ATOM   1465  CB  LYS B 197     -16.817 -33.119   2.288
+ATOM   1466  CG  LYS B 197     -15.651 -32.199   2.499
+ATOM   1467  CD  LYS B 197     -15.716 -31.032   1.567
+ATOM   1468  CE  LYS B 197     -14.608 -30.069   1.851
+ATOM   1469  NZ  LYS B 197     -14.806 -28.841   1.069
+ATOM   1470  N   PRO B 198     -15.321 -35.861   2.450
+ATOM   1471  CA  PRO B 198     -14.150 -36.736   2.590
+ATOM   1472  C   PRO B 198     -12.804 -36.011   2.658
+ATOM   1473  O   PRO B 198     -11.864 -36.536   3.221
+ATOM   1474  CB  PRO B 198     -14.219 -37.650   1.350
+ATOM   1475  CG  PRO B 198     -15.497 -37.353   0.671
+ATOM   1476  CD  PRO B 198     -16.018 -36.061   1.171
+ATOM   1477  N   ASP B 199     -12.729 -34.812   2.108
+ATOM   1478  CA  ASP B 199     -11.500 -34.032   2.122
+ATOM   1479  C   ASP B 199     -11.228 -33.510   3.534
+ATOM   1480  O   ASP B 199     -10.118 -33.099   3.841
+ATOM   1481  CB  ASP B 199     -11.548 -32.828   1.144
+ATOM   1482  CG  ASP B 199     -12.760 -32.849   0.161
+ATOM   1483  OD1 ASP B 199     -13.707 -33.687   0.271
+ATOM   1484  OD2 ASP B 199     -12.760 -31.966  -0.729
+ATOM   1485  N   ASN B 200     -12.248 -33.501   4.387
+ATOM   1486  CA  ASN B 200     -12.094 -33.078   5.773
+ATOM   1487  C   ASN B 200     -11.990 -34.251   6.752
+ATOM   1488  O   ASN B 200     -12.054 -34.048   7.962
+ATOM   1489  CB  ASN B 200     -13.247 -32.135   6.160
+ATOM   1490  CG  ASN B 200     -13.079 -30.729   5.568
+ATOM   1491  OD1 ASN B 200     -12.003 -30.367   5.079
+ATOM   1492  ND2 ASN B 200     -14.141 -29.942   5.607
+ATOM   1493  N   ILE B 201     -11.847 -35.473   6.242
+ATOM   1494  CA  ILE B 201     -11.527 -36.605   7.094
+ATOM   1495  C   ILE B 201     -10.100 -37.091   6.774
+ATOM   1496  O   ILE B 201      -9.820 -37.559   5.663
+ATOM   1497  CB  ILE B 201     -12.556 -37.755   6.979
+ATOM   1498  CG1 ILE B 201     -13.855 -37.397   7.706
+ATOM   1499  CG2 ILE B 201     -12.003 -39.022   7.660
+ATOM   1500  CD1 ILE B 201     -14.820 -36.575   6.944
+ATOM   1501  N   LEU B 202      -9.211 -36.965   7.754
+ATOM   1502  CA  LEU B 202      -7.808 -37.292   7.583
+ATOM   1503  C   LEU B 202      -7.532 -38.634   8.215
+ATOM   1504  O   LEU B 202      -8.227 -39.042   9.130
+ATOM   1505  CB  LEU B 202      -6.913 -36.264   8.285
+ATOM   1506  CG  LEU B 202      -7.172 -34.784   8.072
+ATOM   1507  CD1 LEU B 202      -6.076 -33.968   8.744
+ATOM   1508  CD2 LEU B 202      -7.279 -34.451   6.593
+ATOM   1509  N   LEU B 203      -6.481 -39.291   7.754
+ATOM   1510  CA  LEU B 203      -6.029 -40.527   8.361
+ATOM   1511  C   LEU B 203      -4.748 -40.239   9.111
+ATOM   1512  O   LEU B 203      -3.860 -39.565   8.595
+ATOM   1513  CB  LEU B 203      -5.804 -41.619   7.300
+ATOM   1514  CG  LEU B 203      -7.035 -41.965   6.444
+ATOM   1515  CD1 LEU B 203      -6.695 -42.974   5.363
+ATOM   1516  CD2 LEU B 203      -8.190 -42.479   7.303
+ATOM   1517  N   ASP B 204      -4.654 -40.735  10.337
+ATOM   1518  CA  ASP B 204      -3.401 -40.681  11.047
+ATOM   1519  C   ASP B 204      -2.478 -41.829  10.578
+ATOM   1520  O   ASP B 204      -2.825 -42.613   9.703
+ATOM   1521  CB  ASP B 204      -3.634 -40.619  12.575
+ATOM   1522  CG  ASP B 204      -3.983 -41.969  13.221
+ATOM   1523  OD1 ASP B 204      -3.763 -43.056  12.633
+ATOM   1524  OD2 ASP B 204      -4.457 -41.918  14.378
+ATOM   1525  N   ARG B 205      -1.292 -41.901  11.159
+ATOM   1526  CA  ARG B 205      -0.265 -42.858  10.757
+ATOM   1527  C   ARG B 205      -0.761 -44.303  10.723
+ATOM   1528  O   ARG B 205      -0.322 -45.086   9.882
+ATOM   1529  CB  ARG B 205       0.884 -42.739  11.742
+ATOM   1530  CG  ARG B 205       2.126 -43.552  11.422
+ATOM   1531  CD  ARG B 205       3.185 -43.363  12.544
+ATOM   1532  NE  ARG B 205       2.653 -43.721  13.872
+ATOM   1533  CZ  ARG B 205       2.085 -42.881  14.744
+ATOM   1534  NH1 ARG B 205       1.952 -41.581  14.482
+ATOM   1535  NH2 ARG B 205       1.648 -43.353  15.907
+ATOM   1536  N   CYS B 206      -1.669 -44.648  11.642
+ATOM   1537  CA  CYS B 206      -2.190 -46.014  11.778
+ATOM   1538  C   CYS B 206      -3.398 -46.324  10.924
+ATOM   1539  O   CYS B 206      -3.679 -47.496  10.688
+ATOM   1540  CB  CYS B 206      -2.563 -46.282  13.219
+ATOM   1541  SG  CYS B 206      -1.124 -46.412  14.219
+ATOM   1542  N   GLY B 207      -4.121 -45.292  10.483
+ATOM   1543  CA  GLY B 207      -5.308 -45.471   9.662
+ATOM   1544  C   GLY B 207      -6.601 -45.182  10.392
+ATOM   1545  O   GLY B 207      -7.677 -45.548   9.916
+ATOM   1546  N   HIS B 208      -6.514 -44.537  11.548
+ATOM   1547  CA  HIS B 208      -7.709 -44.018  12.201
+ATOM   1548  C   HIS B 208      -7.970 -42.618  11.704
+ATOM   1549  O   HIS B 208      -7.039 -41.913  11.311
+ATOM   1550  CB  HIS B 208      -7.531 -43.966  13.707
+ATOM   1551  CG  HIS B 208      -7.519 -45.307  14.340
+ATOM   1552  ND1 HIS B 208      -8.661 -46.056  14.488
+ATOM   1553  CD2 HIS B 208      -6.509 -46.047  14.843
+ATOM   1554  CE1 HIS B 208      -8.356 -47.204  15.058
+ATOM   1555  NE2 HIS B 208      -7.057 -47.223  15.290
+ATOM   1556  N   ILE B 209      -9.229 -42.203  11.773
+ATOM   1557  CA  ILE B 209      -9.630 -40.948  11.193
+ATOM   1558  C   ILE B 209      -9.521 -39.786  12.186
+ATOM   1559  O   ILE B 209      -9.499 -39.983  13.392
+ATOM   1560  CB  ILE B 209     -11.063 -41.019  10.586
+ATOM   1561  CG1 ILE B 209     -12.142 -41.054  11.673
+ATOM   1562  CG2 ILE B 209     -11.187 -42.204   9.661
+ATOM   1563  CD1 ILE B 209     -12.647 -39.709  12.067
+ATOM   1564  N   ARG B 210      -9.416 -38.583  11.632
+ATOM   1565  CA  ARG B 210      -9.607 -37.363  12.363
+ATOM   1566  C   ARG B 210     -10.528 -36.446  11.576
+ATOM   1567  O   ARG B 210     -10.318 -36.192  10.392
+ATOM   1568  CB  ARG B 210      -8.274 -36.657  12.573
+ATOM   1569  CG  ARG B 210      -7.370 -37.310  13.577
+ATOM   1570  CD  ARG B 210      -8.067 -37.462  14.903
+ATOM   1571  NE  ARG B 210      -7.140 -37.761  15.982
+ATOM   1572  CZ  ARG B 210      -6.472 -38.900  16.116
+ATOM   1573  NH1 ARG B 210      -5.661 -39.050  17.148
+ATOM   1574  NH2 ARG B 210      -6.601 -39.892  15.242
+ATOM   1575  N   LEU B 211     -11.556 -35.947  12.239
+ATOM   1576  CA  LEU B 211     -12.391 -34.967  11.623
+ATOM   1577  C   LEU B 211     -11.617 -33.668  11.700
+ATOM   1578  O   LEU B 211     -10.950 -33.371  12.693
+ATOM   1579  CB  LEU B 211     -13.749 -34.880  12.321
+ATOM   1580  CG  LEU B 211     -14.653 -33.749  11.824
+ATOM   1581  CD1 LEU B 211     -15.044 -33.975  10.387
+ATOM   1582  CD2 LEU B 211     -15.863 -33.594  12.727
+ATOM   1583  N   ALA B 212     -11.706 -32.902  10.631
+ATOM   1584  CA  ALA B 212     -10.906 -31.716  10.466
+ATOM   1585  C   ALA B 212     -11.764 -30.579   9.952
+ATOM   1586  O   ALA B 212     -12.934 -30.741   9.609
+ATOM   1587  CB  ALA B 212      -9.780 -31.998   9.479
+ATOM   1588  N   ASP B 213     -11.155 -29.415   9.906
+ATOM   1589  CA  ASP B 213     -11.749 -28.225   9.316
+ATOM   1590  C   ASP B 213     -12.986 -27.709  10.005
+ATOM   1591  O   ASP B 213     -14.096 -27.944   9.578
+ATOM   1592  CB  ASP B 213     -12.045 -28.439   7.849
+ATOM   1593  CG  ASP B 213     -12.128 -27.160   7.124
+ATOM   1594  OD1 ASP B 213     -12.319 -26.143   7.835
+ATOM   1595  OD2 ASP B 213     -11.971 -27.171   5.877
+ATOM   1596  N   PHE B 214     -12.764 -26.951  11.060
+ATOM   1597  CA  PHE B 214     -13.840 -26.450  11.881
+ATOM   1598  C   PHE B 214     -14.111 -24.989  11.607
+ATOM   1599  O   PHE B 214     -14.788 -24.311  12.389
+ATOM   1600  CB  PHE B 214     -13.480 -26.709  13.321
+ATOM   1601  CG  PHE B 214     -13.315 -28.160  13.605
+ATOM   1602  CD1 PHE B 214     -12.087 -28.765  13.479
+ATOM   1603  CD2 PHE B 214     -14.408 -28.941  13.928
+ATOM   1604  CE1 PHE B 214     -11.948 -30.122  13.714
+ATOM   1605  CE2 PHE B 214     -14.263 -30.297  14.172
+ATOM   1606  CZ  PHE B 214     -13.037 -30.879  14.061
+ATOM   1607  N   GLY B 215     -13.623 -24.529  10.456
+ATOM   1608  CA  GLY B 215     -13.792 -23.156  10.045
+ATOM   1609  C   GLY B 215     -15.143 -22.777   9.484
+ATOM   1610  O   GLY B 215     -15.286 -21.707   8.939
+ATOM   1611  N   SER B 216     -16.135 -23.642   9.590
+ATOM   1612  CA  SER B 216     -17.502 -23.218   9.339
+ATOM   1613  C   SER B 216     -18.458 -23.640  10.468
+ATOM   1614  O   SER B 216     -19.656 -23.656  10.284
+ATOM   1615  CB  SER B 216     -17.987 -23.677   7.950
+ATOM   1616  OG  SER B 216     -17.007 -24.407   7.230
+ATOM   1617  N   CYS B 217     -17.920 -23.958  11.637
+ATOM   1618  CA  CYS B 217     -18.727 -24.327  12.796
+ATOM   1619  C   CYS B 217     -19.566 -23.199  13.314
+ATOM   1620  O   CYS B 217     -19.143 -22.040  13.291
+ATOM   1621  CB  CYS B 217     -17.831 -24.733  13.956
+ATOM   1622  SG  CYS B 217     -17.265 -26.357  13.788
+ATOM   1623  N   LEU B 218     -20.733 -23.555  13.835
+ATOM   1624  CA  LEU B 218     -21.575 -22.611  14.554
+ATOM   1625  C   LEU B 218     -21.989 -23.208  15.859
+ATOM   1626  O   LEU B 218     -22.223 -24.414  15.947
+ATOM   1627  CB  LEU B 218     -22.839 -22.254  13.768
+ATOM   1628  CG  LEU B 218     -22.750 -20.981  12.934
+ATOM   1629  CD1 LEU B 218     -24.112 -20.671  12.332
+ATOM   1630  CD2 LEU B 218     -22.266 -19.842  13.789
+ATOM   1631  N   LYS B 219     -22.101 -22.352  16.869
+ATOM   1632  CA  LYS B 219     -22.619 -22.777  18.153
+ATOM   1633  C   LYS B 219     -24.141 -22.906  18.106
+ATOM   1634  O   LYS B 219     -24.853 -21.975  17.733
+ATOM   1635  CB  LYS B 219     -22.175 -21.832  19.250
+ATOM   1636  CG  LYS B 219     -22.030 -22.534  20.579
+ATOM   1637  CD  LYS B 219     -21.653 -21.574  21.683
+ATOM   1638  CE  LYS B 219     -22.015 -22.138  23.025
+ATOM   1639  NZ  LYS B 219     -21.283 -23.419  23.235
+ATOM   1640  N   LEU B 220     -24.616 -24.096  18.453
+ATOM   1641  CA  LEU B 220     -26.041 -24.383  18.617
+ATOM   1642  C   LEU B 220     -26.664 -23.540  19.715
+ATOM   1643  O   LEU B 220     -26.047 -23.313  20.759
+ATOM   1644  CB  LEU B 220     -26.243 -25.847  18.997
+ATOM   1645  CG  LEU B 220     -25.843 -26.867  17.937
+ATOM   1646  CD1 LEU B 220     -25.615 -28.246  18.564
+ATOM   1647  CD2 LEU B 220     -26.904 -26.903  16.826
+ATOM   1648  N   ARG B 221     -27.899 -23.102  19.474
+ATOM   1649  CA  ARG B 221     -28.688 -22.352  20.453
+ATOM   1650  C   ARG B 221     -29.327 -23.294  21.460
+ATOM   1651  O   ARG B 221     -29.270 -24.515  21.304
+ATOM   1652  CB  ARG B 221     -29.778 -21.575  19.733
+ATOM   1653  CG  ARG B 221     -29.226 -20.620  18.691
+ATOM   1654  CD  ARG B 221     -30.220 -19.554  18.237
+ATOM   1655  NE  ARG B 221     -30.923 -19.891  16.996
+ATOM   1656  CZ  ARG B 221     -32.248 -20.011  16.851
+ATOM   1657  NH1 ARG B 221     -33.089 -19.851  17.884
+ATOM   1658  NH2 ARG B 221     -32.744 -20.294  15.646
+ATOM   1659  N   ALA B 222     -29.946 -22.728  22.489
+ATOM   1660  CA  ALA B 222     -30.682 -23.514  23.479
+ATOM   1661  C   ALA B 222     -31.622 -24.566  22.841
+ATOM   1662  O   ALA B 222     -31.695 -25.709  23.308
+ATOM   1663  CB  ALA B 222     -31.459 -22.591  24.369
+ATOM   1664  N   ASP B 223     -32.315 -24.183  21.767
+ATOM   1665  CA  ASP B 223     -33.269 -25.069  21.092
+ATOM   1666  C   ASP B 223     -32.615 -26.078  20.133
+ATOM   1667  O   ASP B 223     -33.300 -26.717  19.337
+ATOM   1668  CB  ASP B 223     -34.332 -24.243  20.337
+ATOM   1669  CG  ASP B 223     -33.806 -23.609  19.038
+ATOM   1670  OD1 ASP B 223     -32.592 -23.733  18.719
+ATOM   1671  OD2 ASP B 223     -34.621 -22.978  18.327
+ATOM   1672  N   GLY B 224     -31.298 -26.205  20.175
+ATOM   1673  CA  GLY B 224     -30.617 -27.228  19.387
+ATOM   1674  C   GLY B 224     -30.494 -26.955  17.898
+ATOM   1675  O   GLY B 224     -30.184 -27.879  17.140
+ATOM   1676  N   THR B 225     -30.708 -25.695  17.497
+ATOM   1677  CA  THR B 225     -30.687 -25.274  16.100
+ATOM   1678  C   THR B 225     -29.795 -24.067  15.920
+ATOM   1679  O   THR B 225     -29.373 -23.461  16.890
+ATOM   1680  CB  THR B 225     -32.093 -24.861  15.608
+ATOM   1681  OG1 THR B 225     -32.414 -23.529  16.057
+ATOM   1682  CG2 THR B 225     -33.137 -25.844  16.098
+ATOM   1683  N   VAL B 226     -29.540 -23.723  14.664
+ATOM   1684  CA  VAL B 226     -28.846 -22.487  14.271
+ATOM   1685  C   VAL B 226     -29.704 -21.745  13.241
+ATOM   1686  O   VAL B 226     -30.498 -22.360  12.521
+ATOM   1687  CB  VAL B 226     -27.441 -22.772  13.651
+ATOM   1688  CG1 VAL B 226     -26.436 -23.070  14.728
+ATOM   1689  CG2 VAL B 226     -27.495 -23.933  12.677
+ATOM   1690  N   ARG B 227     -29.551 -20.427  13.177
+ATOM   1691  CA  ARG B 227     -30.309 -19.598  12.222
+ATOM   1692  C   ARG B 227     -29.320 -18.843  11.329
+ATOM   1693  O   ARG B 227     -28.703 -17.884  11.763
+ATOM   1694  CB  ARG B 227     -31.245 -18.620  12.960
+ATOM   1695  N   SER B 228     -29.146 -19.304  10.097
+ATOM   1696  CA  SER B 228     -28.264 -18.641   9.119
+ATOM   1697  C   SER B 228     -28.986 -18.581   7.785
+ATOM   1698  O   SER B 228     -29.676 -19.522   7.405
+ATOM   1699  CB  SER B 228     -26.918 -19.375   8.950
+ATOM   1700  N   LEU B 229     -28.835 -17.460   7.091
+ATOM   1701  CA  LEU B 229     -29.384 -17.283   5.745
+ATOM   1702  C   LEU B 229     -28.274 -17.348   4.677
+ATOM   1703  O   LEU B 229     -28.509 -17.025   3.514
+ATOM   1704  CB  LEU B 229     -30.154 -15.951   5.665
+ATOM   1705  CG  LEU B 229     -31.662 -16.024   5.932
+ATOM   1706  CD1 LEU B 229     -31.950 -16.616   7.299
+ATOM   1707  CD2 LEU B 229     -32.288 -14.657   5.804
+ATOM   1708  N   VAL B 230     -27.067 -17.753   5.078
+ATOM   1709  CA  VAL B 230     -25.949 -17.893   4.144
+ATOM   1710  C   VAL B 230     -25.320 -19.259   4.273
+ATOM   1711  O   VAL B 230     -24.867 -19.622   5.347
+ATOM   1712  CB  VAL B 230     -24.851 -16.848   4.378
+ATOM   1713  CG1 VAL B 230     -23.562 -17.257   3.650
+ATOM   1714  CG2 VAL B 230     -25.330 -15.493   3.907
+ATOM   1715  N   ALA B 231     -25.272 -19.987   3.162
+ATOM   1716  CA  ALA B 231     -24.799 -21.361   3.156
+ATOM   1717  C   ALA B 231     -23.285 -21.399   3.185
+ATOM   1718  O   ALA B 231     -22.633 -20.715   2.419
+ATOM   1719  CB  ALA B 231     -25.329 -22.097   1.936
+ATOM   1720  N   VAL B 232     -22.726 -22.166   4.107
+ATOM   1721  CA  VAL B 232     -21.296 -22.456   4.088
+ATOM   1722  C   VAL B 232     -21.180 -23.956   3.847
+ATOM   1723  O   VAL B 232     -22.151 -24.704   4.057
+ATOM   1724  CB  VAL B 232     -20.585 -22.024   5.395
+ATOM   1725  CG1 VAL B 232     -20.843 -20.554   5.683
+ATOM   1726  CG2 VAL B 232     -21.015 -22.881   6.564
+ATOM   1727  N   GLY B 233     -20.026 -24.408   3.379
+ATOM   1728  CA  GLY B 233     -19.847 -25.839   3.122
+ATOM   1729  C   GLY B 233     -20.192 -26.283   1.716
+ATOM   1730  O   GLY B 233     -21.138 -25.810   1.125
+ATOM   1731  N   THR B 234     -19.433 -27.237   1.207
+ATOM   1732  CA  THR B 234     -19.490 -27.665  -0.185
+ATOM   1733  C   THR B 234     -20.871 -28.035  -0.744
+ATOM   1734  O   THR B 234     -21.552 -28.871  -0.190
+ATOM   1735  CB  THR B 234     -18.545 -28.871  -0.368
+ATOM   1736  OG1 THR B 234     -17.258 -28.548   0.176
+ATOM   1737  CG2 THR B 234     -18.391 -29.233  -1.821
+ATOM   1738  N   PRO B 235     -21.246 -27.465  -1.904
+ATOM   1739  CA  PRO B 235     -22.563 -27.678  -2.570
+ATOM   1740  C   PRO B 235     -23.151 -29.107  -2.570
+ATOM   1741  O   PRO B 235     -24.301 -29.277  -2.190
+ATOM   1742  CB  PRO B 235     -22.290 -27.255  -4.018
+ATOM   1743  CG  PRO B 235     -21.247 -26.229  -3.902
+ATOM   1744  CD  PRO B 235     -20.382 -26.579  -2.711
+ATOM   1745  N   ASP B 236     -22.382 -30.107  -2.996
+ATOM   1746  CA  ASP B 236     -22.873 -31.485  -3.074
+ATOM   1747  C   ASP B 236     -23.270 -32.052  -1.740
+ATOM   1748  O   ASP B 236     -23.964 -33.063  -1.699
+ATOM   1749  CB  ASP B 236     -21.806 -32.435  -3.607
+ATOM   1750  CG  ASP B 236     -21.525 -32.261  -5.073
+ATOM   1751  OD1 ASP B 236     -22.138 -31.412  -5.751
+ATOM   1752  OD2 ASP B 236     -20.656 -33.001  -5.549
+ATOM   1753  N   TYR B 237     -22.809 -31.454  -0.643
+ATOM   1754  CA  TYR B 237     -23.149 -31.975   0.678
+ATOM   1755  C   TYR B 237     -24.229 -31.180   1.376
+ATOM   1756  O   TYR B 237     -24.714 -31.616   2.409
+ATOM   1757  CB  TYR B 237     -21.898 -32.065   1.538
+ATOM   1758  CG  TYR B 237     -20.898 -32.973   0.907
+ATOM   1759  CD1 TYR B 237     -20.013 -32.509  -0.067
+ATOM   1760  CD2 TYR B 237     -20.874 -34.313   1.230
+ATOM   1761  CE1 TYR B 237     -19.121 -33.368  -0.673
+ATOM   1762  CE2 TYR B 237     -19.987 -35.176   0.628
+ATOM   1763  CZ  TYR B 237     -19.126 -34.709  -0.316
+ATOM   1764  OH  TYR B 237     -18.279 -35.613  -0.891
+ATOM   1765  N   LEU B 238     -24.629 -30.031   0.826
+ATOM   1766  CA  LEU B 238     -25.648 -29.202   1.478
+ATOM   1767  C   LEU B 238     -26.998 -29.919   1.601
+ATOM   1768  O   LEU B 238     -27.494 -30.487   0.632
+ATOM   1769  CB  LEU B 238     -25.850 -27.898   0.715
+ATOM   1770  CG  LEU B 238     -24.657 -26.952   0.661
+ATOM   1771  CD1 LEU B 238     -25.010 -25.732  -0.184
+ATOM   1772  CD2 LEU B 238     -24.244 -26.541   2.030
+ATOM   1773  N   SER B 239     -27.588 -29.885   2.790
+ATOM   1774  CA  SER B 239     -28.909 -30.490   3.025
+ATOM   1775  C   SER B 239     -30.093 -29.619   2.541
+ATOM   1776  O   SER B 239     -29.959 -28.413   2.369
+ATOM   1777  CB  SER B 239     -29.083 -30.764   4.516
+ATOM   1778  OG  SER B 239     -29.165 -29.544   5.227
+ATOM   1779  N   PRO B 240     -31.277 -30.224   2.359
+ATOM   1780  CA  PRO B 240     -32.397 -29.435   1.876
+ATOM   1781  C   PRO B 240     -32.760 -28.307   2.823
+ATOM   1782  O   PRO B 240     -33.225 -27.270   2.382
+ATOM   1783  CB  PRO B 240     -33.532 -30.446   1.808
+ATOM   1784  CG  PRO B 240     -32.874 -31.738   1.727
+ATOM   1785  CD  PRO B 240     -31.672 -31.621   2.570
+ATOM   1786  N   GLU B 241     -32.521 -28.505   4.116
+ATOM   1787  CA  GLU B 241     -32.892 -27.510   5.115
+ATOM   1788  C   GLU B 241     -31.998 -26.288   5.034
+ATOM   1789  O   GLU B 241     -32.479 -25.174   5.151
+ATOM   1790  CB  GLU B 241     -32.854 -28.105   6.518
+ATOM   1791  CG  GLU B 241     -33.826 -29.279   6.704
+ATOM   1792  CD  GLU B 241     -33.221 -30.631   6.294
+ATOM   1793  OE1 GLU B 241     -32.036 -30.913   6.645
+ATOM   1794  OE2 GLU B 241     -33.948 -31.405   5.626
+ATOM   1795  N   ILE B 242     -30.701 -26.486   4.829
+ATOM   1796  CA  ILE B 242     -29.807 -25.346   4.626
+ATOM   1797  C   ILE B 242     -30.272 -24.504   3.436
+ATOM   1798  O   ILE B 242     -30.454 -23.279   3.569
+ATOM   1799  CB  ILE B 242     -28.356 -25.778   4.410
+ATOM   1800  CG1 ILE B 242     -27.783 -26.293   5.736
+ATOM   1801  CG2 ILE B 242     -27.530 -24.604   3.835
+ATOM   1802  CD1 ILE B 242     -26.542 -27.127   5.605
+ATOM   1803  N   LEU B 243     -30.488 -25.176   2.302
+ATOM   1804  CA  LEU B 243     -30.915 -24.527   1.061
+ATOM   1805  C   LEU B 243     -32.254 -23.787   1.201
+ATOM   1806  O   LEU B 243     -32.386 -22.683   0.695
+ATOM   1807  CB  LEU B 243     -30.974 -25.536  -0.100
+ATOM   1808  CG  LEU B 243     -29.649 -26.203  -0.512
+ATOM   1809  CD1 LEU B 243     -29.870 -27.160  -1.654
+ATOM   1810  CD2 LEU B 243     -28.564 -25.196  -0.873
+ATOM   1811  N   GLN B 244     -33.218 -24.377   1.909
+ATOM   1812  CA  GLN B 244     -34.494 -23.718   2.211
+ATOM   1813  C   GLN B 244     -34.314 -22.514   3.147
+ATOM   1814  O   GLN B 244     -35.053 -21.541   3.059
+ATOM   1815  CB  GLN B 244     -35.462 -24.701   2.868
+ATOM   1816  CG  GLN B 244     -35.670 -26.021   2.110
+ATOM   1817  CD  GLN B 244     -36.982 -26.130   1.380
+ATOM   1818  OE1 GLN B 244     -37.597 -25.125   1.025
+ATOM   1819  NE2 GLN B 244     -37.418 -27.365   1.136
+ATOM   1820  N   ALA B 245     -33.333 -22.568   4.040
+ATOM   1821  CA  ALA B 245     -33.035 -21.421   4.904
+ATOM   1822  C   ALA B 245     -32.545 -20.218   4.092
+ATOM   1823  O   ALA B 245     -32.779 -19.081   4.468
+ATOM   1824  CB  ALA B 245     -32.014 -21.790   6.000
+ATOM   1825  N   VAL B 246     -31.861 -20.464   2.982
+ATOM   1826  CA  VAL B 246     -31.326 -19.370   2.193
+ATOM   1827  C   VAL B 246     -32.430 -18.693   1.402
+ATOM   1828  O   VAL B 246     -32.388 -17.493   1.176
+ATOM   1829  CB  VAL B 246     -30.198 -19.849   1.248
+ATOM   1830  CG1 VAL B 246     -29.856 -18.768   0.192
+ATOM   1831  CG2 VAL B 246     -28.973 -20.206   2.059
+ATOM   1832  N   GLY B 247     -33.419 -19.464   0.978
+ATOM   1833  CA  GLY B 247     -34.514 -18.928   0.185
+ATOM   1834  C   GLY B 247     -35.439 -18.023   0.968
+ATOM   1835  O   GLY B 247     -36.007 -17.093   0.405
+ATOM   1836  N   GLY B 248     -35.611 -18.321   2.255
+ATOM   1837  CA  GLY B 248     -36.406 -17.491   3.154
+ATOM   1838  C   GLY B 248     -37.896 -17.794   3.185
+ATOM   1839  O   GLY B 248     -38.689 -16.946   3.608
+ATOM   1840  N   GLY B 249     -38.287 -18.996   2.763
+ATOM   1841  CA  GLY B 249     -39.702 -19.391   2.795
+ATOM   1842  C   GLY B 249     -40.294 -19.551   4.198
+ATOM   1843  O   GLY B 249     -39.576 -19.430   5.199
+ATOM   1844  N   PRO B 250     -41.615 -19.829   4.282
+ATOM   1845  CA  PRO B 250     -42.307 -20.043   5.571
+ATOM   1846  C   PRO B 250     -42.040 -21.424   6.199
+ATOM   1847  O   PRO B 250     -42.341 -22.455   5.592
+ATOM   1848  CB  PRO B 250     -43.784 -19.907   5.198
+ATOM   1849  CG  PRO B 250     -43.848 -20.350   3.765
+ATOM   1850  CD  PRO B 250     -42.539 -19.952   3.134
+ATOM   1851  N   GLY B 251     -41.489 -21.430   7.411
+ATOM   1852  CA  GLY B 251     -41.163 -22.668   8.121
+ATOM   1853  C   GLY B 251     -39.690 -22.995   8.057
+ATOM   1854  O   GLY B 251     -39.258 -24.048   8.518
+ATOM   1855  N   THR B 252     -38.918 -22.076   7.489
+ATOM   1856  CA  THR B 252     -37.491 -22.269   7.265
+ATOM   1857  C   THR B 252     -36.738 -21.223   8.081
+ATOM   1858  O   THR B 252     -37.344 -20.492   8.873
+ATOM   1859  CB  THR B 252     -37.151 -22.110   5.760
+ATOM   1860  OG1 THR B 252     -37.159 -20.720   5.402
+ATOM   1861  CG2 THR B 252     -38.164 -22.860   4.887
+ATOM   1862  N   GLY B 253     -35.428 -21.147   7.884
+ATOM   1863  CA  GLY B 253     -34.607 -20.126   8.529
+ATOM   1864  C   GLY B 253     -33.680 -20.744   9.549
+ATOM   1865  O   GLY B 253     -32.574 -20.240   9.785
+ATOM   1866  N   SER B 254     -34.122 -21.849  10.145
+ATOM   1867  CA  SER B 254     -33.313 -22.554  11.114
+ATOM   1868  C   SER B 254     -33.001 -23.973  10.658
+ATOM   1869  O   SER B 254     -33.754 -24.574   9.921
+ATOM   1870  CB  SER B 254     -34.044 -22.605  12.448
+ATOM   1871  OG  SER B 254     -35.024 -23.620  12.415
+ATOM   1872  N   TYR B 255     -31.882 -24.504  11.117
+ATOM   1873  CA  TYR B 255     -31.589 -25.921  10.984
+ATOM   1874  C   TYR B 255     -30.609 -26.308  12.094
+ATOM   1875  O   TYR B 255     -30.211 -25.472  12.897
+ATOM   1876  CB  TYR B 255     -31.022 -26.215   9.600
+ATOM   1877  CG  TYR B 255     -29.793 -25.407   9.245
+ATOM   1878  CD1 TYR B 255     -29.912 -24.191   8.594
+ATOM   1879  CD2 TYR B 255     -28.511 -25.858   9.564
+ATOM   1880  CE1 TYR B 255     -28.786 -23.438   8.279
+ATOM   1881  CE2 TYR B 255     -27.383 -25.111   9.243
+ATOM   1882  CZ  TYR B 255     -27.535 -23.904   8.599
+ATOM   1883  OH  TYR B 255     -26.444 -23.147   8.266
+ATOM   1884  N   GLY B 256     -30.215 -27.568  12.145
+ATOM   1885  CA  GLY B 256     -29.364 -28.044  13.234
+ATOM   1886  C   GLY B 256     -28.450 -29.177  12.807
+ATOM   1887  O   GLY B 256     -28.043 -29.246  11.651
+ATOM   1888  N   PRO B 257     -28.125 -30.079  13.732
+ATOM   1889  CA  PRO B 257     -27.190 -31.155  13.455
+ATOM   1890  C   PRO B 257     -27.644 -32.191  12.423
+ATOM   1891  O   PRO B 257     -26.810 -32.996  11.981
+ATOM   1892  CB  PRO B 257     -27.015 -31.823  14.824
+ATOM   1893  CG  PRO B 257     -27.472 -30.856  15.790
+ATOM   1894  CD  PRO B 257     -28.580 -30.129  15.124
+ATOM   1895  N   GLU B 258     -28.923 -32.192  12.039
+ATOM   1896  CA  GLU B 258     -29.347 -33.028  10.907
+ATOM   1897  C   GLU B 258     -28.502 -32.761   9.667
+ATOM   1898  O   GLU B 258     -28.341 -33.660   8.856
+ATOM   1899  CB  GLU B 258     -30.814 -32.847  10.477
+ATOM   1900  CG  GLU B 258     -31.721 -32.073  11.377
+ATOM   1901  CD  GLU B 258     -31.374 -30.615  11.397
+ATOM   1902  OE1 GLU B 258     -30.953 -30.152  12.477
+ATOM   1903  OE2 GLU B 258     -31.500 -29.952  10.341
+ATOM   1904  N   CYS B 259     -28.004 -31.538   9.485
+ATOM   1905  CA  CYS B 259     -27.296 -31.215   8.251
+ATOM   1906  C   CYS B 259     -25.986 -31.989   8.129
+ATOM   1907  O   CYS B 259     -25.640 -32.420   7.045
+ATOM   1908  CB  CYS B 259     -27.047 -29.715   8.124
+ATOM   1909  SG  CYS B 259     -25.943 -29.076   9.376
+ATOM   1910  N   ASP B 260     -25.268 -32.181   9.231
+ATOM   1911  CA  ASP B 260     -24.054 -33.003   9.198
+ATOM   1912  C   ASP B 260     -24.440 -34.470   8.896
+ATOM   1913  O   ASP B 260     -23.759 -35.191   8.132
+ATOM   1914  CB  ASP B 260     -23.292 -32.958  10.532
+ATOM   1915  CG  ASP B 260     -22.701 -31.571  10.867
+ATOM   1916  OD1 ASP B 260     -22.452 -30.731   9.972
+ATOM   1917  OD2 ASP B 260     -22.468 -31.343  12.068
+ATOM   1918  N   TRP B 261     -25.539 -34.917   9.489
+ATOM   1919  CA  TRP B 261     -25.975 -36.271   9.256
+ATOM   1920  C   TRP B 261     -26.404 -36.472   7.807
+ATOM   1921  O   TRP B 261     -26.123 -37.506   7.209
+ATOM   1922  CB  TRP B 261     -27.069 -36.652  10.226
+ATOM   1923  CG  TRP B 261     -26.600 -36.699  11.662
+ATOM   1924  CD1 TRP B 261     -27.221 -36.142  12.735
+ATOM   1925  CD2 TRP B 261     -25.434 -37.355  12.175
+ATOM   1926  NE1 TRP B 261     -26.525 -36.407  13.878
+ATOM   1927  CE2 TRP B 261     -25.415 -37.141  13.562
+ATOM   1928  CE3 TRP B 261     -24.403 -38.102  11.597
+ATOM   1929  CZ2 TRP B 261     -24.408 -37.651  14.388
+ATOM   1930  CZ3 TRP B 261     -23.399 -38.608  12.420
+ATOM   1931  CH2 TRP B 261     -23.417 -38.383  13.802
+ATOM   1932  N   TRP B 262     -27.047 -35.478   7.226
+ATOM   1933  CA  TRP B 262     -27.316 -35.501   5.799
+ATOM   1934  C   TRP B 262     -26.015 -35.630   4.993
+ATOM   1935  O   TRP B 262     -25.930 -36.419   4.057
+ATOM   1936  CB  TRP B 262     -28.043 -34.225   5.387
+ATOM   1937  CG  TRP B 262     -28.271 -34.143   3.931
+ATOM   1938  CD1 TRP B 262     -27.407 -33.709   3.015
+ATOM   1939  CD2 TRP B 262     -29.457 -34.537   3.221
+ATOM   1940  NE1 TRP B 262     -27.958 -33.790   1.764
+ATOM   1941  CE2 TRP B 262     -29.220 -34.301   1.864
+ATOM   1942  CE3 TRP B 262     -30.700 -35.069   3.610
+ATOM   1943  CZ2 TRP B 262     -30.174 -34.555   0.881
+ATOM   1944  CZ3 TRP B 262     -31.644 -35.328   2.637
+ATOM   1945  CH2 TRP B 262     -31.380 -35.065   1.289
+ATOM   1946  N   ALA B 263     -25.018 -34.829   5.363
+ATOM   1947  CA  ALA B 263     -23.746 -34.783   4.652
+ATOM   1948  C   ALA B 263     -23.089 -36.162   4.667
+ATOM   1949  O   ALA B 263     -22.463 -36.589   3.677
+ATOM   1950  CB  ALA B 263     -22.824 -33.731   5.271
+ATOM   1951  N   LEU B 264     -23.252 -36.859   5.797
+ATOM   1952  CA  LEU B 264     -22.720 -38.209   5.948
+ATOM   1953  C   LEU B 264     -23.385 -39.135   4.951
+ATOM   1954  O   LEU B 264     -22.750 -40.010   4.385
+ATOM   1955  CB  LEU B 264     -22.912 -38.725   7.382
+ATOM   1956  CG  LEU B 264     -22.302 -40.110   7.650
+ATOM   1957  CD1 LEU B 264     -20.779 -40.102   7.430
+ATOM   1958  CD2 LEU B 264     -22.641 -40.619   9.033
+ATOM   1959  N   GLY B 265     -24.674 -38.942   4.737
+ATOM   1960  CA  GLY B 265     -25.405 -39.743   3.761
+ATOM   1961  C   GLY B 265     -24.827 -39.553   2.377
+ATOM   1962  O   GLY B 265     -24.669 -40.520   1.619
+ATOM   1963  N   VAL B 266     -24.508 -38.305   2.047
+ATOM   1964  CA  VAL B 266     -23.979 -37.988   0.726
+ATOM   1965  C   VAL B 266     -22.605 -38.649   0.572
+ATOM   1966  O   VAL B 266     -22.275 -39.242  -0.467
+ATOM   1967  CB  VAL B 266     -23.906 -36.478   0.500
+ATOM   1968  CG1 VAL B 266     -23.376 -36.171  -0.870
+ATOM   1969  CG2 VAL B 266     -25.278 -35.875   0.666
+ATOM   1970  N   PHE B 267     -21.820 -38.576   1.639
+ATOM   1971  CA  PHE B 267     -20.543 -39.262   1.677
+ATOM   1972  C   PHE B 267     -20.722 -40.773   1.550
+ATOM   1973  O   PHE B 267     -20.027 -41.403   0.764
+ATOM   1974  CB  PHE B 267     -19.773 -38.913   2.946
+ATOM   1975  CG  PHE B 267     -18.444 -39.569   3.029
+ATOM   1976  CD1 PHE B 267     -17.689 -39.792   1.890
+ATOM   1977  CD2 PHE B 267     -17.929 -39.947   4.236
+ATOM   1978  CE1 PHE B 267     -16.460 -40.398   1.966
+ATOM   1979  CE2 PHE B 267     -16.704 -40.553   4.320
+ATOM   1980  CZ  PHE B 267     -15.967 -40.773   3.192
+ATOM   1981  N   ALA B 268     -21.669 -41.350   2.281
+ATOM   1982  CA  ALA B 268     -21.900 -42.785   2.172
+ATOM   1983  C   ALA B 268     -22.265 -43.143   0.745
+ATOM   1984  O   ALA B 268     -21.709 -44.069   0.171
+ATOM   1985  CB  ALA B 268     -22.985 -43.231   3.116
+ATOM   1986  N   TYR B 269     -23.177 -42.383   0.156
+ATOM   1987  CA  TYR B 269     -23.582 -42.624  -1.232
+ATOM   1988  C   TYR B 269     -22.363 -42.633  -2.152
+ATOM   1989  O   TYR B 269     -22.223 -43.512  -2.993
+ATOM   1990  CB  TYR B 269     -24.615 -41.574  -1.693
+ATOM   1991  CG  TYR B 269     -25.257 -41.870  -3.030
+ATOM   1992  CD1 TYR B 269     -26.552 -42.329  -3.118
+ATOM   1993  CD2 TYR B 269     -24.551 -41.692  -4.215
+ATOM   1994  CE1 TYR B 269     -27.135 -42.599  -4.358
+ATOM   1995  CE2 TYR B 269     -25.107 -41.961  -5.434
+ATOM   1996  CZ  TYR B 269     -26.397 -42.409  -5.503
+ATOM   1997  OH  TYR B 269     -26.949 -42.672  -6.727
+ATOM   1998  N   GLU B 270     -21.480 -41.661  -1.999
+ATOM   1999  CA  GLU B 270     -20.289 -41.618  -2.835
+ATOM   2000  C   GLU B 270     -19.449 -42.860  -2.649
+ATOM   2001  O   GLU B 270     -18.978 -43.446  -3.615
+ATOM   2002  CB  GLU B 270     -19.445 -40.396  -2.511
+ATOM   2003  CG  GLU B 270     -19.998 -39.143  -3.132
+ATOM   2004  CD  GLU B 270     -19.322 -37.882  -2.639
+ATOM   2005  OE1 GLU B 270     -18.355 -37.982  -1.858
+ATOM   2006  OE2 GLU B 270     -19.774 -36.791  -3.047
+ATOM   2007  N   MET B 271     -19.262 -43.243  -1.395
+ATOM   2008  CA  MET B 271     -18.395 -44.354  -1.039
+ATOM   2009  C   MET B 271     -18.888 -45.600  -1.736
+ATOM   2010  O   MET B 271     -18.097 -46.352  -2.298
+ATOM   2011  CB  MET B 271     -18.398 -44.553   0.474
+ATOM   2012  CG  MET B 271     -17.195 -45.261   1.044
+ATOM   2013  SD  MET B 271     -17.370 -45.519   2.829
+ATOM   2014  CE  MET B 271     -17.155 -43.857   3.472
+ATOM   2015  N   PHE B 272     -20.199 -45.798  -1.745
+ATOM   2016  CA  PHE B 272     -20.771 -47.049  -2.224
+ATOM   2017  C   PHE B 272     -21.050 -47.090  -3.704
+ATOM   2018  O   PHE B 272     -20.934 -48.145  -4.314
+ATOM   2019  CB  PHE B 272     -22.087 -47.330  -1.507
+ATOM   2020  CG  PHE B 272     -21.923 -47.691  -0.073
+ATOM   2021  CD1 PHE B 272     -22.501 -46.915   0.919
+ATOM   2022  CD2 PHE B 272     -21.204 -48.825   0.284
+ATOM   2023  CE1 PHE B 272     -22.353 -47.246   2.238
+ATOM   2024  CE2 PHE B 272     -21.050 -49.169   1.601
+ATOM   2025  CZ  PHE B 272     -21.622 -48.373   2.587
+ATOM   2026  N   TYR B 273     -21.488 -45.974  -4.270
+ATOM   2027  CA  TYR B 273     -21.870 -45.943  -5.671
+ATOM   2028  C   TYR B 273     -20.825 -45.264  -6.545
+ATOM   2029  O   TYR B 273     -20.935 -45.277  -7.767
+ATOM   2030  CB  TYR B 273     -23.214 -45.257  -5.829
+ATOM   2031  CG  TYR B 273     -24.319 -45.987  -5.122
+ATOM   2032  CD1 TYR B 273     -24.981 -45.410  -4.050
+ATOM   2033  CD2 TYR B 273     -24.693 -47.273  -5.512
+ATOM   2034  CE1 TYR B 273     -25.992 -46.094  -3.381
+ATOM   2035  CE2 TYR B 273     -25.712 -47.966  -4.855
+ATOM   2036  CZ  TYR B 273     -26.355 -47.371  -3.790
+ATOM   2037  OH  TYR B 273     -27.362 -48.028  -3.126
+ATOM   2038  N   GLY B 274     -19.814 -44.669  -5.927
+ATOM   2039  CA  GLY B 274     -18.728 -44.053  -6.672
+ATOM   2040  C   GLY B 274     -19.022 -42.694  -7.277
+ATOM   2041  O   GLY B 274     -18.121 -42.063  -7.821
+ATOM   2042  N   GLN B 275     -20.268 -42.238  -7.195
+ATOM   2043  CA  GLN B 275     -20.650 -40.912  -7.674
+ATOM   2044  C   GLN B 275     -21.444 -40.207  -6.582
+ATOM   2045  O   GLN B 275     -22.138 -40.844  -5.801
+ATOM   2046  CB  GLN B 275     -21.501 -41.018  -8.936
+ATOM   2047  CG  GLN B 275     -21.374 -42.359  -9.678
+ATOM   2048  N   THR B 276     -21.339 -38.891  -6.537
+ATOM   2049  CA  THR B 276     -22.124 -38.088  -5.618
+ATOM   2050  C   THR B 276     -23.590 -38.154  -6.050
+ATOM   2051  O   THR B 276     -23.869 -38.130  -7.234
+ATOM   2052  CB  THR B 276     -21.617 -36.628  -5.630
+ATOM   2053  OG1 THR B 276     -21.924 -35.993  -4.387
+ATOM   2054  CG2 THR B 276     -22.209 -35.852  -6.785
+ATOM   2055  N   PRO B 277     -24.534 -38.221  -5.097
+ATOM   2056  CA  PRO B 277     -25.913 -38.534  -5.463
+ATOM   2057  C   PRO B 277     -26.688 -37.442  -6.175
+ATOM   2058  O   PRO B 277     -27.683 -37.747  -6.812
+ATOM   2059  CB  PRO B 277     -26.592 -38.842  -4.128
+ATOM   2060  CG  PRO B 277     -25.729 -38.272  -3.089
+ATOM   2061  CD  PRO B 277     -24.382 -37.975  -3.656
+ATOM   2062  N   PHE B 278     -26.268 -36.195  -6.061
+ATOM   2063  CA  PHE B 278     -26.990 -35.094  -6.691
+ATOM   2064  C   PHE B 278     -26.111 -34.393  -7.728
+ATOM   2065  O   PHE B 278     -26.233 -33.191  -7.938
+ATOM   2066  CB  PHE B 278     -27.493 -34.115  -5.629
+ATOM   2067  CG  PHE B 278     -28.318 -34.763  -4.565
+ATOM   2068  CD1 PHE B 278     -27.853 -34.849  -3.257
+ATOM   2069  CD2 PHE B 278     -29.558 -35.298  -4.863
+ATOM   2070  CE1 PHE B 278     -28.615 -35.461  -2.255
+ATOM   2071  CE2 PHE B 278     -30.336 -35.901  -3.872
+ATOM   2072  CZ  PHE B 278     -29.868 -35.978  -2.565
+ATOM   2073  N   TYR B 279     -25.235 -35.160  -8.376
+ATOM   2074  CA  TYR B 279     -24.403 -34.654  -9.461
+ATOM   2075  C   TYR B 279     -25.273 -33.989 -10.536
+ATOM   2076  O   TYR B 279     -26.377 -34.459 -10.816
+ATOM   2077  CB  TYR B 279     -23.577 -35.787 -10.086
+ATOM   2078  CG  TYR B 279     -22.719 -35.324 -11.245
+ATOM   2079  CD1 TYR B 279     -21.438 -34.783 -11.028
+ATOM   2080  CD2 TYR B 279     -23.194 -35.397 -12.558
+ATOM   2081  CE1 TYR B 279     -20.653 -34.331 -12.093
+ATOM   2082  CE2 TYR B 279     -22.419 -34.950 -13.635
+ATOM   2083  CZ  TYR B 279     -21.151 -34.417 -13.399
+ATOM   2084  OH  TYR B 279     -20.403 -33.982 -14.483
+ATOM   2085  N   ALA B 280     -24.761 -32.892 -11.109
+ATOM   2086  CA  ALA B 280     -25.379 -32.188 -12.243
+ATOM   2087  C   ALA B 280     -24.322 -31.331 -12.946
+ATOM   2088  O   ALA B 280     -23.205 -31.203 -12.460
+ATOM   2089  CB  ALA B 280     -26.518 -31.330 -11.772
+ATOM   2090  N   ASP B 281     -24.661 -30.753 -14.096
+ATOM   2091  CA  ASP B 281     -23.701 -29.918 -14.843
+ATOM   2092  C   ASP B 281     -23.319 -28.684 -14.027
+ATOM   2093  O   ASP B 281     -22.139 -28.430 -13.786
+ATOM   2094  CB  ASP B 281     -24.280 -29.492 -16.189
+ATOM   2095  N   SER B 282     -24.341 -27.954 -13.576
+ATOM   2096  CA  SER B 282     -24.202 -26.738 -12.774
+ATOM   2097  C   SER B 282     -24.401 -26.999 -11.283
+ATOM   2098  O   SER B 282     -25.058 -27.970 -10.887
+ATOM   2099  CB  SER B 282     -25.267 -25.745 -13.216
+ATOM   2100  OG  SER B 282     -26.554 -26.358 -13.205
+ATOM   2101  N   THR B 283     -23.845 -26.106 -10.467
+ATOM   2102  CA  THR B 283     -24.120 -26.068  -9.038
+ATOM   2103  C   THR B 283     -25.589 -25.801  -8.782
+ATOM   2104  O   THR B 283     -26.164 -26.364  -7.865
+ATOM   2105  CB  THR B 283     -23.327 -24.960  -8.365
+ATOM   2106  OG1 THR B 283     -21.953 -25.137  -8.676
+ATOM   2107  CG2 THR B 283     -23.484 -24.989  -6.875
+ATOM   2108  N   ALA B 284     -26.190 -24.940  -9.592
+ATOM   2109  CA  ALA B 284     -27.570 -24.569  -9.400
+ATOM   2110  C   ALA B 284     -28.468 -25.753  -9.664
+ATOM   2111  O   ALA B 284     -29.368 -26.021  -8.870
+ATOM   2112  CB  ALA B 284     -27.939 -23.421 -10.273
+ATOM   2113  N   GLU B 285     -28.233 -26.483 -10.753
+ATOM   2114  CA  GLU B 285     -29.065 -27.660 -11.039
+ATOM   2115  C   GLU B 285     -28.928 -28.664  -9.876
+ATOM   2116  O   GLU B 285     -29.896 -29.335  -9.515
+ATOM   2117  CB  GLU B 285     -28.739 -28.293 -12.405
+ATOM   2118  N   THR B 286     -27.742 -28.726  -9.262
+ATOM   2119  CA  THR B 286     -27.521 -29.638  -8.133
+ATOM   2120  C   THR B 286     -28.358 -29.248  -6.922
+ATOM   2121  O   THR B 286     -29.056 -30.096  -6.351
+ATOM   2122  CB  THR B 286     -26.048 -29.738  -7.737
+ATOM   2123  OG1 THR B 286     -25.349 -30.470  -8.746
+ATOM   2124  CG2 THR B 286     -25.887 -30.453  -6.419
+ATOM   2125  N   TYR B 287     -28.296 -27.972  -6.548
+ATOM   2126  CA  TYR B 287     -29.136 -27.454  -5.478
+ATOM   2127  C   TYR B 287     -30.602 -27.822  -5.743
+ATOM   2128  O   TYR B 287     -31.328 -28.252  -4.823
+ATOM   2129  CB  TYR B 287     -29.004 -25.938  -5.359
+ATOM   2130  CG  TYR B 287     -27.668 -25.408  -4.882
+ATOM   2131  CD1 TYR B 287     -26.728 -26.223  -4.270
+ATOM   2132  CD2 TYR B 287     -27.372 -24.065  -5.003
+ATOM   2133  CE1 TYR B 287     -25.510 -25.714  -3.826
+ATOM   2134  CE2 TYR B 287     -26.163 -23.541  -4.558
+ATOM   2135  CZ  TYR B 287     -25.228 -24.368  -3.971
+ATOM   2136  OH  TYR B 287     -24.021 -23.847  -3.538
+ATOM   2137  N   GLY B 288     -31.021 -27.676  -7.002
+ATOM   2138  CA  GLY B 288     -32.354 -28.067  -7.412
+ATOM   2139  C   GLY B 288     -32.618 -29.530  -7.136
+ATOM   2140  O   GLY B 288     -33.660 -29.885  -6.591
+ATOM   2141  N   LYS B 289     -31.671 -30.381  -7.511
+ATOM   2142  CA  LYS B 289     -31.819 -31.827  -7.312
+ATOM   2143  C   LYS B 289     -31.874 -32.175  -5.802
+ATOM   2144  O   LYS B 289     -32.609 -33.075  -5.392
+ATOM   2145  CB  LYS B 289     -30.697 -32.607  -8.043
+ATOM   2146  CG  LYS B 289     -30.826 -32.654  -9.596
+ATOM   2147  CD  LYS B 289     -29.771 -33.543 -10.303
+ATOM   2148  N   ILE B 290     -31.127 -31.441  -4.981
+ATOM   2149  CA  ILE B 290     -31.148 -31.645  -3.531
+ATOM   2150  C   ILE B 290     -32.534 -31.307  -2.958
+ATOM   2151  O   ILE B 290     -33.175 -32.126  -2.313
+ATOM   2152  CB  ILE B 290     -30.046 -30.796  -2.830
+ATOM   2153  CG1 ILE B 290     -28.652 -31.344  -3.171
+ATOM   2154  CG2 ILE B 290     -30.244 -30.762  -1.319
+ATOM   2155  CD1 ILE B 290     -27.524 -30.427  -2.783
+ATOM   2156  N   VAL B 291     -33.005 -30.097  -3.201
+ATOM   2157  CA  VAL B 291     -34.323 -29.690  -2.708
+ATOM   2158  C   VAL B 291     -35.413 -30.667  -3.157
+ATOM   2159  O   VAL B 291     -36.352 -30.905  -2.420
+ATOM   2160  CB  VAL B 291     -34.655 -28.253  -3.155
+ATOM   2161  CG1 VAL B 291     -36.116 -27.937  -2.930
+ATOM   2162  CG2 VAL B 291     -33.745 -27.255  -2.423
+ATOM   2163  N   HIS B 292     -35.268 -31.255  -4.347
+ATOM   2164  CA  HIS B 292     -36.191 -32.299  -4.829
+ATOM   2165  C   HIS B 292     -35.617 -33.726  -4.752
+ATOM   2166  O   HIS B 292     -35.884 -34.549  -5.622
+ATOM   2167  CB  HIS B 292     -36.622 -32.009  -6.266
+ATOM   2168  CG  HIS B 292     -37.377 -30.730  -6.420
+ATOM   2169  ND1 HIS B 292     -36.774 -29.494  -6.316
+ATOM   2170  CD2 HIS B 292     -38.684 -30.493  -6.678
+ATOM   2171  CE1 HIS B 292     -37.680 -28.550  -6.503
+ATOM   2172  NE2 HIS B 292     -38.845 -29.129  -6.725
+ATOM   2173  N   TYR B 293     -34.864 -34.022  -3.700
+ATOM   2174  CA  TYR B 293     -34.318 -35.362  -3.495
+ATOM   2175  C   TYR B 293     -35.361 -36.492  -3.571
+ATOM   2176  O   TYR B 293     -35.016 -37.586  -3.987
+ATOM   2177  CB  TYR B 293     -33.522 -35.457  -2.171
+ATOM   2178  CG  TYR B 293     -34.374 -35.356  -0.934
+ATOM   2179  CD1 TYR B 293     -34.651 -34.121  -0.358
+ATOM   2180  CD2 TYR B 293     -34.915 -36.489  -0.340
+ATOM   2181  CE1 TYR B 293     -35.447 -34.011   0.774
+ATOM   2182  CE2 TYR B 293     -35.719 -36.393   0.797
+ATOM   2183  CZ  TYR B 293     -35.975 -35.145   1.344
+ATOM   2184  OH  TYR B 293     -36.764 -35.014   2.462
+ATOM   2185  N   LYS B 294     -36.610 -36.262  -3.173
+ATOM   2186  CA  LYS B 294     -37.634 -37.327  -3.305
+ATOM   2187  C   LYS B 294     -37.851 -37.773  -4.772
+ATOM   2188  O   LYS B 294     -37.957 -38.973  -5.049
+ATOM   2189  CB  LYS B 294     -38.968 -36.932  -2.643
+ATOM   2190  CG  LYS B 294     -38.951 -37.057  -1.097
+ATOM   2191  CD  LYS B 294     -39.676 -35.899  -0.362
+ATOM   2192  N   GLU B 295     -37.895 -36.832  -5.712
+ATOM   2193  CA  GLU B 295     -37.941 -37.210  -7.129
+ATOM   2194  C   GLU B 295     -36.560 -37.691  -7.581
+ATOM   2195  O   GLU B 295     -36.414 -38.796  -8.084
+ATOM   2196  CB  GLU B 295     -38.442 -36.057  -8.017
+ATOM   2197  N   HIS B 296     -35.538 -36.881  -7.351
+ATOM   2198  CA  HIS B 296     -34.234 -37.089  -7.998
+ATOM   2199  C   HIS B 296     -33.294 -38.139  -7.403
+ATOM   2200  O   HIS B 296     -32.376 -38.572  -8.088
+ATOM   2201  CB  HIS B 296     -33.496 -35.746  -8.149
+ATOM   2202  CG  HIS B 296     -34.001 -34.921  -9.296
+ATOM   2203  ND1 HIS B 296     -33.389 -34.909 -10.536
+ATOM   2204  CD2 HIS B 296     -35.087 -34.116  -9.405
+ATOM   2205  CE1 HIS B 296     -34.059 -34.111 -11.348
+ATOM   2206  NE2 HIS B 296     -35.095 -33.617 -10.687
+ATOM   2207  N   LEU B 297     -33.507 -38.562  -6.163
+ATOM   2208  CA  LEU B 297     -32.622 -39.557  -5.549
+ATOM   2209  C   LEU B 297     -32.975 -40.969  -6.031
+ATOM   2210  O   LEU B 297     -34.073 -41.452  -5.778
+ATOM   2211  CB  LEU B 297     -32.699 -39.491  -4.022
+ATOM   2212  CG  LEU B 297     -31.828 -40.494  -3.263
+ATOM   2213  CD1 LEU B 297     -30.358 -40.186  -3.493
+ATOM   2214  CD2 LEU B 297     -32.151 -40.510  -1.767
+ATOM   2215  N   SER B 298     -32.028 -41.616  -6.713
+ATOM   2216  CA  SER B 298     -32.171 -43.003  -7.185
+ATOM   2217  C   SER B 298     -30.995 -43.848  -6.703
+ATOM   2218  O   SER B 298     -29.869 -43.358  -6.601
+ATOM   2219  CB  SER B 298     -32.244 -43.052  -8.717
+ATOM   2220  N   LEU B 299     -31.269 -45.114  -6.401
+ATOM   2221  CA  LEU B 299     -30.254 -46.054  -5.939
+ATOM   2222  C   LEU B 299     -30.450 -47.398  -6.654
+ATOM   2223  O   LEU B 299     -31.557 -47.925  -6.665
+ATOM   2224  CB  LEU B 299     -30.360 -46.265  -4.416
+ATOM   2225  CG  LEU B 299     -30.520 -45.038  -3.503
+ATOM   2226  CD1 LEU B 299     -31.988 -44.608  -3.414
+ATOM   2227  CD2 LEU B 299     -29.959 -45.317  -2.116
+ATOM   2228  N   PRO B 300     -29.385 -47.957  -7.260
+ATOM   2229  CA  PRO B 300     -29.510 -49.284  -7.889
+ATOM   2230  C   PRO B 300     -29.495 -50.449  -6.888
+ATOM   2231  O   PRO B 300     -30.192 -51.451  -7.090
+ATOM   2232  CB  PRO B 300     -28.293 -49.350  -8.820
+ATOM   2233  CG  PRO B 300     -27.276 -48.456  -8.183
+ATOM   2234  CD  PRO B 300     -28.033 -47.384  -7.426
+ATOM   2235  N   GLY B 305     -23.947 -55.064  -5.914
+ATOM   2236  CA  GLY B 305     -22.684 -54.983  -5.174
+ATOM   2237  C   GLY B 305     -22.757 -54.117  -3.917
+ATOM   2238  O   GLY B 305     -21.792 -54.030  -3.145
+ATOM   2239  N   VAL B 306     -23.896 -53.451  -3.725
+ATOM   2240  CA  VAL B 306     -24.178 -52.714  -2.500
+ATOM   2241  C   VAL B 306     -25.325 -53.454  -1.822
+ATOM   2242  O   VAL B 306     -26.442 -53.466  -2.337
+ATOM   2243  CB  VAL B 306     -24.576 -51.255  -2.807
+ATOM   2244  CG1 VAL B 306     -25.015 -50.509  -1.535
+ATOM   2245  CG2 VAL B 306     -23.420 -50.531  -3.498
+ATOM   2246  N   PRO B 307     -25.051 -54.088  -0.670
+ATOM   2247  CA  PRO B 307     -26.079 -54.919  -0.023
+ATOM   2248  C   PRO B 307     -27.226 -54.094   0.578
+ATOM   2249  O   PRO B 307     -27.091 -52.876   0.770
+ATOM   2250  CB  PRO B 307     -25.295 -55.640   1.081
+ATOM   2251  CG  PRO B 307     -24.159 -54.707   1.407
+ATOM   2252  CD  PRO B 307     -23.794 -54.049   0.107
+ATOM   2253  N   GLU B 308     -28.329 -54.763   0.901
+ATOM   2254  CA  GLU B 308     -29.543 -54.085   1.345
+ATOM   2255  C   GLU B 308     -29.322 -53.201   2.573
+ATOM   2256  O   GLU B 308     -29.953 -52.147   2.685
+ATOM   2257  CB  GLU B 308     -30.680 -55.090   1.596
+ATOM   2258  CG  GLU B 308     -32.066 -54.452   1.869
+ATOM   2259  CD  GLU B 308     -32.555 -53.528   0.743
+ATOM   2260  OE1 GLU B 308     -32.764 -54.024  -0.389
+ATOM   2261  OE2 GLU B 308     -32.743 -52.310   0.987
+ATOM   2262  N   GLU B 309     -28.427 -53.609   3.474
+ATOM   2263  CA  GLU B 309     -28.188 -52.842   4.715
+ATOM   2264  C   GLU B 309     -27.583 -51.482   4.404
+ATOM   2265  O   GLU B 309     -27.941 -50.491   5.013
+ATOM   2266  CB  GLU B 309     -27.254 -53.565   5.697
+ATOM   2267  CG  GLU B 309     -27.417 -55.077   5.773
+ATOM   2268  CD  GLU B 309     -26.571 -55.814   4.739
+ATOM   2269  OE1 GLU B 309     -25.348 -55.544   4.637
+ATOM   2270  OE2 GLU B 309     -27.142 -56.663   4.024
+ATOM   2271  N   ALA B 310     -26.646 -51.461   3.463
+ATOM   2272  CA  ALA B 310     -26.002 -50.233   3.026
+ATOM   2273  C   ALA B 310     -27.037 -49.350   2.357
+ATOM   2274  O   ALA B 310     -27.238 -48.192   2.735
+ATOM   2275  CB  ALA B 310     -24.873 -50.550   2.061
+ATOM   2276  N   ARG B 311     -27.706 -49.915   1.366
+ATOM   2277  CA  ARG B 311     -28.775 -49.213   0.675
+ATOM   2278  C   ARG B 311     -29.753 -48.542   1.681
+ATOM   2279  O   ARG B 311     -30.092 -47.357   1.557
+ATOM   2280  CB  ARG B 311     -29.500 -50.194  -0.239
+ATOM   2281  CG  ARG B 311     -30.317 -49.548  -1.306
+ATOM   2282  CD  ARG B 311     -31.360 -50.510  -1.853
+ATOM   2283  NE  ARG B 311     -32.471 -49.782  -2.471
+ATOM   2284  CZ  ARG B 311     -32.532 -49.431  -3.752
+ATOM   2285  NH1 ARG B 311     -31.552 -49.747  -4.595
+ATOM   2286  NH2 ARG B 311     -33.594 -48.763  -4.196
+ATOM   2287  N   ASP B 312     -30.170 -49.305   2.686
+ATOM   2288  CA  ASP B 312     -31.103 -48.832   3.699
+ATOM   2289  C   ASP B 312     -30.490 -47.702   4.521
+ATOM   2290  O   ASP B 312     -31.138 -46.699   4.828
+ATOM   2291  CB  ASP B 312     -31.480 -49.995   4.620
+ATOM   2292  CG  ASP B 312     -32.562 -49.628   5.613
+ATOM   2293  OD1 ASP B 312     -33.743 -49.554   5.204
+ATOM   2294  OD2 ASP B 312     -32.222 -49.415   6.798
+ATOM   2295  N   PHE B 313     -29.237 -47.886   4.892
+ATOM   2296  CA  PHE B 313     -28.492 -46.888   5.645
+ATOM   2297  C   PHE B 313     -28.523 -45.509   4.965
+ATOM   2298  O   PHE B 313     -28.689 -44.475   5.621
+ATOM   2299  CB  PHE B 313     -27.060 -47.372   5.779
+ATOM   2300  CG  PHE B 313     -26.180 -46.458   6.522
+ATOM   2301  CD1 PHE B 313     -26.301 -46.338   7.890
+ATOM   2302  CD2 PHE B 313     -25.198 -45.735   5.861
+ATOM   2303  CE1 PHE B 313     -25.465 -45.500   8.596
+ATOM   2304  CE2 PHE B 313     -24.353 -44.889   6.555
+ATOM   2305  CZ  PHE B 313     -24.486 -44.768   7.929
+ATOM   2306  N   ILE B 314     -28.362 -45.507   3.650
+ATOM   2307  CA  ILE B 314     -28.400 -44.279   2.883
+ATOM   2308  C   ILE B 314     -29.833 -43.758   2.800
+ATOM   2309  O   ILE B 314     -30.081 -42.572   2.970
+ATOM   2310  CB  ILE B 314     -27.788 -44.495   1.482
+ATOM   2311  CG1 ILE B 314     -26.269 -44.630   1.608
+ATOM   2312  CG2 ILE B 314     -28.150 -43.346   0.543
+ATOM   2313  CD1 ILE B 314     -25.665 -45.619   0.628
+ATOM   2314  N   GLN B 315     -30.786 -44.654   2.572
+ATOM   2315  CA  GLN B 315     -32.194 -44.252   2.517
+ATOM   2316  C   GLN B 315     -32.634 -43.705   3.875
+ATOM   2317  O   GLN B 315     -33.688 -43.080   3.979
+ATOM   2318  CB  GLN B 315     -33.101 -45.412   2.056
+ATOM   2319  N   ARG B 316     -31.826 -43.933   4.909
+ATOM   2320  CA  ARG B 316     -32.119 -43.459   6.262
+ATOM   2321  C   ARG B 316     -31.348 -42.213   6.681
+ATOM   2322  O   ARG B 316     -31.367 -41.837   7.865
+ATOM   2323  CB  ARG B 316     -31.848 -44.583   7.248
+ATOM   2324  CG  ARG B 316     -32.949 -45.593   7.250
+ATOM   2325  CD  ARG B 316     -34.207 -45.047   7.929
+ATOM   2326  NE  ARG B 316     -34.362 -45.654   9.246
+ATOM   2327  CZ  ARG B 316     -34.215 -45.044  10.419
+ATOM   2328  NH1 ARG B 316     -34.392 -45.744  11.538
+ATOM   2329  NH2 ARG B 316     -33.910 -43.760  10.497
+ATOM   2330  N   LEU B 317     -30.675 -41.582   5.717
+ATOM   2331  CA  LEU B 317     -29.940 -40.347   5.954
+ATOM   2332  C   LEU B 317     -30.437 -39.288   4.986
+ATOM   2333  O   LEU B 317     -30.800 -38.184   5.384
+ATOM   2334  CB  LEU B 317     -28.443 -40.577   5.765
+ATOM   2335  CG  LEU B 317     -27.724 -41.345   6.875
+ATOM   2336  CD1 LEU B 317     -26.293 -41.653   6.453
+ATOM   2337  CD2 LEU B 317     -27.738 -40.600   8.222
+ATOM   2338  N   LEU B 318     -30.441 -39.646   3.705
+ATOM   2339  CA  LEU B 318     -30.987 -38.815   2.647
+ATOM   2340  C   LEU B 318     -32.512 -38.944   2.630
+ATOM   2341  O   LEU B 318     -33.086 -39.568   1.747
+ATOM   2342  CB  LEU B 318     -30.408 -39.247   1.301
+ATOM   2343  CG  LEU B 318     -28.887 -39.267   1.197
+ATOM   2344  CD1 LEU B 318     -28.468 -39.480  -0.261
+ATOM   2345  CD2 LEU B 318     -28.306 -37.979   1.732
+ATOM   2346  N   CYS B 319     -33.157 -38.322   3.606
+ATOM   2347  CA  CYS B 319     -34.571 -38.497   3.840
+ATOM   2348  C   CYS B 319     -35.011 -37.345   4.735
+ATOM   2349  O   CYS B 319     -34.165 -36.605   5.261
+ATOM   2350  CB  CYS B 319     -34.802 -39.825   4.559
+ATOM   2351  SG  CYS B 319     -34.053 -39.916   6.232
+ATOM   2352  N   PRO B 320     -36.330 -37.158   4.905
+ATOM   2353  CA  PRO B 320     -36.751 -36.087   5.793
+ATOM   2354  C   PRO B 320     -36.250 -36.243   7.239
+ATOM   2355  O   PRO B 320     -36.155 -37.366   7.733
+ATOM   2356  CB  PRO B 320     -38.273 -36.167   5.735
+ATOM   2357  CG  PRO B 320     -38.567 -37.507   5.172
+ATOM   2358  CD  PRO B 320     -37.473 -37.808   4.254
+ATOM   2359  N   PRO B 321     -35.952 -35.117   7.914
+ATOM   2360  CA  PRO B 321     -35.337 -35.060   9.243
+ATOM   2361  C   PRO B 321     -35.981 -35.932  10.319
+ATOM   2362  O   PRO B 321     -35.277 -36.509  11.141
+ATOM   2363  CB  PRO B 321     -35.495 -33.592   9.630
+ATOM   2364  CG  PRO B 321     -35.524 -32.873   8.350
+ATOM   2365  CD  PRO B 321     -36.210 -33.766   7.381
+ATOM   2366  N   GLU B 322     -37.305 -36.001  10.315
+ATOM   2367  CA  GLU B 322     -38.071 -36.834  11.257
+ATOM   2368  C   GLU B 322     -37.646 -38.293  11.170
+ATOM   2369  O   GLU B 322     -37.414 -38.926  12.189
+ATOM   2370  CB  GLU B 322     -39.577 -36.752  10.968
+ATOM   2371  CG  GLU B 322     -40.097 -35.356  10.591
+ATOM   2372  CD  GLU B 322     -40.019 -35.065   9.088
+ATOM   2373  OE1 GLU B 322     -40.641 -35.818   8.295
+ATOM   2374  OE2 GLU B 322     -39.333 -34.083   8.709
+ATOM   2375  N   THR B 323     -37.572 -38.809   9.943
+ATOM   2376  CA  THR B 323     -37.074 -40.161   9.634
+ATOM   2377  C   THR B 323     -35.546 -40.329   9.762
+ATOM   2378  O   THR B 323     -35.053 -41.458   9.718
+ATOM   2379  CB  THR B 323     -37.423 -40.540   8.149
+ATOM   2380  OG1 THR B 323     -38.811 -40.856   8.038
+ATOM   2381  CG2 THR B 323     -36.576 -41.732   7.620
+ATOM   2382  N   ARG B 324     -34.798 -39.234   9.894
+ATOM   2383  CA  ARG B 324     -33.354 -39.263   9.636
+ATOM   2384  C   ARG B 324     -32.519 -39.746  10.811
+ATOM   2385  O   ARG B 324     -32.688 -39.266  11.929
+ATOM   2386  CB  ARG B 324     -32.870 -37.871   9.249
+ATOM   2387  CG  ARG B 324     -31.476 -37.861   8.629
+ATOM   2388  CD  ARG B 324     -31.051 -36.473   8.234
+ATOM   2389  NE  ARG B 324     -31.973 -35.881   7.262
+ATOM   2390  CZ  ARG B 324     -31.957 -34.601   6.900
+ATOM   2391  NH1 ARG B 324     -31.064 -33.773   7.414
+ATOM   2392  NH2 ARG B 324     -32.825 -34.144   6.015
+ATOM   2393  N   LEU B 325     -31.586 -40.662  10.550
+ATOM   2394  CA  LEU B 325     -30.694 -41.148  11.597
+ATOM   2395  C   LEU B 325     -29.968 -39.989  12.229
+ATOM   2396  O   LEU B 325     -29.611 -39.033  11.557
+ATOM   2397  CB  LEU B 325     -29.667 -42.125  11.046
+ATOM   2398  CG  LEU B 325     -30.157 -43.498  10.617
+ATOM   2399  CD1 LEU B 325     -29.022 -44.246   9.878
+ATOM   2400  CD2 LEU B 325     -30.651 -44.270  11.819
+ATOM   2401  N   GLY B 326     -29.762 -40.069  13.535
+ATOM   2402  CA  GLY B 326     -29.034 -39.023  14.254
+ATOM   2403  C   GLY B 326     -29.950 -37.978  14.852
+ATOM   2404  O   GLY B 326     -29.482 -36.946  15.363
+ATOM   2405  N   ARG B 327     -31.256 -38.224  14.789
+ATOM   2406  CA  ARG B 327     -32.184 -37.409  15.550
+ATOM   2407  C   ARG B 327     -31.762 -37.528  17.029
+ATOM   2408  O   ARG B 327     -31.709 -36.526  17.737
+ATOM   2409  CB  ARG B 327     -33.631 -37.864  15.331
+ATOM   2410  CG  ARG B 327     -34.673 -36.812  15.669
+ATOM   2411  N   GLY B 328     -31.416 -38.742  17.472
+ATOM   2412  CA  GLY B 328     -30.876 -38.974  18.820
+ATOM   2413  C   GLY B 328     -29.367 -39.180  18.876
+ATOM   2414  O   GLY B 328     -28.864 -39.884  19.748
+ATOM   2415  N   GLY B 329     -28.632 -38.585  17.941
+ATOM   2416  CA  GLY B 329     -27.166 -38.666  17.958
+ATOM   2417  C   GLY B 329     -26.593 -40.027  17.599
+ATOM   2418  O   GLY B 329     -27.315 -40.916  17.127
+ATOM   2419  N   ALA B 330     -25.285 -40.186  17.828
+ATOM   2420  CA  ALA B 330     -24.579 -41.447  17.540
+ATOM   2421  C   ALA B 330     -25.392 -42.708  17.932
+ATOM   2422  O   ALA B 330     -25.356 -43.724  17.230
+ATOM   2423  CB  ALA B 330     -23.190 -41.460  18.206
+ATOM   2424  N   GLY B 331     -26.143 -42.632  19.027
+ATOM   2425  CA  GLY B 331     -26.992 -43.751  19.438
+ATOM   2426  C   GLY B 331     -27.779 -44.436  18.333
+ATOM   2427  O   GLY B 331     -27.800 -45.662  18.251
+ATOM   2428  N   ASP B 332     -28.426 -43.642  17.485
+ATOM   2429  CA  ASP B 332     -29.243 -44.180  16.389
+ATOM   2430  C   ASP B 332     -28.453 -45.163  15.547
+ATOM   2431  O   ASP B 332     -28.966 -46.209  15.176
+ATOM   2432  CB  ASP B 332     -29.729 -43.071  15.449
+ATOM   2433  CG  ASP B 332     -30.635 -42.067  16.123
+ATOM   2434  OD1 ASP B 332     -30.197 -41.412  17.088
+ATOM   2435  OD2 ASP B 332     -31.779 -41.915  15.656
+ATOM   2436  N   PHE B 333     -27.203 -44.825  15.248
+ATOM   2437  CA  PHE B 333     -26.403 -45.622  14.320
+ATOM   2438  C   PHE B 333     -26.037 -47.006  14.847
+ATOM   2439  O   PHE B 333     -26.030 -47.969  14.080
+ATOM   2440  CB  PHE B 333     -25.150 -44.849  13.895
+ATOM   2441  CG  PHE B 333     -25.463 -43.562  13.205
+ATOM   2442  CD1 PHE B 333     -25.561 -42.382  13.920
+ATOM   2443  CD2 PHE B 333     -25.717 -43.539  11.846
+ATOM   2444  CE1 PHE B 333     -25.874 -41.186  13.286
+ATOM   2445  CE2 PHE B 333     -26.040 -42.358  11.207
+ATOM   2446  CZ  PHE B 333     -26.110 -41.169  11.940
+ATOM   2447  N   ARG B 334     -25.751 -47.116  16.142
+ATOM   2448  CA  ARG B 334     -25.501 -48.425  16.761
+ATOM   2449  C   ARG B 334     -26.585 -49.418  16.353
+ATOM   2450  O   ARG B 334     -26.294 -50.533  15.911
+ATOM   2451  CB  ARG B 334     -25.497 -48.335  18.292
+ATOM   2452  CG  ARG B 334     -24.501 -47.350  18.865
+ATOM   2453  CD  ARG B 334     -24.151 -47.680  20.311
+ATOM   2454  NE  ARG B 334     -23.114 -46.774  20.796
+ATOM   2455  CZ  ARG B 334     -22.247 -47.037  21.776
+ATOM   2456  NH1 ARG B 334     -22.255 -48.207  22.419
+ATOM   2457  NH2 ARG B 334     -21.347 -46.111  22.114
+ATOM   2458  N   THR B 335     -27.834 -48.974  16.476
+ATOM   2459  CA  THR B 335     -28.986 -49.813  16.213
+ATOM   2460  C   THR B 335     -29.265 -50.084  14.730
+ATOM   2461  O   THR B 335     -30.240 -50.760  14.412
+ATOM   2462  CB  THR B 335     -30.280 -49.201  16.812
+ATOM   2463  OG1 THR B 335     -30.738 -48.137  15.972
+ATOM   2464  CG2 THR B 335     -30.063 -48.691  18.234
+ATOM   2465  N   HIS B 336     -28.469 -49.574  13.806
+ATOM   2466  CA  HIS B 336     -28.783 -49.835  12.393
+ATOM   2467  C   HIS B 336     -28.150 -51.161  11.961
+ATOM   2468  O   HIS B 336     -27.030 -51.475  12.396
+ATOM   2469  CB  HIS B 336     -28.332 -48.693  11.479
+ATOM   2470  CG  HIS B 336     -28.906 -48.781  10.104
+ATOM   2471  ND1 HIS B 336     -28.429 -49.659   9.156
+ATOM   2472  CD2 HIS B 336     -29.934 -48.123   9.519
+ATOM   2473  CE1 HIS B 336     -29.131 -49.534   8.043
+ATOM   2474  NE2 HIS B 336     -30.052 -48.607   8.236
+ATOM   2475  N   PRO B 337     -28.874 -51.957  11.140
+ATOM   2476  CA  PRO B 337     -28.369 -53.190  10.534
+ATOM   2477  C   PRO B 337     -26.966 -53.083   9.964
+ATOM   2478  O   PRO B 337     -26.156 -53.982  10.152
+ATOM   2479  CB  PRO B 337     -29.361 -53.443   9.398
+ATOM   2480  CG  PRO B 337     -30.645 -52.920   9.912
+ATOM   2481  CD  PRO B 337     -30.292 -51.739  10.791
+ATOM   2482  N   PHE B 338     -26.685 -51.980   9.282
+ATOM   2483  CA  PHE B 338     -25.416 -51.793   8.585
+ATOM   2484  C   PHE B 338     -24.233 -51.927   9.525
+ATOM   2485  O   PHE B 338     -23.172 -52.399   9.129
+ATOM   2486  CB  PHE B 338     -25.382 -50.431   7.883
+ATOM   2487  CG  PHE B 338     -24.083 -50.154   7.193
+ATOM   2488  CD1 PHE B 338     -23.777 -50.778   5.998
+ATOM   2489  CD2 PHE B 338     -23.154 -49.292   7.755
+ATOM   2490  CE1 PHE B 338     -22.573 -50.542   5.365
+ATOM   2491  CE2 PHE B 338     -21.943 -49.053   7.128
+ATOM   2492  CZ  PHE B 338     -21.651 -49.682   5.930
+ATOM   2493  N   PHE B 339     -24.415 -51.516  10.771
+ATOM   2494  CA  PHE B 339     -23.354 -51.616  11.752
+ATOM   2495  C   PHE B 339     -23.538 -52.811  12.669
+ATOM   2496  O   PHE B 339     -23.010 -52.818  13.778
+ATOM   2497  CB  PHE B 339     -23.301 -50.351  12.603
+ATOM   2498  CG  PHE B 339     -22.863 -49.131  11.861
+ATOM   2499  CD1 PHE B 339     -23.739 -48.076  11.659
+ATOM   2500  CD2 PHE B 339     -21.567 -49.023  11.385
+ATOM   2501  CE1 PHE B 339     -23.341 -46.938  10.989
+ATOM   2502  CE2 PHE B 339     -21.157 -47.875  10.715
+ATOM   2503  CZ  PHE B 339     -22.051 -46.830  10.520
+ATOM   2504  N   PHE B 340     -24.270 -53.829  12.239
+ATOM   2505  CA  PHE B 340     -24.499 -54.942  13.141
+ATOM   2506  C   PHE B 340     -23.175 -55.569  13.551
+ATOM   2507  O   PHE B 340     -22.267 -55.716  12.734
+ATOM   2508  CB  PHE B 340     -25.402 -56.016  12.551
+ATOM   2509  CG  PHE B 340     -25.646 -57.134  13.503
+ATOM   2510  CD1 PHE B 340     -26.449 -56.938  14.622
+ATOM   2511  CD2 PHE B 340     -25.000 -58.348  13.350
+ATOM   2512  CE1 PHE B 340     -26.642 -57.950  15.547
+ATOM   2513  CE2 PHE B 340     -25.187 -59.359  14.268
+ATOM   2514  CZ  PHE B 340     -26.017 -59.158  15.368
+ATOM   2515  N   GLY B 341     -23.073 -55.919  14.828
+ATOM   2516  CA  GLY B 341     -21.925 -56.674  15.335
+ATOM   2517  C   GLY B 341     -20.652 -55.871  15.512
+ATOM   2518  O   GLY B 341     -19.588 -56.435  15.730
+ATOM   2519  N   LEU B 342     -20.765 -54.557  15.427
+ATOM   2520  CA  LEU B 342     -19.617 -53.689  15.502
+ATOM   2521  C   LEU B 342     -19.405 -53.306  16.953
+ATOM   2522  O   LEU B 342     -20.336 -52.851  17.627
+ATOM   2523  CB  LEU B 342     -19.859 -52.436  14.664
+ATOM   2524  CG  LEU B 342     -18.689 -51.476  14.503
+ATOM   2525  CD1 LEU B 342     -17.552 -52.171  13.781
+ATOM   2526  CD2 LEU B 342     -19.158 -50.294  13.737
+ATOM   2527  N   ASP B 343     -18.180 -53.479  17.430
+ATOM   2528  CA  ASP B 343     -17.874 -53.181  18.806
+ATOM   2529  C   ASP B 343     -17.571 -51.691  18.878
+ATOM   2530  O   ASP B 343     -16.429 -51.278  18.670
+ATOM   2531  CB  ASP B 343     -16.699 -54.050  19.282
+ATOM   2532  CG  ASP B 343     -16.111 -53.584  20.616
+ATOM   2533  OD1 ASP B 343     -16.848 -52.977  21.434
+ATOM   2534  OD2 ASP B 343     -14.896 -53.818  20.836
+ATOM   2535  N   TRP B 344     -18.600 -50.890  19.162
+ATOM   2536  CA  TRP B 344     -18.457 -49.425  19.197
+ATOM   2537  C   TRP B 344     -17.481 -48.967  20.265
+ATOM   2538  O   TRP B 344     -16.629 -48.122  20.002
+ATOM   2539  CB  TRP B 344     -19.810 -48.722  19.394
+ATOM   2540  CG  TRP B 344     -20.670 -48.807  18.194
+ATOM   2541  CD1 TRP B 344     -21.485 -49.837  17.858
+ATOM   2542  CD2 TRP B 344     -20.792 -47.838  17.140
+ATOM   2543  NE1 TRP B 344     -22.116 -49.578  16.664
+ATOM   2544  CE2 TRP B 344     -21.705 -48.359  16.199
+ATOM   2545  CE3 TRP B 344     -20.215 -46.593  16.895
+ATOM   2546  CZ2 TRP B 344     -22.057 -47.674  15.030
+ATOM   2547  CZ3 TRP B 344     -20.562 -45.916  15.729
+ATOM   2548  CH2 TRP B 344     -21.476 -46.457  14.817
+ATOM   2549  N   ASP B 345     -17.590 -49.530  21.462
+ATOM   2550  CA  ASP B 345     -16.731 -49.105  22.569
+ATOM   2551  C   ASP B 345     -15.249 -49.369  22.278
+ATOM   2552  O   ASP B 345     -14.403 -48.615  22.728
+ATOM   2553  CB  ASP B 345     -17.144 -49.764  23.895
+ATOM   2554  CG  ASP B 345     -18.586 -49.426  24.309
+ATOM   2555  OD1 ASP B 345     -19.023 -48.262  24.138
+ATOM   2556  OD2 ASP B 345     -19.283 -50.339  24.806
+ATOM   2557  N   GLY B 346     -14.940 -50.407  21.504
+ATOM   2558  CA  GLY B 346     -13.551 -50.727  21.176
+ATOM   2559  C   GLY B 346     -13.067 -50.261  19.812
+ATOM   2560  O   GLY B 346     -11.977 -50.635  19.375
+ATOM   2561  N   LEU B 347     -13.847 -49.421  19.142
+ATOM   2562  CA  LEU B 347     -13.563 -49.081  17.747
+ATOM   2563  C   LEU B 347     -12.224 -48.349  17.576
+ATOM   2564  O   LEU B 347     -11.358 -48.818  16.833
+ATOM   2565  CB  LEU B 347     -14.721 -48.264  17.166
+ATOM   2566  CG  LEU B 347     -14.720 -47.881  15.679
+ATOM   2567  CD1 LEU B 347     -14.484 -49.070  14.742
+ATOM   2568  CD2 LEU B 347     -16.040 -47.168  15.353
+ATOM   2569  N   ARG B 348     -12.052 -47.228  18.284
+ATOM   2570  CA  ARG B 348     -10.850 -46.376  18.150
+ATOM   2571  C   ARG B 348      -9.553 -47.082  18.589
+ATOM   2572  O   ARG B 348      -8.471 -46.744  18.094
+ATOM   2573  CB  ARG B 348     -11.049 -45.041  18.903
+ATOM   2574  CG  ARG B 348      -9.846 -44.073  18.980
+ATOM   2575  CD  ARG B 348      -9.567 -43.291  17.682
+ATOM   2576  NE  ARG B 348      -8.370 -42.444  17.804
+ATOM   2577  N   ASP B 349      -9.656 -48.062  19.490
+ATOM   2578  CA  ASP B 349      -8.477 -48.849  19.906
+ATOM   2579  C   ASP B 349      -8.256 -50.096  19.033
+ATOM   2580  O   ASP B 349      -7.330 -50.866  19.267
+ATOM   2581  CB  ASP B 349      -8.582 -49.262  21.384
+ATOM   2582  CG  ASP B 349      -8.583 -48.069  22.339
+ATOM   2583  OD1 ASP B 349      -8.077 -46.989  21.956
+ATOM   2584  OD2 ASP B 349      -9.087 -48.213  23.480
+ATOM   2585  N   SER B 350      -9.109 -50.303  18.037
+ATOM   2586  CA  SER B 350      -8.980 -51.466  17.167
+ATOM   2587  C   SER B 350      -7.968 -51.183  16.078
+ATOM   2588  O   SER B 350      -7.753 -50.031  15.718
+ATOM   2589  CB  SER B 350     -10.316 -51.782  16.510
+ATOM   2590  OG  SER B 350     -10.679 -50.744  15.611
+ATOM   2591  N   VAL B 351      -7.371 -52.243  15.537
+ATOM   2592  CA  VAL B 351      -6.535 -52.131  14.345
+ATOM   2593  C   VAL B 351      -7.394 -51.819  13.100
+ATOM   2594  O   VAL B 351      -8.267 -52.605  12.727
+ATOM   2595  CB  VAL B 351      -5.711 -53.404  14.122
+ATOM   2596  CG1 VAL B 351      -4.986 -53.362  12.760
+ATOM   2597  CG2 VAL B 351      -4.728 -53.569  15.267
+ATOM   2598  N   PRO B 352      -7.155 -50.654  12.465
+ATOM   2599  CA  PRO B 352      -7.897 -50.300  11.265
+ATOM   2600  C   PRO B 352      -7.755 -51.367  10.222
+ATOM   2601  O   PRO B 352      -6.726 -52.015  10.179
+ATOM   2602  CB  PRO B 352      -7.194 -49.037  10.778
+ATOM   2603  CG  PRO B 352      -6.628 -48.437  12.004
+ATOM   2604  CD  PRO B 352      -6.190 -49.601  12.834
+ATOM   2605  N   PRO B 353      -8.769 -51.538   9.368
+ATOM   2606  CA  PRO B 353      -8.706 -52.530   8.307
+ATOM   2607  C   PRO B 353      -7.954 -52.017   7.065
+ATOM   2608  O   PRO B 353      -7.889 -52.705   6.051
+ATOM   2609  CB  PRO B 353     -10.176 -52.753   7.985
+ATOM   2610  CG  PRO B 353     -10.764 -51.400   8.164
+ATOM   2611  CD  PRO B 353     -10.039 -50.795   9.334
+ATOM   2612  N   PHE B 354      -7.407 -50.812   7.126
+ATOM   2613  CA  PHE B 354      -6.520 -50.356   6.075
+ATOM   2614  C   PHE B 354      -5.369 -49.522   6.636
+ATOM   2615  O   PHE B 354      -5.558 -48.682   7.523
+ATOM   2616  CB  PHE B 354      -7.297 -49.559   5.033
+ATOM   2617  CG  PHE B 354      -6.422 -48.892   4.007
+ATOM   2618  CD1 PHE B 354      -6.063 -49.564   2.840
+ATOM   2619  CD2 PHE B 354      -5.948 -47.600   4.215
+ATOM   2620  CE1 PHE B 354      -5.253 -48.955   1.896
+ATOM   2621  CE2 PHE B 354      -5.136 -46.986   3.282
+ATOM   2622  CZ  PHE B 354      -4.792 -47.658   2.116
+ATOM   2623  N   THR B 355      -4.180 -49.767   6.096
+ATOM   2624  CA  THR B 355      -2.980 -49.071   6.503
+ATOM   2625  C   THR B 355      -2.517 -48.165   5.367
+ATOM   2626  O   THR B 355      -2.237 -48.650   4.264
+ATOM   2627  CB  THR B 355      -1.870 -50.073   6.832
+ATOM   2628  OG1 THR B 355      -2.399 -51.076   7.712
+ATOM   2629  CG2 THR B 355      -0.664 -49.361   7.478
+ATOM   2630  N   PRO B 356      -2.456 -46.845   5.622
+ATOM   2631  CA  PRO B 356      -1.838 -45.945   4.637
+ATOM   2632  C   PRO B 356      -0.332 -46.220   4.437
+ATOM   2633  O   PRO B 356       0.351 -46.636   5.379
+ATOM   2634  CB  PRO B 356      -2.094 -44.540   5.217
+ATOM   2635  CG  PRO B 356      -2.401 -44.742   6.657
+ATOM   2636  CD  PRO B 356      -2.960 -46.124   6.807
+ATOM   2637  N   ASP B 357       0.157 -45.993   3.215
+ATOM   2638  CA  ASP B 357       1.551 -46.303   2.827
+ATOM   2639  C   ASP B 357       2.526 -45.173   3.166
+ATOM   2640  O   ASP B 357       2.122 -44.033   3.407
+ATOM   2641  CB  ASP B 357       1.635 -46.623   1.323
+ATOM   2642  N   ASP B 363       8.543 -35.004   2.951
+ATOM   2643  CA  ASP B 363       9.765 -34.445   3.526
+ATOM   2644  C   ASP B 363       9.418 -33.464   4.658
+ATOM   2645  O   ASP B 363       9.058 -32.301   4.423
+ATOM   2646  CB  ASP B 363      10.634 -33.774   2.443
+ATOM   2647  CG  ASP B 363      11.996 -33.293   2.977
+ATOM   2648  OD1 ASP B 363      13.024 -33.502   2.299
+ATOM   2649  OD2 ASP B 363      12.049 -32.700   4.071
+ATOM   2650  N   THR B 364       9.539 -33.951   5.888
+ATOM   2651  CA  THR B 364       9.373 -33.130   7.083
+ATOM   2652  C   THR B 364      10.740 -32.666   7.638
+ATOM   2653  O   THR B 364      10.947 -32.665   8.840
+ATOM   2654  CB  THR B 364       8.596 -33.909   8.185
+ATOM   2655  OG1 THR B 364       9.427 -34.945   8.727
+ATOM   2656  CG2 THR B 364       7.309 -34.527   7.630
+ATOM   2657  N   CYS B 365      11.658 -32.253   6.764
+ATOM   2658  CA  CYS B 365      12.963 -31.763   7.205
+ATOM   2659  C   CYS B 365      13.505 -30.523   6.486
+ATOM   2660  O   CYS B 365      13.997 -29.620   7.148
+ATOM   2661  CB  CYS B 365      13.977 -32.897   7.162
+ATOM   2662  SG  CYS B 365      13.826 -33.951   8.614
+ATOM   2663  N   ASN B 366      13.434 -30.472   5.157
+ATOM   2664  CA  ASN B 366      13.918 -29.298   4.399
+ATOM   2665  C   ASN B 366      12.784 -28.573   3.640
+ATOM   2666  O   ASN B 366      11.600 -28.839   3.868
+ATOM   2667  CB  ASN B 366      15.049 -29.688   3.434
+ATOM   2668  CG  ASN B 366      15.953 -30.764   3.995
+ATOM   2669  OD1 ASN B 366      16.985 -30.472   4.596
+ATOM   2670  ND2 ASN B 366      15.562 -32.021   3.808
+ATOM   2671  N   PHE B 367      13.157 -27.659   2.747
+ATOM   2672  CA  PHE B 367      12.197 -26.816   2.037
+ATOM   2673  C   PHE B 367      11.783 -27.418   0.685
+ATOM   2674  O   PHE B 367      12.627 -27.999  -0.019
+ATOM   2675  CB  PHE B 367      12.817 -25.432   1.789
+ATOM   2676  CG  PHE B 367      13.337 -24.755   3.032
+ATOM   2677  CD1 PHE B 367      12.472 -24.078   3.887
+ATOM   2678  CD2 PHE B 367      14.689 -24.777   3.336
+ATOM   2679  CE1 PHE B 367      12.947 -23.442   5.025
+ATOM   2680  CE2 PHE B 367      15.171 -24.141   4.474
+ATOM   2681  CZ  PHE B 367      14.295 -23.474   5.319
+ATOM   2682  N   ASP B 368      10.501 -27.273   0.322
+ATOM   2683  CA  ASP B 368      10.029 -27.596  -1.042
+ATOM   2684  C   ASP B 368      10.067 -26.347  -1.926
+ATOM   2685  O   ASP B 368      11.089 -26.051  -2.554
+ATOM   2686  CB  ASP B 368       8.615 -28.182  -1.035
+ATOM   2687  N   GLU B 371       9.395 -26.130  -5.312
+ATOM   2688  CA  GLU B 371       8.352 -25.102  -5.391
+ATOM   2689  C   GLU B 371       7.068 -25.548  -4.650
+ATOM   2690  O   GLU B 371       6.790 -26.751  -4.607
+ATOM   2691  CB  GLU B 371       8.046 -24.795  -6.862
+ATOM   2692  N   ASP B 372       6.266 -24.623  -4.095
+ATOM   2693  CA  ASP B 372       6.395 -23.164  -4.261
+ATOM   2694  C   ASP B 372       6.833 -22.429  -2.976
+ATOM   2695  O   ASP B 372       7.995 -22.035  -2.872
+ATOM   2696  CB  ASP B 372       5.072 -22.579  -4.770
+ATOM   2697  N   GLY B 373       5.919 -22.259  -2.013
+ATOM   2698  CA  GLY B 373       6.141 -21.408  -0.825
+ATOM   2699  C   GLY B 373       4.874 -20.639  -0.453
+ATOM   2700  O   GLY B 373       3.918 -20.651  -1.205
+ATOM   2701  N   LEU B 374       4.838 -19.978   0.705
+ATOM   2702  CA  LEU B 374       3.672 -19.145   1.062
+ATOM   2703  C   LEU B 374       3.536 -17.960   0.107
+ATOM   2704  O   LEU B 374       4.554 -17.351  -0.276
+ATOM   2705  CB  LEU B 374       3.797 -18.573   2.474
+ATOM   2706  CG  LEU B 374       3.648 -19.513   3.662
+ATOM   2707  CD1 LEU B 374       3.695 -18.675   4.945
+ATOM   2708  CD2 LEU B 374       2.354 -20.372   3.574
+ATOM   2709  N   THR B 375       2.296 -17.619  -0.270
+ATOM   2710  CA  THR B 375       2.072 -16.422  -1.112
+ATOM   2711  C   THR B 375       0.879 -15.540  -0.697
+ATOM   2712  O   THR B 375       0.984 -14.318  -0.723
+ATOM   2713  CB  THR B 375       2.050 -16.774  -2.626
+ATOM   2714  OG1 THR B 375       1.100 -17.808  -2.879
+ATOM   2715  CG2 THR B 375       3.459 -17.237  -3.093
+ATOM   2716  N   ALA B 376      -0.227 -16.147  -0.285
+ATOM   2717  CA  ALA B 376      -1.370 -15.384   0.256
+ATOM   2718  C   ALA B 376      -1.034 -14.692   1.580
+ATOM   2719  O   ALA B 376      -1.421 -13.543   1.813
+ATOM   2720  CB  ALA B 376      -2.605 -16.294   0.443
+ATOM   2721  N   MET B 377      -0.312 -15.395   2.444
+ATOM   2722  CA  MET B 377      -0.109 -14.937   3.811
+ATOM   2723  C   MET B 377       1.314 -14.457   3.996
+ATOM   2724  O   MET B 377       1.971 -14.794   4.970
+ATOM   2725  CB  MET B 377      -0.443 -16.062   4.795
+ATOM   2726  CG  MET B 377      -1.841 -16.670   4.598
+ATOM   2727  SD  MET B 377      -3.212 -15.521   4.887
+ATOM   2728  CE  MET B 377      -4.628 -16.514   4.374
+ATOM   2729  N   VAL B 378       1.787 -13.683   3.030
+ATOM   2730  CA  VAL B 378       3.033 -12.940   3.158
+ATOM   2731  C   VAL B 378       2.743 -11.542   2.616
+ATOM   2732  O   VAL B 378       1.795 -11.363   1.849
+ATOM   2733  CB  VAL B 378       4.203 -13.633   2.402
+ATOM   2734  CG1 VAL B 378       4.623 -14.894   3.125
+ATOM   2735  CG2 VAL B 378       3.823 -13.959   0.964
+ATOM   2736  N   SER B 379       3.525 -10.548   3.012
+ATOM   2737  CA  SER B 379       3.237  -9.164   2.602
+ATOM   2738  C   SER B 379       3.013  -8.974   1.077
+ATOM   2739  O   SER B 379       2.200  -8.133   0.679
+ATOM   2740  CB  SER B 379       4.304  -8.202   3.118
+ATOM   2741  OG  SER B 379       5.569  -8.549   2.607
+ATOM   2742  N   GLY B 380       3.701  -9.753   0.237
+ATOM   2743  CA  GLY B 380       3.403  -9.772  -1.209
+ATOM   2744  C   GLY B 380       2.169 -10.621  -1.516
+ATOM   2745  O   GLY B 380       2.289 -11.723  -2.073
+ATOM   2746  N   GLY B 381       0.987 -10.114  -1.148
+ATOM   2747  CA  GLY B 381      -0.245 -10.934  -1.107
+ATOM   2748  C   GLY B 381      -1.413 -10.218  -0.442
+ATOM   2749  O   GLY B 381      -1.472  -9.002  -0.453
+ATOM   2750  N   GLY B 382      -2.343 -10.961   0.144
+ATOM   2751  CA  GLY B 382      -3.560 -10.364   0.728
+ATOM   2752  C   GLY B 382      -3.316  -9.081   1.511
+ATOM   2753  O   GLY B 382      -2.440  -9.047   2.371
+ATOM   2754  N   GLU B 383      -4.073  -8.019   1.225
+ATOM   2755  CA  GLU B 383      -3.861  -6.737   1.915
+ATOM   2756  C   GLU B 383      -4.071  -7.000   3.411
+ATOM   2757  O   GLU B 383      -4.980  -7.747   3.788
+ATOM   2758  CB  GLU B 383      -4.770  -5.608   1.377
+ATOM   2759  N   THR B 384      -3.195  -6.426   4.239
+ATOM   2760  CA  THR B 384      -3.154  -6.696   5.675
+ATOM   2761  C   THR B 384      -3.486  -5.456   6.487
+ATOM   2762  O   THR B 384      -3.400  -4.351   5.981
+ATOM   2763  CB  THR B 384      -1.745  -7.136   6.090
+ATOM   2764  OG1 THR B 384      -0.786  -6.157   5.639
+ATOM   2765  CG2 THR B 384      -1.414  -8.513   5.512
+ATOM   2766  N   LEU B 385      -3.821  -5.632   7.763
+ATOM   2767  CA  LEU B 385      -4.042  -4.474   8.649
+ATOM   2768  C   LEU B 385      -2.880  -3.478   8.588
+ATOM   2769  O   LEU B 385      -3.100  -2.277   8.713
+ATOM   2770  CB  LEU B 385      -4.314  -4.901  10.101
+ATOM   2771  CG  LEU B 385      -5.631  -5.654  10.327
+ATOM   2772  CD1 LEU B 385      -5.703  -6.158  11.747
+ATOM   2773  CD2 LEU B 385      -6.878  -4.826  10.001
+ATOM   2774  N   SER B 386      -1.661  -3.962   8.364
+ATOM   2775  CA  SER B 386      -0.504  -3.077   8.203
+ATOM   2776  C   SER B 386      -0.567  -2.157   6.979
+ATOM   2777  O   SER B 386       0.163  -1.175   6.932
+ATOM   2778  CB  SER B 386       0.786  -3.893   8.128
+ATOM   2779  OG  SER B 386       1.058  -4.504   9.369
+ATOM   2780  N   ASP B 387      -1.406  -2.478   5.994
+ATOM   2781  CA  ASP B 387      -1.520  -1.682   4.762
+ATOM   2782  C   ASP B 387      -2.726  -0.730   4.760
+ATOM   2783  O   ASP B 387      -2.693   0.305   4.092
+ATOM   2784  CB  ASP B 387      -1.635  -2.592   3.525
+ATOM   2785  CG  ASP B 387      -0.649  -3.752   3.539
+ATOM   2786  OD1 ASP B 387       0.517  -3.548   3.939
+ATOM   2787  OD2 ASP B 387      -1.047  -4.874   3.138
+ATOM   2788  N   ILE B 388      -3.793  -1.093   5.480
+ATOM   2789  CA  ILE B 388      -5.067  -0.345   5.440
+ATOM   2790  C   ILE B 388      -4.976   0.996   6.167
+ATOM   2791  O   ILE B 388      -3.981   1.293   6.840
+ATOM   2792  CB  ILE B 388      -6.231  -1.166   6.047
+ATOM   2793  N   LEU B 394      -8.500   1.512  13.998
+ATOM   2794  CA  LEU B 394      -9.938   1.723  14.112
+ATOM   2795  C   LEU B 394     -10.599   0.948  15.289
+ATOM   2796  O   LEU B 394     -11.710   1.289  15.704
+ATOM   2797  CB  LEU B 394     -10.613   1.375  12.772
+ATOM   2798  N   GLY B 395      -9.902  -0.054  15.840
+ATOM   2799  CA  GLY B 395     -10.467  -1.005  16.831
+ATOM   2800  C   GLY B 395     -10.362  -2.462  16.385
+ATOM   2801  O   GLY B 395     -11.098  -3.329  16.863
+ATOM   2802  N   VAL B 396      -9.404  -2.733  15.500
+ATOM   2803  CA  VAL B 396      -9.408  -3.925  14.653
+ATOM   2804  C   VAL B 396      -8.967  -5.220  15.303
+ATOM   2805  O   VAL B 396      -9.238  -6.282  14.756
+ATOM   2806  CB  VAL B 396      -8.492  -3.731  13.433
+ATOM   2807  CG1 VAL B 396      -8.994  -2.602  12.574
+ATOM   2808  CG2 VAL B 396      -7.048  -3.495  13.876
+ATOM   2809  N   HIS B 397      -8.257  -5.164  16.425
+ATOM   2810  CA  HIS B 397      -7.806  -6.404  17.074
+ATOM   2811  C   HIS B 397      -8.790  -6.962  18.120
+ATOM   2812  O   HIS B 397      -8.597  -8.063  18.634
+ATOM   2813  CB  HIS B 397      -6.414  -6.211  17.666
+ATOM   2814  CG  HIS B 397      -5.344  -6.076  16.628
+ATOM   2815  ND1 HIS B 397      -4.571  -4.942  16.488
+ATOM   2816  CD2 HIS B 397      -4.939  -6.927  15.654
+ATOM   2817  CE1 HIS B 397      -3.726  -5.108  15.485
+ATOM   2818  NE2 HIS B 397      -3.926  -6.307  14.966
+ATOM   2819  N   LEU B 398      -9.860  -6.224  18.407
+ATOM   2820  CA  LEU B 398     -10.838  -6.647  19.406
+ATOM   2821  C   LEU B 398     -11.487  -8.014  19.088
+ATOM   2822  O   LEU B 398     -11.639  -8.865  19.973
+ATOM   2823  CB  LEU B 398     -11.902  -5.561  19.607
+ATOM   2824  CG  LEU B 398     -11.407  -4.233  20.226
+ATOM   2825  CD1 LEU B 398     -12.469  -3.151  20.083
+ATOM   2826  CD2 LEU B 398     -11.010  -4.367  21.697
+ATOM   2827  N   PRO B 399     -11.861  -8.252  17.827
+ATOM   2828  CA  PRO B 399     -12.503  -9.538  17.553
+ATOM   2829  C   PRO B 399     -11.651 -10.769  17.769
+ATOM   2830  O   PRO B 399     -12.158 -11.863  17.628
+ATOM   2831  CB  PRO B 399     -12.888  -9.428  16.082
+ATOM   2832  CG  PRO B 399     -12.928  -7.973  15.828
+ATOM   2833  CD  PRO B 399     -11.821  -7.406  16.632
+ATOM   2834  N   PHE B 400     -10.378 -10.600  18.112
+ATOM   2835  CA  PHE B 400      -9.468 -11.730  18.311
+ATOM   2836  C   PHE B 400      -8.956 -11.866  19.753
+ATOM   2837  O   PHE B 400      -8.122 -12.728  20.051
+ATOM   2838  CB  PHE B 400      -8.320 -11.578  17.328
+ATOM   2839  CG  PHE B 400      -8.778 -11.236  15.948
+ATOM   2840  CD1 PHE B 400      -8.660  -9.953  15.461
+ATOM   2841  CD2 PHE B 400      -9.369 -12.196  15.153
+ATOM   2842  CE1 PHE B 400      -9.098  -9.637  14.199
+ATOM   2843  CE2 PHE B 400      -9.800 -11.889  13.873
+ATOM   2844  CZ  PHE B 400      -9.669 -10.606  13.400
+ATOM   2845  N   VAL B 401      -9.455 -11.005  20.638
+ATOM   2846  CA  VAL B 401      -9.218 -11.133  22.069
+ATOM   2847  C   VAL B 401      -9.622 -12.535  22.502
+ATOM   2848  O   VAL B 401     -10.777 -12.919  22.386
+ATOM   2849  CB  VAL B 401     -10.054 -10.112  22.881
+ATOM   2850  CG1 VAL B 401      -9.635  -8.667  22.570
+ATOM   2851  CG2 VAL B 401      -9.939 -10.396  24.375
+ATOM   2852  N   GLY B 402      -8.664 -13.313  22.980
+ATOM   2853  CA  GLY B 402      -8.968 -14.662  23.463
+ATOM   2854  C   GLY B 402      -8.668 -15.778  22.478
+ATOM   2855  O   GLY B 402      -8.866 -16.942  22.791
+ATOM   2856  N   TYR B 403      -8.170 -15.437  21.301
+ATOM   2857  CA  TYR B 403      -7.834 -16.435  20.310
+ATOM   2858  C   TYR B 403      -6.661 -17.307  20.792
+ATOM   2859  O   TYR B 403      -6.697 -18.533  20.656
+ATOM   2860  CB  TYR B 403      -7.512 -15.758  18.966
+ATOM   2861  CG  TYR B 403      -7.461 -16.708  17.798
+ATOM   2862  CD1 TYR B 403      -6.310 -17.421  17.502
+ATOM   2863  CD2 TYR B 403      -8.566 -16.903  16.996
+ATOM   2864  CE1 TYR B 403      -6.260 -18.294  16.425
+ATOM   2865  CE2 TYR B 403      -8.534 -17.772  15.933
+ATOM   2866  CZ  TYR B 403      -7.375 -18.465  15.645
+ATOM   2867  OH  TYR B 403      -7.353 -19.338  14.578
+ATOM   2868  N   SER B 404      -5.641 -16.676  21.376
+ATOM   2869  CA  SER B 404      -4.384 -17.358  21.730
+ATOM   2870  C   SER B 404      -4.632 -18.568  22.624
+ATOM   2871  O   SER B 404      -5.526 -18.531  23.457
+ATOM   2872  CB  SER B 404      -3.416 -16.379  22.416
+ATOM   2873  OG  SER B 404      -3.183 -15.219  21.612
+ATOM   2874  N   TYR B 405      -3.855 -19.636  22.425
+ATOM   2875  CA  TYR B 405      -3.962 -20.874  23.217
+ATOM   2876  C   TYR B 405      -2.584 -21.479  23.458
+ATOM   2877  O   TYR B 405      -1.824 -21.703  22.512
+ATOM   2878  CB  TYR B 405      -4.834 -21.902  22.509
+ATOM   2879  CG  TYR B 405      -4.794 -23.296  23.125
+ATOM   2880  CD1 TYR B 405      -5.359 -23.544  24.365
+ATOM   2881  CD2 TYR B 405      -4.219 -24.373  22.445
+ATOM   2882  CE1 TYR B 405      -5.339 -24.805  24.923
+ATOM   2883  CE2 TYR B 405      -4.197 -25.649  22.992
+ATOM   2884  CZ  TYR B 405      -4.754 -25.857  24.240
+ATOM   2885  OH  TYR B 405      -4.745 -27.108  24.821
+ATOM   2886  N   SER B 406      -2.309 -21.758  24.734
+ATOM   2887  CA  SER B 406      -1.000 -22.196  25.259
+ATOM   2888  C   SER B 406       0.201 -21.930  24.348
+ATOM   2889  O   SER B 406       0.834 -22.845  23.816
+ATOM   2890  CB  SER B 406      -1.047 -23.664  25.703
+ATOM   2891  OG  SER B 406      -1.551 -24.482  24.685
+ATOM   2892  N   CYS B 407       0.508 -20.645  24.210
+ATOM   2893  CA  CYS B 407       1.566 -20.175  23.321
+ATOM   2894  C   CYS B 407       2.782 -19.605  24.073
+ATOM   2895  O   CYS B 407       3.603 -18.927  23.477
+ATOM   2896  CB  CYS B 407       0.998 -19.113  22.373
+ATOM   2897  SG  CYS B 407       0.628 -17.563  23.217
+ATOM   2898  N   MET B 408       2.886 -19.861  25.369
+ATOM   2899  CA  MET B 408       4.143 -19.643  26.066
+ATOM   2900  C   MET B 408       4.832 -21.012  26.135
+ATOM   2901  O   MET B 408       4.896 -21.650  27.188
+ATOM   2902  CB  MET B 408       3.910 -19.007  27.448
+ATOM   2903  CG  MET B 408       3.220 -17.623  27.368
+ATOM   2904  SD  MET B 408       3.525 -16.459  28.743
+ATOM   2905  CE  MET B 408       2.476 -15.093  28.244
+ATOM   2906  N   ALA B 409       5.340 -21.457  24.986
+ATOM   2907  CA  ALA B 409       5.801 -22.837  24.814
+ATOM   2908  C   ALA B 409       7.320 -23.002  24.979
+ATOM   2909  O   ALA B 409       7.909 -23.802  24.249
+ATOM   2910  CB  ALA B 409       5.368 -23.347  23.442
+ATOM   2911  N   LEU B 410       7.923 -22.283  25.943
+ATOM   2912  CA  LEU B 410       9.398 -22.136  26.095
+ATOM   2913  C   LEU B 410       9.807 -22.045  27.562
+ATOM   2914  O   LEU B 410       8.940 -21.851  28.407
+ATOM   2915  CB  LEU B 410       9.898 -20.880  25.384
+ATOM   2916  CG  LEU B 410      10.500 -21.060  23.989
+ATOM   2917  CD1 LEU B 410       9.451 -21.406  22.912
+ATOM   2918  CD2 LEU B 410      11.253 -19.774  23.633
+ATOM   2919  N   ARG B 411      11.109 -22.177  27.854
+ATOM   2920  CA  ARG B 411      11.610 -22.215  29.244
+ATOM   2921  C   ARG B 411      12.762 -21.245  29.442
+ATOM   2922  O   ARG B 411      13.289 -20.712  28.477
+ATOM   2923  CB  ARG B 411      12.122 -23.607  29.641
+ATOM   2924  CG  ARG B 411      11.535 -24.793  28.897
+ATOM   2925  CD  ARG B 411      12.236 -26.091  29.333
+ATOM   2926  NE  ARG B 411      11.461 -27.294  29.020
+ATOM   2927  CZ  ARG B 411      11.860 -28.534  29.286
+ATOM   2928  NH1 ARG B 411      11.083 -29.561  28.993
+ATOM   2929  NH2 ARG B 411      13.028 -28.749  29.860
+ATOM   2930  N   ASP B 412      13.182 -21.053  30.690
+ATOM   2931  CA  ASP B 412      14.230 -20.085  30.996
+ATOM   2932  C   ASP B 412      15.486 -20.417  30.194
+ATOM   2933  O   ASP B 412      16.025 -19.568  29.476
+ATOM   2934  CB  ASP B 412      14.546 -20.064  32.499
+ATOM   2935  N   SER B 413      15.920 -21.671  30.307
+ATOM   2936  CA  SER B 413      17.087 -22.198  29.589
+ATOM   2937  C   SER B 413      17.065 -21.903  28.081
+ATOM   2938  O   SER B 413      18.102 -21.879  27.435
+ATOM   2939  CB  SER B 413      17.171 -23.713  29.811
+ATOM   2940  OG  SER B 413      15.988 -24.364  29.347
+ATOM   2941  N   GLU B 414      15.885 -21.674  27.531
+ATOM   2942  CA  GLU B 414      15.725 -21.531  26.090
+ATOM   2943  C   GLU B 414      15.426 -20.102  25.676
+ATOM   2944  O   GLU B 414      15.127 -19.850  24.506
+ATOM   2945  CB  GLU B 414      14.597 -22.443  25.612
+ATOM   2946  CG  GLU B 414      14.703 -23.835  26.196
+ATOM   2947  CD  GLU B 414      13.628 -24.769  25.718
+ATOM   2948  OE1 GLU B 414      12.555 -24.298  25.266
+ATOM   2949  OE2 GLU B 414      13.871 -25.994  25.809
+ATOM   2950  N   VAL B 415      15.515 -19.174  26.628
+ATOM   2951  CA  VAL B 415      15.117 -17.793  26.403
+ATOM   2952  C   VAL B 415      16.267 -16.867  26.773
+ATOM   2953  O   VAL B 415      16.853 -16.997  27.866
+ATOM   2954  CB  VAL B 415      13.854 -17.411  27.212
+ATOM   2955  N   PRO B 416      16.590 -15.925  25.859
+ATOM   2956  CA  PRO B 416      17.681 -14.966  26.036
+ATOM   2957  C   PRO B 416      17.295 -13.822  26.962
+ATOM   2958  O   PRO B 416      17.867 -13.699  28.041
+ATOM   2959  CB  PRO B 416      17.904 -14.437  24.623
+ATOM   2960  CG  PRO B 416      16.558 -14.521  23.984
+ATOM   2961  CD  PRO B 416      15.884 -15.722  24.573
diff --git a/examples/testdata/agc_dmpk_frag.fa b/examples/testdata/agc_dmpk_frag.fa
new file mode 100644 (file)
index 0000000..c80a14a
--- /dev/null
@@ -0,0 +1,2 @@
+>AGC_DMPK/71-93 DMPK_HUMAN DMPK Q09013
+FEILKVIGRGAFSEVAVVKMKQT
index 54cce2a..cb0c4c4 100755 (executable)
    <mapID target="calcs.alconserv" url="html/calculations/conservation.html"/>
    <mapID target="calcs.alstrconsensus" url="html/calculations/structureconsensus.html"/>  
    <mapID target="calcs.consensus" url="html/calculations/consensus.html"/>   
+   <mapID target="calcs.dialog" url="html/calculations/calculations.html"/>
    
    <mapID target="nucleicAcids" url="html/na/index.html"/>
    
    <mapID target="uniprotfetcher" url="html/features/uniprotsequencefetcher.html" />
    
    <mapID target="urllinks" url="html/webServices/urllinks.html" />
-   <mapID target="linksprefs" url="html/features/Preferences.html#links" />
+   <mapID target="linksprefs" url="html/features/preferences.html#links" />
 
    <mapID target="backIcon" url="icons/back.png" />
    <mapID target="forwardIcon" url="icons/forward.png" />
    <mapID target="printIcon" url="icons/print.png" />
    <mapID target="printSetupIcon" url="icons/setup.png" />
    
-   <mapID target="overview" url="features/overview.html" />
+   <mapID target="overview" url="html/features/overview.html" />
 </map>
index a8aadf5..f3311a7 100755 (executable)
@@ -24,6 +24,7 @@
        <tocitem text="Jalview Documentation" target="home" expand="true">
                        <tocitem text="What's new" target="new" expand="true">
                                <tocitem text="Latest Release Notes" target="release"/>
+        <tocitem text="Calculations Dialog" target="calcs.dialog"/>
                                <tocitem text="Groovy Features Counter example" target="groovy.featurescounter"/>
                                <tocitem text="Custom Colourschemes in Groovy" target="groovy.colours"/>
                                <tocitem text="Omit hidden regions in Overview" target="overview"/>
                
                <tocitem text="Calculations" expand="false">
                        <tocitem text="Sorting alignments" target="sorting" />
-                       <tocitem text="Calculating trees" target="trees" />
-                       <tocitem text="Principal Component Analysis" target="pca" />
+                       <tocitem text="Trees and PCA" target="calcs.dialog" expand="false">
+                         <tocitem text="Calculating trees" target="trees" />
+                         <tocitem text="Principal Component Analysis" target="pca" />
+                       </tocitem>
                        <tocitem text="Tree/PCA Input Data" target="recoverInputdata" />
                        <tocitem text="Pairwise Alignments" target="pairwise" />
                        <tocitem text="Remove Redundancy" target="redundancy" />
diff --git a/help/html/calculations/calculatedialog.png b/help/html/calculations/calculatedialog.png
new file mode 100644 (file)
index 0000000..fdc0c0d
Binary files /dev/null and b/help/html/calculations/calculatedialog.png differ
diff --git a/help/html/calculations/calculations.html b/help/html/calculations/calculations.html
new file mode 100644 (file)
index 0000000..c194cd9
--- /dev/null
@@ -0,0 +1,55 @@
+<html>
+<!--
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
+ * 
+ * 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/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ -->
+<head>
+<title>The Alignment Calculations Dialog</title>
+</head>
+<body>
+  <p>
+    <strong>The Alignment Calculations Dialog</strong>
+  </p>
+  <img
+    alt="Alignment Calculations dialog box - opened via Calculations->Tree or PCA..."
+    src="calculatedialog.png" width="350" height="241">
+  <p>
+    The <strong>Calculations Dialog</strong> (shown above) is opened via
+    the <strong>Calculations&#8594;Calculate Tree or PCA...</strong>
+    menu entry.
+  </p>
+  <p>
+    It allows you to select the type of alignment analysis calculation (<a
+      href="pca.html">PCA</a> or <a href="tree.html">Tree</a>), and the
+    sequence similarity score model that will be used to perform the
+    analysis.
+  </p>
+  <p>
+    <strong>Adding additional score models</strong><br />Jalview can
+    import substitution matrices in both <a
+      href="http://www.genome.jp/aaindex/aaindex_help.html">AAindex</a>
+    and NCBI format (see e.g. <a
+      href="http://ftp.ncbi.nlm.nih.gov/blast/matrices/">ftp://ftp.ncbi.nlm.nih.gov/blast/matrices/</a>).
+    In Jalview 2.10.2, the easiest way to import new models is to drag
+    the score model file onto any alignment window. See the <a
+      href="scorematrices.html">Substitution Matrices Documentation</a>
+    for more information.
+  </p>
+</body>
+</html>
index c38d9ac..7ffb160 100755 (executable)
   <p>
     <strong>Principal Component Analysis</strong>
   </p>
+  <p>A principal component analysis can be performed via the 
+  <a href="calculations.html">calculations dialog</a> which is accessed by selecting <strong>Calculate&#8594;Calculate
+      Tree or PCA...</strong>.</p>
   <p>This calculation creates a spatial representation of the
     similarities within a selected group, or all of the sequences in an
     alignment. After the calculation finishes, a 3D viewer displays the
     set of sequences as points in 'similarity space', and similar
     sequences tend to lie near each other in the space.</p>
   <p>
-    <em>Caveats</em><br />The calculation is computationally expensive,
-    and may fail for very large sets of sequences - usually because the
-    JVM has run out of memory. A future release of Jalview will be able
-    to avoid this by executing the calculation via a web service.
+    <em>Caveats</em><br />The calculation can be computationally
+    expensive, and may fail for very large sets of sequences - usually
+    because the JVM has run out of memory. However, the PCA
+    implementation in Jalview 2.10.2 employs more memory efficient
+    matrix storage structures, allowing larger PCAs to be performed.
   </p>
 
   <p>
index 59736ca..95904b6 100755 (executable)
@@ -28,8 +28,8 @@
   </p>
   <p>
     Trees are calculated on either the complete alignment, or just the
-    currently selected group of sequences, using the functions in the <strong>Calculate&#8594;Calculate
-      tree</strong> submenu. Once calculated, trees are displayed in a new <a
+    currently selected group of sequences, via the <a href="calculations.html">calculations dialog</a> opened from the <strong>Calculate&#8594;Calculate
+      Tree or PCA...</strong> menu entry. Once calculated, trees are displayed in a new <a
       href="../calculations/treeviewer.html">tree viewing
       window</a>. There are four different calculations, using one of two
     distance measures and constructing the tree from one of two
index 69f3315..72e5bdf 100755 (executable)
@@ -24,7 +24,7 @@
 <style type="text/css">
 <!--
 td {
-       text-align: center;
+  text-align: center;
 }
 -->
 </style>
@@ -36,8 +36,8 @@ td {
   </p>
   <p>The search box is displayed by pressing Control and F or
     selecting &quot;Find...&quot; from the &quot;Search&quot; menu.</p>
-  <img src="search.gif" width="339" height="110">
-  <p>&quot;Find next&quot; will find the next occurence of the
+  <img src="search.png" width="398" height="124">
+  <p>&quot;Find next&quot; will find the next occurrence of the
     specified and adjust the alignment window view to show it, and
     &quot;Find all&quot; highlights all matches for a pattern. The
     &quot;New Feature&quot; is a quick way to highlight and group
@@ -48,7 +48,10 @@ td {
       of posix and perl style regex - see below for a summary)</li>
     <li>Gaps are ignored when matching the query to the sequences
       in the alignment.</li>
-    <li>The search is applied to both sequences and their IDs.</li>
+    <li>The search is applied to both sequences and their IDs, and
+      optionally also to the description string (<em>since Jalview
+        2.10</em>)
+    </li>
     <li>If a region is selected, then search will <strong>only</strong>
       be performed on that region.
     </li>
@@ -56,6 +59,9 @@ td {
       &quot;Escape&quot; key.</li>
     <li>Tick the &quot;Match Case&quot; box to perform a case
       sensitive search.</li>
+    <li>To access a <a ref="#queryhistory">previously used
+        query</a> press the down arrow or click on the button on the right
+      of the text field.
   </ul>
   <p>
     <strong>Creating Features from Search Results</strong>
@@ -77,7 +83,7 @@ td {
     highlighted region.
   </p>
   <p>
-  
+
     <strong>A quick Regular Expression Guide</strong>
   </p>
   <p>A regular expression is not just a simple text query - although
@@ -142,5 +148,26 @@ td {
         max number of times</td>
     </tr>
   </table>
+  <p>
+    <a name="queryhistory" /><strong>Search History</strong>
+  </p>
+  <p>A record of all the recent queries made via the Find dialog are
+    stored along with your Jalview user preferences. To open the search
+    history, click on the button to the right of the query field, or
+    press the down arrow key.</p>
+  <img src="searchhist.png" width="404" height="185" align="left" />
+  <p>The search history keeps up to 99 queries by default. To clear
+    the history, or modify the size of the history, right-click the text
+    box.</p>
+  <img src="searchclearhist.png" width="402" height="121" align="left" />
+  <p>
+    <strong>Other dialogs that provide a query history</strong>
+  </p>
+  <p>
+    Jalview's <a href="uniprotsequencefetcher.html">Uniprot</a> and <a
+      href="pdbsequencefetcher.html">PDB</a> free text database search
+    dialogs also provide a query history.
+  </p>
+  <em>The query histories were introduced in Jalview 2.10.2</em>
 </body>
 </html>
diff --git a/help/html/features/search.png b/help/html/features/search.png
new file mode 100644 (file)
index 0000000..89adb1a
Binary files /dev/null and b/help/html/features/search.png differ
diff --git a/help/html/features/searchclearhist.png b/help/html/features/searchclearhist.png
new file mode 100644 (file)
index 0000000..200c4d3
Binary files /dev/null and b/help/html/features/searchclearhist.png differ
diff --git a/help/html/features/searchhist.png b/help/html/features/searchhist.png
new file mode 100644 (file)
index 0000000..e157b56
Binary files /dev/null and b/help/html/features/searchhist.png differ
index f60da1a..0fcbbf9 100755 (executable)
       </ul></li>
   </ol>
   <p>
-  <strong>Structure Viewers in the Jalview Desktop</strong><br/>
-  The
-  <a href="jmol.html">Jmol viewer</a> has been included since Jalview
-  2.3. Jalview 2.8.2 included support for
-  <a href="chimera.html">Chimera</a>, provided it is installed and can
-  be launched by Jalview. The default viewer can be configured in the
-  <a href="preferences.html#structure">Structure tab</a> in the
-  <strong>Tools&rarr;Preferences</strong> dialog box.
+    <strong>Structure Viewers in the Jalview Desktop</strong><br /> The
+    <a href="jmol.html">Jmol viewer</a> has been included since Jalview
+    2.3. Jalview 2.8.2 included support for <a href="chimera.html">Chimera</a>,
+    provided it is installed and can be launched by Jalview. The default
+    viewer can be configured in the <a href="preferences.html#structure">Structure
+      tab</a> in the <strong>Tools&rarr;Preferences</strong> dialog box.
   <p>
     Structure data imported into Jalview can also be processed to
     display secondary structure and temperature factor annotation. See
     whether structure views already exist for the selected structures or
     aligned sequences.
   </p>
+  <p>If multiple structures are selected, then Jalview will always
+    create a new structure view. The selected structures will be
+    imported into this view, and superposed with the matched positions
+    from the aligned sequences. A message in the structure viewer's
+    status bar will be shown if not enough aligned columns were
+    available to perform a superposition.</p>
   <p>
-    If multiple structures are selected, then Jalview will always create
-    a new structure view. The selected structures will be imported into
-    this view, and superposed with the matched positions from the
-    aligned sequences.<br /> If a <strong>single</strong> PDB structure
-    is selected, one of the following will happen:
+    If a <strong>single</strong> PDB structure is selected, one of the
+    following will happen:
   </p>
 
   <ul>
 
     <li>If another structure is already shown for the current
       alignment, then you will be asked if you want to add and <a
-      href="jmol.html#align"></a> to
-    the structure in the existing view. (<em>new feature in Jalview
-      2.6</em>).
-  </li>
+      href="jmol.html#align"></a> to the structure in the existing view.
+      (<em>new feature in Jalview 2.6</em>).
+    </li>
 
     <li>If the structure is already shown, then you will be
       prompted to associate the sequence with an existing view of the
index 51ad601..00a2ec4 100755 (executable)
         </strong><em>Selects all the sequences and residues in the
             alignment. <br> Use &lt;CTRL&gt; and A (&lt;APPLE&gt;
             and A on a MacOSX) to select all.
-        </em></em></li>
+        </em></li>
         <li><strong>Deselect All (Escape)<br>
         </strong><em>Removes the current selection box (red dashed box) from
             the alignment window. All selected sequences, residues and
             or hide sequence features on this alignment.</em></li>
         <li><strong><a
             href="../features/featuresettings.html">Sequence
-              Feature Settings...</a> </strong><em><br> <em>Opens the
+              Feature Settings...</a> </strong><br> <em>Opens the
               Sequence Feature Settings dialog box to control the colour
               and display of sequence features on the alignment, and
               configure and retrieve features from DAS annotation
             </strong><em>If this box is selected then the sequence names
                 displayed in the sequence label area will be aligned
                 against the left-hand edge of the alignment display,
-                rather than the left-hand edge of the alignment window.
+                rather than the left-hand edge of the alignment window.</em>
             </li>
             <li><strong>Show Hidden Markers<br>
             </strong><em>When this box is selected, positions in the
                 alignment where rows and columns are hidden will be
-                marked by blue arrows. </li>
+                marked by blue arrows. </em></li>
             <li><strong>Boxes</strong><em><br> If this is
                 selected the background of a residue will be coloured
                 using the selected background colour. Useful if used in
                 symbols will be rendered as a '.', highlighting
                 mutations in highly conserved alignments. </em></li>
 
-          </ul></li>
       </ul></li>
 
   </ul>
               viewer window.
           </em><br></li>
         </ul></li>
-      <li><strong>Calculate Tree </strong> <br> <em>Functions
-          for calculating trees on the alignment or the currently
-          selected region. See <a href="../calculations/tree.html">calculating
-            trees</a>.
-      </em>
-        <ul>
-          <li><strong>Neighbour Joining Using PAM250 </strong></li>
-          <li><strong>Neighbour Joining Using Sequence
-              Feature Similarity</strong></li>
-          <li><strong>Neighbour Joining Using Blosum62 </strong></li>
-          <li><strong>Neighbour Joining Using % Identity</strong></li>
-          <li><strong>Average Distance Using PAM250 </strong></li>
-          <li><strong>Average Distance Using Sequence
-              Feature Similarity</strong></li>
-          <li><strong>Average Distance Using Blosum62</strong></li>
-          <li><strong>Average Distance Using % Identity</strong></li>
-        </ul> <strong>Note: Since Version 2.8.1, a number of
-          additional similarity measures for tree calculation are
-          provided in this menu.</strong></li>
-      <li><strong>Pairwise Alignments</strong><br> <em>Applies
-          Smith and Waterman algorithm to selected sequences. See <a
-          href="../calculations/pairwise.html">pairwise
-            alignments</a>.
+    <li><strong>Calculate Tree or PCA ...</strong><em> <br> Opens the 
+    <a href="../calculations/calculations.html">calculations dialog</a> for
+        for calculating <a href="../calculations/tree.html">trees</a> or
+         <a href="../calculations/pca.html">principle component analysis 
+         plots</a> on the alignment or the currently selected
+        region. 
       </em><br></li>
-      <li><strong>Principal Component Analysis</strong><br> <em>Shows
-          a spatial clustering of the sequences based on similarity
-          scores calculated with the alignment. See <a
-          href="../calculations/pca.html">Principal
-            Component Analysis</a>.
-      </em> <br></li>
-      <li><strong>Extract Scores ... (optional)</strong><br> <em>This
-          option is only visible if Jalview detects one or more
-          white-space separated values in the description line of the
-          alignment sequences.<br> When selected, these numbers are
-          parsed into sequence associated annotation which can then be
-          used to sort the alignment via the Sort by&#8594;Score menu.
-      </em> <br></li>
-      <li><strong>Autocalculate Consensus</strong><br> <em>For
+    <li><strong>Pairwise Alignments</strong><br> <em>Applies
+        Smith and Waterman algorithm to selected sequences. See <a
+        href="../calculations/pairwise.html">pairwise
+          alignments</a>.
+    </em><br></li>
+    <li><strong>Extract Scores ... (optional)</strong><br> <em>This
+        option is only visible if Jalview detects one or more
+        white-space separated values in the description line of the
+        alignment sequences.<br> When selected, these numbers are
+        parsed into sequence associated annotation which can then be
+        used to sort the alignment via the Sort by&#8594;Score menu.
+    </em> <br></li>
+    <li><strong>Autocalculate Consensus</strong><br> <em>For
           large alignments it can be useful to deselect
           &quot;Autocalculate Consensus&quot; when editing. This
           prevents the sometimes lengthy calculations performed after
                 in Jalview 2.8.1</strong>
             </li>
             <li>'Standard Databases' will check sequences against
-              the EBI databases plus any active DAS sequence sources<</li>
+              the EBI databases plus any active DAS sequence sources</li>
           </ul> Other sub-menus allow you to pick a specific source to query
           - sources are listed alphabetically according to their
           nickname.
index 8032348..c7a1c87 100755 (executable)
             window.
         </em><br></li>
       </ul></li>
-    <li><strong>Calculate Tree </strong> <br> <em>Functions
-        for calculating trees on the alignment or the currently selected
-        region. See <a href="../calculations/tree.html">calculating
-          trees</a>.
-    </em>
-      <ul>
-        <li><strong>Neighbour Joining Using PAM250<br>
-        </strong></li>
-        <li><strong>Neighbour Joining Using Sequence
-            Feature Similarity</strong></li>
-        <li><strong>Neighbour Joining Using Blosum62<br>
-        </strong></li>
-        <li><strong>Neighbour Joining Using % Identity</strong></li>
-        <li><strong>Average Distance Using PAM250<br>
-        </strong></li>
-        <li><strong>Average Distance Using Sequence
-            Feature Similarity</strong></li>
-        <li><strong>Average Distance Using Blosum62</strong></li>
-        <li><strong>Average Distance Using % Identity</strong></li>
-      </ul></li>
+    <li><strong>Calculate Tree or PCA ...</strong> <br> <em>Opens the 
+    <a href="../calculations/calculations.html">calculations dialog</a> for
+        for calculating <a href="../calculations/tree.html">trees</a> or
+         <a href="../calculations/pca.html">principle component analysis 
+         plots</a> on the alignment or the currently selected
+        region. 
+      </em><br>
+    </li>
     <li><strong>Pairwise Alignments</strong><br> <em>Applies
         Smith and Waterman algorithm to selected sequences. See <a
         href="../calculations/pairwise.html">pairwise
           alignments</a>.
     </em><br></li>
-    <li><strong>Principal Component Analysis</strong><br> <em>Shows
-        a spatial clustering of the sequences based on similarity scores
-        calculated over the alignment.. See <a
-        href="../calculations/pca.html">Principal Component
-          Analysis</a>.
-    </em> <br></li>
     <li><strong>Extract Scores ... (optional)</strong><br> <em>This
         option is only visible if Jalview detects one or more
         white-space separated values in the description line of the
index e39a4c1..ea9bbf5 100755 (executable)
 ul {
   /* remove bullets, narrower indent */
   list-style-type: none;
-  margin:0;
+  margin: 0;
   padding-left: 10px;
   padding-bottom: 4px;
 }
 
 li {
   /* separate the items from eachother */
-   margin-left: -3px;
-   padding-bottom: 3px;
-   padding-left: 6px;   
+  margin-left: -3px;
+  padding-bottom: 3px;
+  padding-left: 6px;
 }
+
 li:before {
   /*   doesnt get processed in javahelp */
   content: '\00b7 ';
   padding: 3px;
   margin-left: -14px;
 }
-
 </style>
 </head>
 <body>
@@ -70,18 +70,55 @@ li:before {
     <tr>
       <td width="60" nowrap>
         <div align="center">
-          <strong><a name="Jalview.2.10.2">2.10.2</a><br />
-            <em>20/6/2017</em></strong>
+          <strong><a name="Jalview.2.10.2">2.10.2</a><br /> <em>8/8/2017</em></strong>
         </div>
       </td>
       <td><div align="left">
           <em>General</em>
           <ul>
-          <li><!-- JAL-2360,JAL-2371, -->More robust colours and shader model for alignments and groups</li>
-          <li><!--  JAL-384 -->Custom shading schemes created via groovy scripts</li>
-          <li><!--  JAL-2491 -->linked scrolling of CDS/Protein views via Overview or sequence motif search operations</li>
-          <li><!--  JAL-2526 -->Efficiency improvements for interacting with alignment and overview windows</li>
-          <li><!-- JAL-2388 -->Hidden columns and sequences can be omitted in Overview</li>
+            <li>
+              <!-- JAL-2379 -->Revised implementation of PCA for speed
+              and memory efficiency (~30x faster)
+            </li>
+            <li>
+              <!-- JAL-2403 -->Revised implementation of sequence
+              similarity scores as used by Tree, PCA, Shading Consensus
+              and other calculations
+              <ul>
+                <li>
+                  <!-- JAL-2416 -->Score matrices are stored as resource
+                  files within the Jalview codebase
+                <li>
+                  <!-- JAL-2500 -->Trees computed on Sequence Feature
+                  Similarity may have different topology due to
+                  increased precision
+                </li>
+              </ul>
+            </li>
+            <li>
+              <!-- JAL-1632 -->Tree/PCA calculation menu items merged to
+              a calculation dialog box
+            </li>
+            <li>
+              <!-- JAL-2360,JAL-2371, -->More robust colours and shader
+              model for alignments and groups
+            </li>
+            <li>
+              <!--  JAL-384 -->Custom shading schemes created via groovy
+              scripts
+            </li>
+            <li>
+              <!--  JAL-2491 -->linked scrolling of CDS/Protein views
+              via Overview or sequence motif search operations
+            </li>
+            <li>
+              <!--  JAL-2526 -->Efficiency improvements for interacting
+              with alignment and overview windows
+            </li>
+            <li>
+              <!-- JAL-2388 -->Hidden columns and sequences can be
+              omitted in Overview
+            </li>
             <li>
               <!-- JAL-2535 -->Posterior probability annotation from
               Stockholm files imported as sequence associated annotation
@@ -91,19 +128,74 @@ li:before {
               extension when importing structure files without embedded
               names or PDB accessions
             </li>
-            <li><!-- JAL-2547 -->Amend sequence features dialog box can be opened by double clicking gaps within sequence feature extent</li>
+            <li>
+              <!-- JAL-2547 -->Amend sequence features dialog box can be
+              opened by double clicking gaps within sequence feature
+              extent
+            </li>
+            <li>
+              <!-- JAL-2631 -->Graduated feature colour style example
+              included in the example feature file
+            </li>
+            <li>
+              <!-- JAL-1933 -->Occupancy annotation row shows number of
+              ungapped positions in each column of the alignment.
+            </li>
+            <li>
+              <!-- JAL-2533 -->File extension pruned from Sequence ID
+              for sequences derived from structure files without
+              embedded database accession
+            </li>
+            <li>
+              <!-- JAL-1476 -->Status bar message shown when not enough
+              aligned positions were available to create a 3D structure
+              superposition.
+            </li>
+            <li>
+              <!-- JAL-2507 -->More robust per-sequence positional
+              annotation input/output via stockholm flatfile
+            </li>
+
           </ul>
           <em>Application</em>
           <ul>
             <li>
-              <!-- JAL-2447 -->
-              Experimental Features Checkbox in Desktop's Tools
-              menu to hide or show untested features in the application.
+              <!-- JAL-2447 --> Experimental Features Checkbox in
+              Desktop's Tools menu to hide or show untested features in
+              the application.
+            </li>
+            <li>
+              <!-- JAL-1476 -->Warning in alignment status bar when
+              there are not enough columns to superimpose structures in
+              Chimera
+            </li>
+            <li>
+              <!-- JAL-1596 -->Faster Chimera/Jalview communication by
+              file-based command exchange
+            </li>
+            <li>
+              <!-- JAL-2316, -->URLs for viewing database
+              cross-references provided by identifiers.org and the
+              EMBL-EBI's MIRIAM DB
+            </li>
+            <li>
+              <!-- JAL-2549 -->Updated JABAWS client to v2.2
+            </li>
+            <li>
+              <!-- JAL-2416 -->Drag and drop load of AAIndex and NCBI
+              format sequence substitution matrices
+            </li>
+            <li>
+              <!-- JAL-2375 -->Structure chooser automatically shows
+              Cached Structures rather than querying the PDBe if
+              structures are already available for sequences
+            </li>
+            <li>
+              <!-- JAL-2520 -->Structures imported via URL are cached in
+              the Jalview project rather than downloaded again when the
+              project is reopened.
             </li>
-            <li><!-- JAL-1476 -->Warning in alignment status bar when there are not enough columns to superimpose structures in Chimera</li>
-          <li><!-- JAL-1596 -->Faster Chimera/Jalview communication by file-based command exchange</li>  
-          <li><!-- JAL-2316, -->URLs for viewing database cross-references provided by identifiers.org and the EMBL-EBI's MIRIAM DB</li>
-          <li><!-- JAL-2549 -->Updated JABAWS client to v2.2</li>
+
           </ul>
           <em>Experimental features</em>
           <ul>
@@ -115,20 +207,49 @@ li:before {
           </ul>
           <em>Applet</em>
           <ul>
-          <li><!--  --></li>
+            <li>
+              <!--  -->
+            </li>
           </ul>
           <em>Test Suite</em>
-          <li><!--  JAL-2474 -->Added PrivilegedAccessor to test suite</li>
-          <li><!-- JAL-2326 -->Prevent or clear modal dialogs raised during tests</li>
-          <li><!--  -->  
+          <ul>
+            <li>
+              <!--  JAL-2474 -->Added PrivilegedAccessor to test suite
+            </li>
+            <li>
+              <!-- JAL-2326 -->Prevent or clear modal dialogs raised
+              during tests
+            </li>
+            <li>
+              <!-- JAL-2485, -->External service integration tests for
+              Uniprot REST Free Text Search Client
+            </li>
+            <li>
+              <!--  --> <em>Scripting</em>
+              <ul>
+                <li>
+                  <!-- JAL-2344 -->FileFormatI interface for describing
+                  and identifying file formats (instead of String
+                  constants)
+                </li>
+                <li>
+                  <!-- JAL-2228 -->FeatureCounter script refactored for
+                  efficiency when counting all displayed features (not
+                  backwards compatible with 2.10.1)
+                </li>
+                <li></li>
+
+
+              </ul>
           </ul>
-          </div></td><td><div align="left">
+        </div></td>
+      <td><div align="left">
           <em>General</em>
           <ul>
             <li>
               <!-- JAL-2398, -->Fixed incorrect value in BLOSUM 62 score
-              matrix - C->R should be '-3'<br />Old matrix restored with
-              this one-line groovy script:<br />jalview.analysis.scoremodels.ScoreModels.instance.BLOSUM62.@matrix[4][1]=3
+              matrix - C->R should be '-3'<br />Old matrix restored
+              with this one-line groovy script:<br />jalview.analysis.scoremodels.ScoreModels.instance.BLOSUM62.@matrix[4][1]=3
             </li>
             <li>
               <!-- JAL-2397 -->Fixed Jalview's treatment of gaps in PCA
@@ -146,66 +267,380 @@ li:before {
               jalview.viewmodel.PCAModel.scoreGapAsAny=false // to
               restore 2.10.2 mode
             </li>
-            <li><!-- JAL-2346 -->Reopening Colour by annotation dialog doesn't reselect a specific sequence's associated annotation after it was used for colouring a view</li>
-          <li><!-- JAL-2430 -->Hidden regions in alignment views are not coloured in linked structure views</li>
-          <li><!-- JAL-2419 -->Current selection lost if popup menu opened on a region of alignment without groups</li>
-          <li><!-- JAL-2374 -->Popup menu not always shown for regions of an alignment with overlapping groups</li> 
-          <li><!-- JAL-2310 -->Finder double counts if both a sequence's name and description match</li>
-          <li><!-- JAL-2370 -->Hiding column selection containing two hidden regions results in incorrect hidden regions</li>
-          <li><!-- JAL-2377 -->PCA calculation could hang when generating output report when working with highly redundant alignments</li>
-          <li><!-- JAL-2365 -->Cannot configure feature colours with lightGray or darkGray via features file</li>
-          <li><!-- JAL-2421 -->Overview window visible region moves erratically when hidden rows or columns are present</li>
-          <li><!-- JAL-2362 -->Per-residue colourschemes applied via the Structure Viewer's colour menu don't correspond to sequence colouring</li>  
-          <li><!-- JAL-2405 -->Protein specific colours only offered in colour and group colour menu for protein alignments</li>
-          <li><!-- JAL-2386 -->'Apply to all groups' setting when changing colour does not apply Conservation slider value to all groups</li>
-          <li><!-- JAL-2385 -->Colour threshold slider doesn't update to reflect currently selected view or group's shading thresholds</li>
-          <li><!-- JAL-2373 -->Percentage identity and conservation menu items do not show a tick or allow shading to be disabled</li>
-          <li><!-- JAL-2385 -->Conservation shading or PID threshold lost when base colourscheme changed if slider not visible</li>
-          <li><!-- JAL-2547 -->Sequence features shown in tooltip for gaps before start of features</li>
-          <li><!-- JAL-2576 -->Very large alignments take a long time to load</li>
-          <li><!-- JAL-2590 -->Cannot load Newick trees from eggnog ortholog database</li>
+            <li>
+              <!-- JAL-2424 -->Fixed off-by-one bug that affected
+              scaling of branch lengths for trees computed using
+              Sequence Feature Similarity.
+            </li>
+            <li>
+              <!-- JAL-2346 -->Reopening Colour by annotation dialog
+              doesn't reselect a specific sequence's associated
+              annotation after it was used for colouring a view
+            </li>
+            <li>
+              <!-- JAL-2430 -->Hidden regions in alignment views are not
+              coloured in linked structure views
+            </li>
+            <li>
+              <!-- JAL-2419 -->Current selection lost if popup menu
+              opened on a region of alignment without groups
+            </li>
+            <li>
+              <!-- JAL-2374 -->Popup menu not always shown for regions
+              of an alignment with overlapping groups
+            </li>
+            <li>
+              <!-- JAL-2310 -->Finder double counts if both a sequence's
+              name and description match
+            </li>
+            <li>
+              <!-- JAL-2370 -->Hiding column selection containing two
+              hidden regions results in incorrect hidden regions
+            </li>
+            <li>
+              <!-- JAL-2377 -->PCA calculation could hang when
+              generating output report when working with highly
+              redundant alignments
+            </li>
+            <li>
+              <!-- JAL-2365 -->Cannot configure feature colours with
+              lightGray or darkGray via features file
+            </li>
+            <li>
+              <!-- JAL-2421 -->Overview window visible region moves
+              erratically when hidden rows or columns are present
+            </li>
+            <li>
+              <!-- JAL-2362 -->Per-residue colourschemes applied via the
+              Structure Viewer's colour menu don't correspond to
+              sequence colouring
+            </li>
+            <li>
+              <!-- JAL-2405 -->Protein specific colours only offered in
+              colour and group colour menu for protein alignments
+            </li>
+            <li>
+              <!-- JAL-2386 -->'Apply to all groups' setting when
+              changing colour does not apply Conservation slider value
+              to all groups
+            </li>
+            <li>
+              <!-- JAL-2385 -->Colour threshold slider doesn't update to
+              reflect currently selected view or group's shading
+              thresholds
+            </li>
+            <li>
+              <!-- JAL-2373 -->Percentage identity and conservation menu
+              items do not show a tick or allow shading to be disabled
+            </li>
+            <li>
+              <!-- JAL-2385 -->Conservation shading or PID threshold
+              lost when base colourscheme changed if slider not visible
+            </li>
+            <li>
+              <!-- JAL-2547 -->Sequence features shown in tooltip for
+              gaps before start of features
+            </li>
+            <li>
+              <!-- JAL-2576 -->Very large alignments take a long time to
+              load
+            </li>
+            <li>
+              <!-- JAL-2623 -->Graduated feature colour threshold not
+              restored to UI when feature colour is edited
+            </li>
+            <li>
+              <!-- JAL-2624 -->Feature colour thresholds not respected
+              when rendered on overview and structures when opacity at
+              100%
+            </li>
+            <li>
+              <!-- JAL-2630 -->Structure and alignment overview update
+              as graduate feature colour settings are modified via the
+              dialog box
+            </li>
+            <li>
+              <!-- JAL-147 -->Vertical scrollbar jumps one page-width at
+              a time when scrolling vertically in wrapped mode.
+            </li>
+            <li>
+              <!-- JAL-2034 -->Overview window doesn't always update
+              when a group defined on the alignment is resized
+            </li>
+            <li>
+              <!-- JAL-2605 -->Mouseovers on left/right scale region in
+              wrapped view result in positional status updates
+            </li>
+            <li>
+              <!-- JAL-2563 -->Status bar shows position for ambiguous
+              amino acid and nucleotide symbols
+            </li>
+            <li>
+              <!-- JAL-2602 -->Copy consensus sequence failed if
+              alignment included gapped columns
+            </li>
+            <li>
+              <!-- JAL-2589 -->User defined gap colour not shown in
+              overview when features overlaid on alignment
+            </li>
+            <li>
+              <!-- JAL-2473 -->Minimum size set for Jalview windows so
+              widgets don't permanently disappear
+            </li>
+            <li>
+              <!-- JAL-2503 -->Cannot select or filter quantitative
+              annotation that are shown only as column labels (e.g.
+              T-Coffee column reliability scores)
+            </li>
+            <li>
+              <!-- JAL-2589 -->Gap colours in user-defined colourschemes
+              are not shown
+            </li>
+            <li>
+              <!-- JAL-2594 -->Exception thrown if trying to create a
+              sequence feature on gaps only
+            </li>
+            <li>
+              <!-- JAL-2544 --> Sort by features includes features to
+              right of selected region when gaps present on right-hand
+              boundary
+            </li>
+            <li>
+              <!-- JAL-2504 -->Features created with 'New feature'
+              button from a Find inherit previously defined feature type
+              rather than the Find query string
+            </li>
+            <li>
+              <!-- JAL-2423  -->incorrect title in output window when
+              exporting tree calculated in Jalview
+            </li>
+            <li>
+              <!-- JAL-2507 -->Per-sequence RNA secondary structures
+              added after a sequence was imported are not written to
+              Stockholm File
+            </li>
+            <li>
+              <!-- JAL-2509 -->WUSS notation for simple pseudoknots lost
+              when importing RNA secondary structure via Stockholm
+            </li>
+            <li>
+              <!-- JAL-2509 -->Secondary structure arrows for [] and {}
+              not shown in correct direction for simple pseudoknots
+            </li>
+            <li>
+              <!-- JAL-2437 -->Hiding sequences at bottom of alignment
+              and then revealing them reorders sequences on the
+              alignment
+            </li>
+            <li>
+              <!-- JAL-964 -->Group panel in sequence feature settings
+              doesn't update to reflect available set of groups after
+              interactively adding or modifying features
+            </li>
+            <li>
+              <!-- JAL-2225 -->Sequence Database chooser unusable on
+              Linux
+            </li>
+            <li>
+              <!-- JAL -->
+            </li>
+            <li>
+              <!-- JAL -->
+            </li>
+            <li>
+              <!-- JAL -->
+            </li>
+          </ul>
+          <strong>Documentation</strong>
+          <ul>
+            <li>
+              <!-- JAL-2339 -->Release notes reformatted for readibility
+              with the built-in Java help viewer
+            </li>
+            <li>
+              <!-- JAL-1644 -->Find documentation updated with 'search
+              sequence description' option
+            </li>
           </ul>
           <em>Application</em>
           <ul>
-          <li><!-- JAL-2401 -->Easier creation of colours for all 'Lower case' residues (button in colourscheme editor debugged and new documentation and tooltips added)</li> 
-          <li><!-- JAL-2399-->Text colour threshold's 'Cancel' button doesn't restore group-specific text colour thresholds</li>
-          <li><!-- JAL-2243 -->Feature settings panel does not update as new features are added to alignment</li> 
-          <li><!-- JAL-2436 -->Structure viewer's View -> Colour By view selection menu changes colours of alignment views</li>
-          <li><!--  JAL-2366 -->Proxy server address and port always appear enabled in Preferences->Connections</li>
-          <li><!-- JAL-2426 -->Spurious exceptions in console raised from alignment calculation workers after alignment has been closed</li>
-          <li><!-- JAL-1608 -->Typo in selection popup menu - Create groups now 'Create Group'</li>
-          <li><!-- JAL-1608 -->CMD/CTRL and G or Shift G for Create/Undefine group doesn't always work</li>
-          <li><!-- JAL-2464 -->Tree Viewer's Print Dialog doesn't get shown again after pressing 'Cancel'</li>
-          <li><!--  JAL-2461 -->DAS registry not found exceptions removed from console output</li>
-          <li><!--  JAL-2383 -->Above PID colour threshold not recovered when alignment view imported from project</li> 
-          <li><!-- JAL-2465 -->No mappings generated between structure and sequences extracted from structure files imported via URL</li>
+            <li>
+              <!-- JAL-2225 -->Sequence Database chooser doesn't show
+              available databases panel on Linux
+            </li>
+            <li>
+              <!-- JAL-2519 -->EnsemblGenomes example failing after
+              release of Ensembl v.88
+            </li>
+            <li>
+              <!-- JAL-2361 -->User Defined Colours not added to Colour
+              menu
+            </li>
+            <li>
+              <!-- JAL-2401 -->Easier creation of colours for all 'Lower
+              case' residues (button in colourscheme editor debugged and
+              new documentation and tooltips added)
+            </li>
+            <li>
+              <!-- JAL-2399-->Text colour threshold's 'Cancel' button
+              doesn't restore group-specific text colour thresholds
+            </li>
+            <li>
+              <!-- JAL-2243 -->Feature settings panel does not update as
+              new features are added to alignment
+            </li>
+            <li>
+              <!-- JAL-2532 -->Cancel in feature settings reverts
+              changes to feature colours via the Amend features dialog
+            </li>
+            <li>
+              <!-- JAL-2506 -->Null pointer exception when attempting to
+              edit graduated feature colour via amend features dialog
+              box
+            </li>
+            <li>
+              <!-- JAL-2436 -->Structure viewer's View -> Colour By view
+              selection menu changes colours of alignment views
+            </li>
+            <li>
+              <!--  JAL-2366 -->Proxy server address and port always
+              appear enabled in Preferences->Connections
+            </li>
+            <li>
+              <!-- JAL-2426 -->Spurious exceptions in console raised
+              from alignment calculation workers after alignment has
+              been closed
+            </li>
+            <li>
+              <!-- JAL-1608 -->Typo in selection popup menu - Create
+              groups now 'Create Group'
+            </li>
+            <li>
+              <!-- JAL-1608 -->CMD/CTRL and G or Shift G for
+              Create/Undefine group doesn't always work
+            </li>
+            <li>
+              <!-- JAL-2464 -->Tree Viewer's Print Dialog doesn't get
+              shown again after pressing 'Cancel'
+            </li>
+            <li>
+              <!--  JAL-2461 -->DAS registry not found exceptions
+              removed from console output
+            </li>
+            <li>
+              <!--  JAL-2383 -->Above PID colour threshold not recovered
+              when alignment view imported from project
+            </li>
+            <li>
+              <!-- JAL-2520,JAL-2465 -->No mappings generated between
+              structure and sequences extracted from structure files
+              imported via URL and viewed in Jmol
+            </li>
             <li>
               <!-- JAL-2520 -->Structures loaded via URL are saved in
               Jalview Projects rather than fetched via URL again when
               the project is loaded and the structure viewed
             </li>
-            <li><!-- JAL-1256 -->Trackpad horizontal scroll gesture adjusts start position in wrap mode</li>
-            <li><!-- JAL-2563 -->Status bar doesn't show positions for ambiguous amino acids</li>
-            <li><!-- JAL-2291 -->Hide insertions in PopUp menu excludes gaps in selection, current sequence and only within selected columns</li> 
+            <li>
+              <!-- JAL-1256 -->Trackpad horizontal scroll gesture
+              adjusts start position in wrap mode
+            </li>
+            <li>
+              <!-- JAL-2563 -->Status bar doesn't show positions for
+              ambiguous amino acids
+            </li>
+            <li>
+              <!-- JAL-2291 -->Hide insertions in PopUp menu excludes
+              gaps in selection, current sequence and only within
+              selected columns
+            </li>
+            <li>
+              <!-- JAL-2582 -->Cannot retrieve protein products from
+              Ensembl by Peptide ID
+            </li>
+            <li>
+              <!-- JAL-2431 -->cDNA Consensus annotation not shown in
+              CDS/Protein view after CDS sequences added for aligned
+              proteins
+            </li>
+            <li>
+              <!-- JAL-2482, JAL-2487 -->Incorrect PDB-Uniprot mappings
+              created from SIFTs, and spurious 'Couldn't open structure
+              in Chimera' errors raised after April 2017 update (problem
+              due to 'null' string rather than empty string used for
+              residues with no corresponding PDB mapping).
+            </li>
+
+
           </ul>
           <em>Applet</em>
           <ul>
-          <li><!-- JAL-2442 -->Features not rendered as transparent on overview or linked structure view</li> 
-          <li><!--  JAL-2372 -->Colour group by conservation doesn't work (since 2.8)</li>
-          <li><!-- JAL-2517 -->Hitting Cancel after applying user-defined colourscheme doesn't restore original colourscheme</li>
+            <li>
+              <!-- JAL- -->
+            </li>
+            <li>
+              <!-- JAL-2468 -->Switching between Nucleotide and Protein
+              score models doesn't always result in an updated PCA plot
+            </li>
+            <li>
+              <!-- JAL-2442 -->Features not rendered as transparent on
+              overview or linked structure view
+            </li>
+            <li>
+              <!--  JAL-2372 -->Colour group by conservation doesn't
+              work (since 2.8)
+            </li>
+            <li>
+              <!-- JAL-2517 -->Hitting Cancel after applying
+              user-defined colourscheme doesn't restore original
+              colourscheme
+            </li>
           </ul>
           <em>New Known Issues</em>
           <ul>
-          <li><!--  JAL-2566 -->Protein/CDS view scrolling not always in phase after a sequence motif find operation</li>
-          <li><!-- JAL-2550 -->Importing annotation file with rows containing just upper and lower case letters are interpreted as WUSS rna secondary structure symbols</li>  
+            <li>
+              <!--  JAL-2566 -->Protein/CDS view scrolling not always in
+              phase after a sequence motif find operation
+            </li>
+            <li>
+              <!-- JAL-2550 -->Importing annotation file with rows
+              containing just upper and lower case letters are
+              interpreted as WUSS rna secondary structure symbols
+            </li>
+            <li>
+              <!-- JAL-2590 -->Cannot load Newick trees from eggnog
+              ortholog database
+            </li>
+            <li>
+              <!-- JAL-2468 -->Status bar shows 'Marked x columns
+              containing features of type Highlight' when 'B" is pressed
+              to mark columns containing highlighted regions.
+            </li>
+          </ul>
+          <em>Test Suite</em>
+          <ul>
+            <li>
+              <!-- JAL-2314 -->Unit test failure:
+              jalview.ws.jabaws.RNAStructExportImport setup fails
+            </li>
+            <li>
+              <!-- JAL-2307 -->Unit test failure:
+              jalview.ws.sifts.SiftsClientTest due to compatibility
+              problems with deep array comparison equality asserts in
+              successive versions of TestNG
+            </li>
+            <li>
+              <!-- JAL-2479 -->Relocated StructureChooserTest and
+              ParameterUtilsTest Unit tests to Network suite
+            </li>
+
           </ul>
-          
-          </div>
+        </div>
+    
     <tr>
       <td width="60" nowrap>
         <div align="center">
-          <strong><a name="Jalview.2.10.1">2.10.1</a><br />
-            <em>29/11/2016</em></strong>
+          <strong><a name="Jalview.2.10.1">2.10.1</a><br /> <em>29/11/2016</em></strong>
         </div>
       </td>
       <td><div align="left">
@@ -216,7 +651,8 @@ li:before {
               for all consensus calculations
             </li>
             <li>
-              <!-- JAL-2177 -->Jmol updated to version 14.6.4 (released 3rd Oct 2016)
+              <!-- JAL-2177 -->Jmol updated to version 14.6.4 (released
+              3rd Oct 2016)
             </li>
             <li>Updated Jalview's Certum code signing certificate
               for 2016-2017</li>
@@ -244,9 +680,9 @@ li:before {
             </li>
             <li>
               <!-- JAL-1738-->New keystroke (B) and Select highlighted
-              columns menu item to mark columns containing
-              highlighted regions (e.g. from structure selections or results
-              of a Find operation)
+              columns menu item to mark columns containing highlighted
+              regions (e.g. from structure selections or results of a
+              Find operation)
             </li>
             <li>
               <!-- JAL-2284-->Command line option for batch-generation
@@ -346,73 +782,78 @@ li:before {
               lysozyme results in a PDB Client error dialog box
             </li>
             <li>
-            <!-- JAL-2319 -->Structure View's mapping report switched ranges for PDB and sequence for SIFTS</li> 
-            <!-- JAL-2319 -->SIFTS 'Not_Observed' residues mapped to non-existant coordindate data</li> 
+              <!-- JAL-2319 -->Structure View's mapping report switched
+              ranges for PDB and sequence for SIFTS
+            </li>
+            <!-- JAL-2319 -->
+            SIFTS 'Not_Observed' residues mapped to non-existant
+            coordindate data
+            </li>
           </ul>
-<!--           <em>New Known Issues</em>
+          <!--           <em>New Known Issues</em>
           <ul>
             <li></li>
           </ul> -->
         </div>
       </td>
     </tr>
-      <td width="60" nowrap>
-        <div align="center">
-          <strong><a name="Jalview.2.10.0b1">2.10.0b1</a><br />
-            <em>25/10/2016</em></strong>
-        </div>
-      </td>
-      <td><em>Application</em>
+    <td width="60" nowrap>
+      <div align="center">
+        <strong><a name="Jalview.2.10.0b1">2.10.0b1</a><br />
+          <em>25/10/2016</em></strong>
+      </div>
+    </td>
+    <td><em>Application</em>
+      <ul>
+        <li>3D Structure chooser opens with 'Cached structures'
+          view if structures already loaded</li>
+        <li>Progress bar reports models as they are loaded to
+          structure views</li>
+      </ul></td>
+    <td>
+      <div align="left">
+        <em>General</em>
         <ul>
-          <li>3D Structure chooser opens with 'Cached structures'
-            view if structures already loaded</li>
-          <li>Progress bar reports models as they are loaded to
-            structure views</li>
-        </ul></td>
-      <td>
-        <div align="left">
-          <em>General</em>
-          <ul>
-            <li>Colour by conservation always enabled and no tick
-              shown in menu when BLOSUM or PID shading applied</li>
-            <li>FER1_ARATH and FER2_ARATH labels were switched in
-              example sequences/projects/trees</li>
-          </ul>
-          <em>Application</em>
-          <ul>
-            <li>Jalview projects with views of local PDB structure
-              files saved on Windows cannot be opened on OSX</li>
-            <li>Multiple structure views can be opened and
-              superposed without timeout for structures with multiple
-              models or multiple sequences in alignment</li>
-            <li>Cannot import or associated local PDB files without
-              a PDB ID HEADER line</li>
-            <li>RMSD is not output in Jmol console when
-              superposition is performed</li>
-            <li>Drag and drop of URL from Browser fails for Linux
-              and OSX versions earlier than El Capitan</li>
-            <li>ENA client ignores invalid content from ENA server</li>
-            <li>Exceptions are not raised in console when ENA
-              client attempts to fetch non-existent IDs via Fetch DB
-              Refs UI option</li>
-            <li>Exceptions are not raised in console when a new
-              view is created on the alignment</li>
-            <li>OSX right-click fixed for group selections:
-              CMD-click to insert/remove gaps in groups and CTRL-click
-              to open group pop-up menu</li>
-          </ul>
-          <em>Build and deployment</em>
-          <ul>
-            <li>URL link checker now copes with multi-line anchor
-              tags</li>
-          </ul>
-          <em>New Known Issues</em>
-          <ul>
-            <li>Drag and drop from URL links in browsers do not
-              work on Windows</li>
-          </ul>
-        </div>
-      </td>
+          <li>Colour by conservation always enabled and no tick
+            shown in menu when BLOSUM or PID shading applied</li>
+          <li>FER1_ARATH and FER2_ARATH labels were switched in
+            example sequences/projects/trees</li>
+        </ul>
+        <em>Application</em>
+        <ul>
+          <li>Jalview projects with views of local PDB structure
+            files saved on Windows cannot be opened on OSX</li>
+          <li>Multiple structure views can be opened and superposed
+            without timeout for structures with multiple models or
+            multiple sequences in alignment</li>
+          <li>Cannot import or associated local PDB files without a
+            PDB ID HEADER line</li>
+          <li>RMSD is not output in Jmol console when superposition
+            is performed</li>
+          <li>Drag and drop of URL from Browser fails for Linux and
+            OSX versions earlier than El Capitan</li>
+          <li>ENA client ignores invalid content from ENA server</li>
+          <li>Exceptions are not raised in console when ENA client
+            attempts to fetch non-existent IDs via Fetch DB Refs UI
+            option</li>
+          <li>Exceptions are not raised in console when a new view
+            is created on the alignment</li>
+          <li>OSX right-click fixed for group selections: CMD-click
+            to insert/remove gaps in groups and CTRL-click to open group
+            pop-up menu</li>
+        </ul>
+        <em>Build and deployment</em>
+        <ul>
+          <li>URL link checker now copes with multi-line anchor
+            tags</li>
+        </ul>
+        <em>New Known Issues</em>
+        <ul>
+          <li>Drag and drop from URL links in browsers do not work
+            on Windows</li>
+        </ul>
+      </div>
+    </td>
     </tr>
     <tr>
       <td width="60" nowrap>
@@ -423,8 +864,8 @@ li:before {
       <td><em>General</em>
         <ul>
           <li>
-          <!-- JAL-2124 -->Updated Spanish translations.
-          </li> 
+            <!-- JAL-2124 -->Updated Spanish translations.
+          </li>
           <li>
             <!-- JAL-2164,JAL-1919,JAL-2148 -->Jmol now primary parser
             for importing structure data to Jalview. Enables mmCIF and
@@ -714,7 +1155,7 @@ li:before {
               load even when Consensus calculation is disabled
             </li>
             <li>
-              <!-- JAL-1932 -->Remove right on penultimate column of 
+              <!-- JAL-1932 -->Remove right on penultimate column of
               alignment does nothing
             </li>
           </ul>
@@ -802,7 +1243,8 @@ li:before {
             </li>
             <li>
               <!-- JAL-2036 -->Enable 'Get Cross-References' in menu
-              after fetching cross-references, and restoring from project
+              after fetching cross-references, and restoring from
+              project
             </li>
             <li>
               <!-- JAL-2032 -->Mouseover of a copy of a sequence is not
@@ -867,7 +1309,8 @@ li:before {
               <!-- JAL-2284 -->Unable to read old Jalview projects that
               contain non-XML data added after Jalvew wrote project.
             </li>
-            <li><!-- JAL-2118 -->Newly created annotation row reorders
+            <li>
+              <!-- JAL-2118 -->Newly created annotation row reorders
               after clicking on it to create new annotation for a
               column.
             </li>
@@ -939,9 +1382,12 @@ li:before {
         </ul> <em>Applet</em>
         <ul>
           <li>Split frame example added to applet examples page</li>
-        </ul><em>Build and Deployment</em>
+        </ul> <em>Build and Deployment</em>
         <ul>
-          <li><!--  JAL-1888 -->New ant target for running Jalview's test suite</li>
+          <li>
+            <!--  JAL-1888 -->New ant target for running Jalview's test
+            suite
+          </li>
         </ul></td>
       <td>
         <div align="left">
@@ -1329,10 +1775,10 @@ li:before {
           </li>
 
         </ul> <!--  <em>Applet</em>
-                               <ul>
-                               </ul> <em>General</em>
-                               <ul> 
-                               </ul>--> <em>Deployment and Documentation</em>
+        <ul>
+        </ul> <em>General</em>
+        <ul> 
+        </ul>--> <em>Deployment and Documentation</em>
         <ul>
           <li>2G and 1G options in launchApp have no effect on
             memory allocation</li>
@@ -1540,8 +1986,7 @@ li:before {
             <a href="https://www.certum.eu">Certum</a> to the Jalview
             open source project).
           </li>
-          <li>Jalview SRS links replaced by UniProt and EBI-search
-          </li>
+          <li>Jalview SRS links replaced by UniProt and EBI-search</li>
           <li>Output in Stockholm format</li>
           <li>Allow import of data from gzipped files</li>
           <li>Export/import group and sequence associated line
@@ -2170,11 +2615,6 @@ li:before {
         <ul>
           <li>URL links generated from description line for
             regular-expression based URL links (applet and application)
-
-
-
-
-
           
           <li>Non-positional feature URL links are shown in link
             menu</li>
@@ -2202,8 +2642,8 @@ li:before {
           <li>Enable or disable non-positional feature and database
             references in sequence ID tooltip from View menu in
             application.</li>
-          <!--                 <li>New hidden columns and rows and representatives capabilities
-                       in annotations file (in progress - not yet fully implemented)</li> -->
+          <!--      <li>New hidden columns and rows and representatives capabilities
+      in annotations file (in progress - not yet fully implemented)</li> -->
           <li>Group-associated consensus, sequence logos and
             conservation plots</li>
           <li>Symbol distributions for each column can be exported
@@ -2627,11 +3067,6 @@ li:before {
           <li>Cancel button for DAS Feature Fetching
           <li>PCA and PDB Viewers zoom via mouse roller
           <li>User-defined sub-tree colours and sub-tree selection
-
-
-
-
-
           
           <li>'New Window' button on the 'Output to Text box'
         </ul>
@@ -2646,11 +3081,6 @@ li:before {
           <li>Fixed Remove Empty Columns Bug (empty columns at end
             of alignment)
           <li>Slowed DAS Feature Fetching for increased robustness.
-
-
-
-
-
           
           <li>Made angle brackets in ASCII feature descriptions
             display correctly
@@ -2662,11 +3092,6 @@ li:before {
           <li>WsDbFetch query/result association resolved
           <li>Tree leaf to sequence mapping improved
           <li>Smooth fonts switch moved to FontChooser dialog box.
-
-
-
-
-
           
         </ul>
       </td>
index 4b82179..60769a4 100755 (executable)
     highlights are below.
   </p>
   <ul>
+    <li><strong>New UI, and faster and more configurable
+        implementation for PCA, Neighbour-Joining and UPGMA Trees</strong><br>
+      Menu entries for calculating PCA and different types of tree have
+      been replaced by a single <em>Calculations</em> dialog box. The
+      underlying implementation for the PCA and tree calculations have
+      been made faster and more memory efficient. A new framework has
+      also been created for the score models used to calculate distances
+      between sequences. This framework allows import of substitution
+      matrices in NCBI and AAIndex format, and custom score models to be
+      created via a groovy script.</li>
     <li><strong>Update to JABAWS 2.2</strong><br />Jalview's
       alignment, protein conservation analysis, and protein disorder and
       RNA secondary structure prediction services are now provided by <a
@@ -55,6 +65,9 @@
           (just select the region containing insertions to remove)
           without affecting the rest of the hidden columns.</li>
       </ul></li>
+    <li>Recent search histories for <a
+      href="features/search.html#queryhistory">Find</a> and the free
+      text search system (for querying Uniprot and the PDBe).</li>
   </ul>
   <p>
     <strong><a name="experimental">Experimental Features</a></strong>
         the Chimera viewer's Chimera menu</a> allow positional annotation to
       be exchanged between Chimera and Jalview.</li>
   </ul>
+  <p>
+    <strong>Scripting</strong><br />New <a
+      href="http://www.jalview.org/examples/groovy">groovy examples</a>
+    demonstrate Jalview 2.10.2 APIs for creation of data-driven
+    colourschemes, and custom alignment file handlers. The <a
+      href="groovy/featuresCounter.html">FeatureAnnotationWorker</a>
+    introduced in Jalview 2.10 has also been refactored to allow
+    efficient counting across multiple feature types. Please be aware
+    that feature counter scripts created for earlier versions will not
+    execute in Jalview 2.10.2.
+  </p>
 </body>
 </html>
index 4075e8b..72fa982 100644 (file)
@@ -46,51 +46,81 @@ import java.awt.event.ItemEvent;
 import java.awt.event.ItemListener;
 import java.awt.event.MouseEvent;
 import java.awt.event.MouseListener;
-import java.util.Hashtable;
 
 public class FeatureColourChooser extends Panel implements ActionListener,
         AdjustmentListener, ItemListener, MouseListener
 {
-  JVDialog frame;
+  /*
+   * the absolute min-max range of a feature score is scaled to 
+   * 1000 positions on the colour threshold slider
+   */
+  private static final int SCALE_FACTOR_1K = 1000;
 
-  Frame owner;
+  private JVDialog frame;
 
-  FeatureRenderer fr;
+  private Frame owner;
 
-  FeatureSettings fs = null;
+  private FeatureRenderer fr;
 
-  // AlignmentPanel ap;
+  private FeatureSettings fs = null;
 
-  FeatureColourI cs;
+  private FeatureColourI cs;
 
-  FeatureColourI oldcs;
+  private FeatureColourI oldcs;
 
-  Hashtable oldgroupColours;
-
-  boolean adjusting = false;
+  private boolean adjusting = false;
 
   private float min, max;
 
-  String type = null;
+  private String type = null;
 
   private AlignFrame af = null;
 
-  public FeatureColourChooser(AlignFrame af, String type)
+  private Panel minColour = new Panel();
+
+  private Panel maxColour = new Panel();
+
+  private Choice threshold = new Choice();
+
+  private Scrollbar slider = new Scrollbar(Scrollbar.HORIZONTAL);
+
+  private TextField thresholdValue = new TextField(20);
+
+  private Checkbox thresholdIsMin = new Checkbox();
+
+  private Checkbox colourFromLabel = new Checkbox();
+
+  private GraphLine threshline;
+
+  /**
+   * Constructor given a context AlignFrame and a feature type. This is used
+   * when opening the graduated colour dialog from the Amend Feature dialog.
+   * 
+   * @param alignFrame
+   * @param featureType
+   */
+  public FeatureColourChooser(AlignFrame alignFrame, String featureType)
   {
-    this.af = af;
-    init(af.getSeqcanvas().getFeatureRenderer(), type);
+    this.af = alignFrame;
+    init(alignFrame.getSeqcanvas().getFeatureRenderer(), featureType);
   }
 
-  public FeatureColourChooser(FeatureSettings fsettings, String type)
+  /**
+   * Constructor given a context FeatureSettings and a feature type. This is
+   * used when opening the graduated colour dialog from Feature Settings.
+   * 
+   * @param fsettings
+   * @param featureType
+   */
+  public FeatureColourChooser(FeatureSettings fsettings, String featureType)
   {
     this.fs = fsettings;
-    init(fsettings.fr, type);
-    // this.ap = fsettings.ap;
+    init(fsettings.fr, featureType);
   }
 
-  private void init(FeatureRenderer frenderer, String type)
+  private void init(FeatureRenderer frenderer, String featureType)
   {
-    this.type = type;
+    this.type = featureType;
     fr = frenderer;
     float mm[] = fr.getMinMax().get(type)[0];
     min = mm[0];
@@ -130,7 +160,7 @@ public class FeatureColourChooser extends Panel implements ActionListener,
             : 0));
 
     adjusting = false;
-    changeColour();
+    changeColour(true);
     colourFromLabel.addItemListener(this);
     slider.addAdjustmentListener(this);
     slider.addMouseListener(this);
@@ -143,13 +173,12 @@ public class FeatureColourChooser extends Panel implements ActionListener,
     frame.setVisible(true);
     if (frame.accept)
     {
-      changeColour();
+      changeColour(true);
     }
     else
     {
       // cancel
       reset();
-      PaintRefresher.Refresh(this, fr.getViewport().getSequenceSetId());
       frame.setVisible(false);
     }
   }
@@ -184,9 +213,13 @@ public class FeatureColourChooser extends Panel implements ActionListener,
     thresholdIsMin.addItemListener(this);
 
     this.setLayout(new GridLayout(4, 1));
+    Panel jPanel1 = new Panel();
     jPanel1.setLayout(new FlowLayout());
+    Panel jPanel2 = new Panel();
     jPanel2.setLayout(new FlowLayout());
+    Panel jPanel3 = new Panel();
     jPanel3.setLayout(new GridLayout(1, 1));
+    Panel jPanel4 = new Panel();
     jPanel4.setLayout(new FlowLayout());
     jPanel1.setBackground(Color.white);
     jPanel2.setBackground(Color.white);
@@ -234,32 +267,6 @@ public class FeatureColourChooser extends Panel implements ActionListener,
     this.add(jPanel4);// , java.awt.BorderLayout.CENTER);
   }
 
-  Panel minColour = new Panel();
-
-  Panel maxColour = new Panel();
-
-  Panel jPanel1 = new Panel();
-
-  Panel jPanel2 = new Panel();
-
-  Choice threshold = new Choice();
-
-  Panel jPanel3 = new Panel();
-
-  Panel jPanel4 = new Panel();
-
-  Scrollbar slider = new Scrollbar(Scrollbar.HORIZONTAL);
-
-  TextField thresholdValue = new TextField(20);
-
-  // BorderLayout borderLayout1 = new BorderLayout();
-
-  Checkbox thresholdIsMin = new Checkbox();
-
-  Checkbox colourFromLabel = new Checkbox();
-
-  private GraphLine threshline;
-
   @Override
   public void actionPerformed(ActionEvent evt)
   {
@@ -268,8 +275,13 @@ public class FeatureColourChooser extends Panel implements ActionListener,
       try
       {
         float f = new Float(thresholdValue.getText()).floatValue();
-        slider.setValue((int) (f * 1000));
+        slider.setValue((int) (f * SCALE_FACTOR_1K));
         adjustmentValueChanged(null);
+
+        /*
+         * force repaint of any Overview window or structure
+         */
+        changeColour(true);
       } catch (NumberFormatException ex)
       {
       }
@@ -284,7 +296,7 @@ public class FeatureColourChooser extends Panel implements ActionListener,
     }
     else
     {
-      changeColour();
+      changeColour(true);
     }
   }
 
@@ -293,9 +305,13 @@ public class FeatureColourChooser extends Panel implements ActionListener,
   {
     maxColour.setEnabled(!colourFromLabel.getState());
     minColour.setEnabled(!colourFromLabel.getState());
-    changeColour();
+    changeColour(true);
   }
 
+  /**
+   * Handler called when the value of the threshold slider changes, either by
+   * user action or programmatically
+   */
   @Override
   public void adjustmentValueChanged(AdjustmentEvent evt)
   {
@@ -306,29 +322,32 @@ public class FeatureColourChooser extends Panel implements ActionListener,
     }
   }
 
+  /**
+   * Responds to a change of colour threshold by computing the absolute value
+   * and refreshing the alignment.
+   */
   protected void valueChanged()
   {
     threshline.value = slider.getValue() / 1000f;
     cs.setThreshold(threshline.value);
-    changeColour();
+    changeColour(false);
     PaintRefresher.Refresh(this, fr.getViewport().getSequenceSetId());
-    // ap.paintAlignment(false);
   }
 
   public void minColour_actionPerformed(Color newCol)
   {
     if (newCol == null)
     {
-      UserDefinedColours udc = new UserDefinedColours(this,
+      new UserDefinedColours(this,
               minColour.getBackground(), owner,
-              MessageManager.getString("label.select_colour_minimum_value")); // frame.owner,
+              MessageManager.getString("label.select_colour_minimum_value"));
     }
     else
     {
       minColour.setBackground(newCol);
       minColour.setForeground(newCol);
       minColour.repaint();
-      changeColour();
+      changeColour(true);
     }
 
   }
@@ -337,10 +356,7 @@ public class FeatureColourChooser extends Panel implements ActionListener,
   {
     if (newCol == null)
     {
-
-      // UserDefinedColours udc = new UserDefinedColours(this,
-      // "Select Colour for Maximum Value",maxColour.getBackground(),true);
-      UserDefinedColours udc = new UserDefinedColours(this,
+      new UserDefinedColours(this,
               maxColour.getBackground(), owner,
               MessageManager.getString("label.select_colour_maximum_value"));
     }
@@ -349,11 +365,11 @@ public class FeatureColourChooser extends Panel implements ActionListener,
       maxColour.setBackground(newCol);
       maxColour.setForeground(newCol);
       maxColour.repaint();
-      changeColour();
+      changeColour(true);
     }
   }
 
-  void changeColour()
+  void changeColour(boolean updateOverview)
   {
     // Check if combobox is still adjusting
     if (adjusting)
@@ -361,14 +377,14 @@ public class FeatureColourChooser extends Panel implements ActionListener,
       return;
     }
 
-    int aboveThreshold = AnnotationColourGradient.NO_THRESHOLD;
+    int thresholdOption = AnnotationColourGradient.NO_THRESHOLD;
     if (threshold.getSelectedIndex() == 1)
     {
-      aboveThreshold = AnnotationColourGradient.ABOVE_THRESHOLD;
+      thresholdOption = AnnotationColourGradient.ABOVE_THRESHOLD;
     }
     else if (threshold.getSelectedIndex() == 2)
     {
-      aboveThreshold = AnnotationColourGradient.BELOW_THRESHOLD;
+      thresholdOption = AnnotationColourGradient.BELOW_THRESHOLD;
     }
 
     slider.setEnabled(true);
@@ -379,34 +395,34 @@ public class FeatureColourChooser extends Panel implements ActionListener,
     acg.setColourByLabel(colourFromLabel.getState());
     maxColour.setEnabled(!colourFromLabel.getState());
     minColour.setEnabled(!colourFromLabel.getState());
-    if (aboveThreshold == AnnotationColourGradient.NO_THRESHOLD)
+    if (thresholdOption == AnnotationColourGradient.NO_THRESHOLD)
     {
       slider.setEnabled(false);
       thresholdValue.setEnabled(false);
       thresholdValue.setText("");
     }
 
-    if (aboveThreshold != AnnotationColourGradient.NO_THRESHOLD)
+    if (thresholdOption != AnnotationColourGradient.NO_THRESHOLD)
     {
       adjusting = true;
       acg.setThreshold(threshline.value);
 
-      float range = max * 1000f - min * 1000f;
-
-      slider.setMinimum((int) (min * 1000));
-      slider.setMaximum((int) (max * 1000));
-      slider.setValue((int) (threshline.value * 1000));
+      slider.setMinimum((int) (min * SCALE_FACTOR_1K));
+      slider.setMaximum((int) (max * SCALE_FACTOR_1K));
+      slider.setValue((int) (threshline.value * SCALE_FACTOR_1K));
       thresholdValue.setText(threshline.value + "");
       slider.setEnabled(true);
       thresholdValue.setEnabled(true);
       adjusting = false;
     }
 
-    acg.setAboveThreshold(true);
+    acg.setAboveThreshold(thresholdOption == AnnotationColourGradient.ABOVE_THRESHOLD);
+    acg.setBelowThreshold(thresholdOption == AnnotationColourGradient.BELOW_THRESHOLD);
+
     if (thresholdIsMin.getState()
-            && aboveThreshold != AnnotationColourGradient.NO_THRESHOLD)
+            && thresholdOption != AnnotationColourGradient.NO_THRESHOLD)
     {
-      if (aboveThreshold == AnnotationColourGradient.ABOVE_THRESHOLD)
+      if (thresholdOption == AnnotationColourGradient.ABOVE_THRESHOLD)
       {
         acg = new FeatureColour(acg, threshline.value, max);
       }
@@ -418,16 +434,13 @@ public class FeatureColourChooser extends Panel implements ActionListener,
 
     fr.setColour(type, acg);
     cs = acg;
-    PaintRefresher.Refresh(this, fr.getViewport().getSequenceSetId());
-    // ap.paintAlignment(false);
+    fs.selectionChanged(updateOverview);
   }
 
   void reset()
   {
     fr.setColour(type, oldcs);
-    PaintRefresher.Refresh(this, fr.getViewport().getSequenceSetId());
-    // ap.paintAlignment(true);
-
+    fs.selectionChanged(true);
   }
 
   @Override
@@ -443,16 +456,19 @@ public class FeatureColourChooser extends Panel implements ActionListener,
   @Override
   public void mouseReleased(MouseEvent evt)
   {
-    if (evt.getSource() == minColour || evt.getSource() == maxColour)
+    if (evt.getSource() == minColour)
     {
-      // relay the event
-      actionPerformed(new ActionEvent(evt.getSource(), 1, "Clicked"));
+      minColour_actionPerformed(null);
+    }
+    else if (evt.getSource() == maxColour)
+    {
+      maxColour_actionPerformed(null);
     }
     else
     {
-      PaintRefresher.Refresh(this, fr.getViewport().getSequenceSetId());
+      changeColour(true);
+      // PaintRefresher.Refresh(this, fr.getViewport().getSequenceSetId());
     }
-    // ap.paintAlignment(true);
   }
 
   @Override
index 9d2f601..7d00afd 100755 (executable)
@@ -544,7 +544,7 @@ public class FeatureSettings extends Panel implements ItemListener,
       Checkbox check = (Checkbox) featurePanel.getComponent(i);
       check.setState(!check.getState());
     }
-    selectionChanged();
+    selectionChanged(true);
   }
 
   private ItemListener groupItemListener = new ItemListener()
@@ -567,10 +567,10 @@ public class FeatureSettings extends Panel implements ItemListener,
   @Override
   public void itemStateChanged(ItemEvent evt)
   {
-    selectionChanged();
+    selectionChanged(true);
   }
 
-  void selectionChanged()
+  void selectionChanged(boolean updateOverview)
   {
     Component[] comps = featurePanel.getComponents();
     int cSize = comps.length;
@@ -591,7 +591,7 @@ public class FeatureSettings extends Panel implements ItemListener,
 
     fr.setFeaturePriority(data);
 
-    ap.paintAlignment(true);
+    ap.paintAlignment(updateOverview);
   }
 
   MyCheckbox selectedCheck;
index ccdfee1..456a38c 100755 (executable)
@@ -29,6 +29,7 @@ import jalview.viewmodel.ViewportListenerI;
 
 import java.awt.BorderLayout;
 import java.awt.CheckboxMenuItem;
+import java.awt.Cursor;
 import java.awt.Dimension;
 import java.awt.Panel;
 import java.awt.PopupMenu;
@@ -57,6 +58,8 @@ public class OverviewPanel extends Panel implements Runnable,
 
   private boolean updateRunning = false;
 
+  private boolean draggingBox = false;
+
   public OverviewPanel(AlignmentPanel alPanel)
   {
     this.av = alPanel.av;
@@ -118,28 +121,62 @@ public class OverviewPanel extends Panel implements Runnable,
   @Override
   public void mouseMoved(MouseEvent evt)
   {
+    if (od.isPositionInBox(evt.getX(), evt.getY()))
+    {
+      // display drag cursor at mouse position
+      setCursor(Cursor.getPredefinedCursor(Cursor.MOVE_CURSOR));
+    }
+    else
+    {
+      // reset cursor
+      setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
+    }
   }
 
   @Override
   public void mousePressed(MouseEvent evt)
   {
-    mouseAction(evt);
+    if ((evt.getModifiers()
+            & InputEvent.BUTTON3_MASK) == InputEvent.BUTTON3_MASK)
+    {
+      if (!Platform.isAMac())
+      {
+        showPopupMenu(evt);
+      }
+    }
+    else
+    {
+      if (!od.isPositionInBox(evt.getX(), evt.getY()))
+      {
+        // don't do anything if the mouse press is in the overview's box
+        // (wait to see if it's a drag instead)
+        // otherwise update the viewport
+        od.updateViewportFromMouse(evt.getX(), evt.getY(),
+                av.getAlignment().getHiddenSequences(),
+                av.getAlignment().getHiddenColumns());
+      }
+      else
+      {
+        draggingBox = true;
+        od.setDragPoint(evt.getX(), evt.getY(),
+                av.getAlignment().getHiddenSequences(),
+                av.getAlignment().getHiddenColumns());
+      }
+    }
   }
 
   @Override
   public void mouseReleased(MouseEvent evt)
   {
-    mouseAction(evt);
+    if (draggingBox)
+    {
+      draggingBox = false;
+    }
   }
 
   @Override
   public void mouseDragged(MouseEvent evt)
   {
-    mouseAction(evt);
-  }
-
-  private void mouseAction(MouseEvent evt)
-  {
     if ((evt.getModifiers() & InputEvent.BUTTON3_MASK) == InputEvent.BUTTON3_MASK)
     {
       if (!Platform.isAMac())
@@ -149,8 +186,20 @@ public class OverviewPanel extends Panel implements Runnable,
     }
     else
     {
-      od.updateViewportFromMouse(evt.getX(), evt.getY(), av.getAlignment()
-              .getHiddenSequences(), av.getAlignment().getHiddenColumns());
+      if (draggingBox)
+      {
+        // set the mouse position as a fixed point in the box
+        // and drag relative to that position
+        od.adjustViewportFromMouse(evt.getX(), evt.getY(),
+                av.getAlignment().getHiddenSequences(),
+                av.getAlignment().getHiddenColumns());
+      }
+      else
+      {
+        od.updateViewportFromMouse(evt.getX(), evt.getY(),
+                av.getAlignment().getHiddenSequences(),
+                av.getAlignment().getHiddenColumns());
+      }
       ap.paintAlignment(false);
     }
   }
index 7c6fad0..32507fe 100755 (executable)
@@ -27,6 +27,7 @@ import java.awt.Component;
 import java.util.Enumeration;
 import java.util.Hashtable;
 import java.util.List;
+import java.util.Map;
 import java.util.Vector;
 
 /**
@@ -37,7 +38,7 @@ import java.util.Vector;
  */
 public class PaintRefresher
 {
-  static Hashtable components;
+  static Map<String, Vector<Component>> components;
 
   /**
    * DOCUMENT ME!
@@ -51,12 +52,12 @@ public class PaintRefresher
   {
     if (components == null)
     {
-      components = new Hashtable();
+      components = new Hashtable<String, Vector<Component>>();
     }
 
     if (components.containsKey(seqSetId))
     {
-      Vector comps = (Vector) components.get(seqSetId);
+      Vector<Component> comps = components.get(seqSetId);
       if (!comps.contains(comp))
       {
         comps.addElement(comp);
@@ -64,7 +65,7 @@ public class PaintRefresher
     }
     else
     {
-      Vector vcoms = new Vector();
+      Vector<Component> vcoms = new Vector<>();
       vcoms.addElement(comp);
       components.put(seqSetId, vcoms);
     }
@@ -77,11 +78,9 @@ public class PaintRefresher
       return;
     }
 
-    Enumeration en = components.keys();
-    while (en.hasMoreElements())
+    for (String id : components.keySet())
     {
-      String id = en.nextElement().toString();
-      Vector comps = (Vector) components.get(id);
+      Vector<Component> comps = components.get(id);
       comps.removeElement(comp);
       if (comps.size() == 0)
       {
@@ -104,17 +103,17 @@ public class PaintRefresher
     }
 
     Component comp;
-    Vector comps = (Vector) components.get(id);
+    Vector<Component> comps = components.get(id);
 
     if (comps == null)
     {
       return;
     }
 
-    Enumeration e = comps.elements();
+    Enumeration<Component> e = comps.elements();
     while (e.hasMoreElements())
     {
-      comp = (Component) e.nextElement();
+      comp = e.nextElement();
 
       if (comp == source)
       {
@@ -240,8 +239,8 @@ public class PaintRefresher
 
   public static AlignmentPanel[] getAssociatedPanels(String id)
   {
-    Vector comps = (Vector) components.get(id);
-    Vector tmp = new Vector();
+    Vector<Component> comps = components.get(id);
+    Vector<Component> tmp = new Vector<>();
     int i, iSize = comps.size();
     for (i = 0; i < iSize; i++)
     {
index 98e9694..32443d8 100755 (executable)
@@ -312,7 +312,7 @@ public class HiddenSequences
       return startRow - visibleDistance;
     }
 
-    int index = startRow;
+    int index = Math.min(startRow, hiddenSequences.length - 1);
     int count = 0;
     while ((index > -1) && (count < visibleDistance))
     {
index f8da0db..f4dd851 100644 (file)
@@ -2945,7 +2945,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   public void showAllColumns_actionPerformed(ActionEvent e)
   {
     viewport.showAllHiddenColumns();
-    repaint();
+    alignPanel.paintAlignment(true);
     viewport.sendSelection();
   }
 
@@ -2953,7 +2953,6 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   public void hideSelSequences_actionPerformed(ActionEvent e)
   {
     viewport.hideAllSelectedSeqs();
-    // alignPanel.paintAlignment(true);
   }
 
   /**
@@ -3326,7 +3325,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
      * 'User Defined' opens a panel to configure or load a
      * user-defined colour scheme
      */
-    if (ResidueColourScheme.USER_DEFINED.equals(name))
+    if (ResidueColourScheme.USER_DEFINED_MENU.equals(name))
     {
       new UserDefinedColours(alignPanel);
       return;
index b2b9574..8ffc070 100644 (file)
@@ -177,13 +177,13 @@ public class ColourMenuHelper
       final String label = MessageManager.getString("action.user_defined");
       JRadioButtonMenuItem userDefinedColour = new JRadioButtonMenuItem(
               label);
-      userDefinedColour.setName(ResidueColourScheme.USER_DEFINED);
+      userDefinedColour.setName(ResidueColourScheme.USER_DEFINED_MENU);
       userDefinedColour.addActionListener(new ActionListener()
       {
         @Override
         public void actionPerformed(ActionEvent e)
         {
-          client.changeColour_actionPerformed(ResidueColourScheme.USER_DEFINED);
+          client.changeColour_actionPerformed(ResidueColourScheme.USER_DEFINED_MENU);
         }
       });
       colourMenu.add(userDefinedColour);
@@ -230,7 +230,7 @@ public class ColourMenuHelper
         {
           none = radioButton;
         }
-        if (ResidueColourScheme.USER_DEFINED.equals(buttonName))
+        if (ResidueColourScheme.USER_DEFINED_MENU.equals(buttonName))
         {
           userDefined = radioButton;
         }
index a1c1bff..4172819 100644 (file)
@@ -49,29 +49,15 @@ import javax.swing.event.ChangeListener;
 public class FeatureColourChooser extends JalviewDialog
 {
   // FeatureSettings fs;
-  FeatureRenderer fr;
+  private FeatureRenderer fr;
 
   private FeatureColourI cs;
 
   private FeatureColourI oldcs;
 
-  /**
-   * 
-   * @return the last colour setting selected by user - either oldcs (which may
-   *         be a java.awt.Color) or the new GraduatedColor
-   */
-  public FeatureColourI getLastColour()
-  {
-    if (cs == null)
-    {
-      return oldcs;
-    }
-    return cs;
-  }
+  private AlignmentPanel ap;
 
-  AlignmentPanel ap;
-
-  boolean adjusting = false;
+  private boolean adjusting = false;
 
   final private float min;
 
@@ -79,25 +65,61 @@ public class FeatureColourChooser extends JalviewDialog
 
   final private float scaleFactor;
 
-  String type = null;
+  private String type = null;
+
+  private JPanel minColour = new JPanel();
+
+  private JPanel maxColour = new JPanel();
 
-  public FeatureColourChooser(FeatureRenderer frender, String type)
+  private JComboBox<String> threshold = new JComboBox<>();
+
+  private JSlider slider = new JSlider();
+
+  private JTextField thresholdValue = new JTextField(20);
+
+  // TODO implement GUI for tolower flag
+  // JCheckBox toLower = new JCheckBox();
+
+  private JCheckBox thresholdIsMin = new JCheckBox();
+
+  private JCheckBox colourByLabel = new JCheckBox();
+
+  private GraphLine threshline;
+
+  private Color oldmaxColour;
+
+  private Color oldminColour;
+
+  private ActionListener colourEditor = null;
+
+  /**
+   * Constructor
+   * 
+   * @param frender
+   * @param theType
+   */
+  public FeatureColourChooser(FeatureRenderer frender, String theType)
   {
-    this(frender, false, type);
+    this(frender, false, theType);
   }
 
-  public FeatureColourChooser(FeatureRenderer frender, boolean block,
-          String type)
+  /**
+   * Constructor, with option to make a blocking dialog (has to complete in the
+   * AWT event queue thread). Currently this option is always set to false.
+   * 
+   * @param frender
+   * @param blocking
+   * @param theType
+   */
+  FeatureColourChooser(FeatureRenderer frender, boolean blocking,
+          String theType)
   {
     this.fr = frender;
-    this.type = type;
+    this.type = theType;
     ap = fr.ap;
     String title = MessageManager.formatMessage(
-            "label.graduated_color_for_params", new String[] { type });
-    initDialogFrame(this, true, block, title, 480, 185);
-    // frame.setLayer(JLayeredPane.PALETTE_LAYER);
-    // Desktop.addInternalFrame(frame, "Graduated Feature Colour for "+type,
-    // 480, 145);
+            "label.graduated_color_for_params", new String[] { theType });
+    initDialogFrame(this, true, blocking, title, 480, 185);
 
     slider.addChangeListener(new ChangeListener()
     {
@@ -107,7 +129,7 @@ public class FeatureColourChooser extends JalviewDialog
         if (!adjusting)
         {
           thresholdValue.setText((slider.getValue() / scaleFactor) + "");
-          valueChanged();
+          sliderValueChanged();
         }
       }
     });
@@ -116,15 +138,18 @@ public class FeatureColourChooser extends JalviewDialog
       @Override
       public void mouseReleased(MouseEvent evt)
       {
+        /*
+         * only update Overview and/or structure colouring
+         * when threshold slider drag ends (mouse up)
+         */
         if (ap != null)
         {
           ap.paintAlignment(true);
         }
-        ;
       }
     });
 
-    float mm[] = fr.getMinMax().get(type)[0];
+    float mm[] = fr.getMinMax().get(theType)[0];
     min = mm[0];
     max = mm[1];
 
@@ -135,7 +160,7 @@ public class FeatureColourChooser extends JalviewDialog
      */
     scaleFactor = (max == min) ? 1f : 100f / (max - min);
 
-    oldcs = fr.getFeatureColours().get(type);
+    oldcs = fr.getFeatureColours().get(theType);
     if (!oldcs.isSimpleColour())
     {
       if (oldcs.isAutoScaled())
@@ -186,7 +211,7 @@ public class FeatureColourChooser extends JalviewDialog
 
     adjusting = false;
 
-    changeColour();
+    changeColour(false);
     waitForInput();
   }
 
@@ -224,20 +249,22 @@ public class FeatureColourChooser extends JalviewDialog
       }
     });
     maxColour.setBorder(new LineBorder(Color.black));
-    minText.setText(MessageManager.getString("label.min"));
+    JLabel minText = new JLabel(MessageManager.getString("label.min"));
     minText.setFont(JvSwingUtils.getLabelFont());
-    maxText.setText(MessageManager.getString("label.max"));
+    JLabel maxText = new JLabel(MessageManager.getString("label.max"));
     maxText.setFont(JvSwingUtils.getLabelFont());
-    this.setLayout(borderLayout1);
-    jPanel2.setLayout(flowLayout1);
+    this.setLayout(new BorderLayout());
+    JPanel jPanel1 = new JPanel();
     jPanel1.setBackground(Color.white);
+    JPanel jPanel2 = new JPanel();
+    jPanel2.setLayout(new FlowLayout());
     jPanel2.setBackground(Color.white);
     threshold.addActionListener(new ActionListener()
     {
       @Override
       public void actionPerformed(ActionEvent e)
       {
-        threshold_actionPerformed(e);
+        threshold_actionPerformed();
       }
     });
     threshold.setToolTipText(MessageManager
@@ -248,13 +275,15 @@ public class FeatureColourChooser extends JalviewDialog
             .getString("label.threshold_feature_above_threshold")); // index 1
     threshold.addItem(MessageManager
             .getString("label.threshold_feature_below_threshold")); // index 2
-    jPanel3.setLayout(flowLayout2);
+
+    JPanel jPanel3 = new JPanel();
+    jPanel3.setLayout(new FlowLayout());
     thresholdValue.addActionListener(new ActionListener()
     {
       @Override
       public void actionPerformed(ActionEvent e)
       {
-        thresholdValue_actionPerformed(e);
+        thresholdValue_actionPerformed();
       }
     });
     slider.setPaintLabels(false);
@@ -278,7 +307,7 @@ public class FeatureColourChooser extends JalviewDialog
       @Override
       public void actionPerformed(ActionEvent actionEvent)
       {
-        thresholdIsMin_actionPerformed(actionEvent);
+        thresholdIsMin_actionPerformed();
       }
     });
     colourByLabel.setBackground(Color.white);
@@ -292,69 +321,34 @@ public class FeatureColourChooser extends JalviewDialog
       @Override
       public void actionPerformed(ActionEvent actionEvent)
       {
-        colourByLabel_actionPerformed(actionEvent);
+        colourByLabel_actionPerformed();
       }
     });
+
+    JPanel colourPanel = new JPanel();
     colourPanel.setBackground(Color.white);
     jPanel1.add(ok);
     jPanel1.add(cancel);
-    jPanel2.add(colourByLabel, java.awt.BorderLayout.WEST);
-    jPanel2.add(colourPanel, java.awt.BorderLayout.EAST);
+    jPanel2.add(colourByLabel, BorderLayout.WEST);
+    jPanel2.add(colourPanel, BorderLayout.EAST);
     colourPanel.add(minText);
     colourPanel.add(minColour);
     colourPanel.add(maxText);
     colourPanel.add(maxColour);
-    this.add(jPanel3, java.awt.BorderLayout.CENTER);
+    this.add(jPanel3, BorderLayout.CENTER);
     jPanel3.add(threshold);
     jPanel3.add(slider);
     jPanel3.add(thresholdValue);
     jPanel3.add(thresholdIsMin);
-    this.add(jPanel1, java.awt.BorderLayout.SOUTH);
-    this.add(jPanel2, java.awt.BorderLayout.NORTH);
+    this.add(jPanel1, BorderLayout.SOUTH);
+    this.add(jPanel2, BorderLayout.NORTH);
   }
 
-  JLabel minText = new JLabel();
-
-  JLabel maxText = new JLabel();
-
-  JPanel minColour = new JPanel();
-
-  JPanel maxColour = new JPanel();
-
-  JPanel colourPanel = new JPanel();
-
-  JPanel jPanel1 = new JPanel();
-
-  JPanel jPanel2 = new JPanel();
-
-  BorderLayout borderLayout1 = new BorderLayout();
-
-  JComboBox threshold = new JComboBox();
-
-  FlowLayout flowLayout1 = new FlowLayout();
-
-  JPanel jPanel3 = new JPanel();
-
-  FlowLayout flowLayout2 = new FlowLayout();
-
-  JSlider slider = new JSlider();
-
-  JTextField thresholdValue = new JTextField(20);
-
-  // TODO implement GUI for tolower flag
-  // JCheckBox toLower = new JCheckBox();
-
-  JCheckBox thresholdIsMin = new JCheckBox();
-
-  JCheckBox colourByLabel = new JCheckBox();
-
-  private GraphLine threshline;
-
-  private Color oldmaxColour;
-
-  private Color oldminColour;
-
-  public void minColour_actionPerformed()
+  /**
+   * Action on clicking the 'minimum colour' - open a colour chooser dialog, and
+   * set the selected colour (if the user does not cancel out of the dialog)
+   */
+  protected void minColour_actionPerformed()
   {
     Color col = JColorChooser.showDialog(this,
             MessageManager.getString("label.select_colour_minimum_value"),
@@ -365,10 +359,14 @@ public class FeatureColourChooser extends JalviewDialog
       minColour.setForeground(col);
     }
     minColour.repaint();
-    changeColour();
+    changeColour(true);
   }
 
-  public void maxColour_actionPerformed()
+  /**
+   * Action on clicking the 'maximum colour' - open a colour chooser dialog, and
+   * set the selected colour (if the user does not cancel out of the dialog)
+   */
+  protected void maxColour_actionPerformed()
   {
     Color col = JColorChooser.showDialog(this,
             MessageManager.getString("label.select_colour_maximum_value"),
@@ -379,10 +377,17 @@ public class FeatureColourChooser extends JalviewDialog
       maxColour.setForeground(col);
     }
     maxColour.repaint();
-    changeColour();
+    changeColour(true);
   }
 
-  void changeColour()
+  /**
+   * Constructs and sets the selected colour options as the colour for the
+   * feature type, and repaints the alignment, and optionally the Overview
+   * and/or structure viewer if open
+   * 
+   * @param updateOverview
+   */
+  void changeColour(boolean updateOverview)
   {
     // Check if combobox is still adjusting
     if (adjusting)
@@ -414,7 +419,6 @@ public class FeatureColourChooser extends JalviewDialog
     {
       acg = new FeatureColour(oldminColour = minColour.getBackground(),
               oldmaxColour = maxColour.getBackground(), min, max);
-
     }
 
     if (!hasThreshold)
@@ -426,7 +430,9 @@ public class FeatureColourChooser extends JalviewDialog
     }
     else if (threshline == null)
     {
-      // todo visual indication of feature threshold
+      /*
+       * todo not yet implemented: visual indication of feature threshold
+       */
       threshline = new GraphLine((max - min) / 2f, "Threshold", Color.black);
     }
 
@@ -439,7 +445,8 @@ public class FeatureColourChooser extends JalviewDialog
 
       slider.setMinimum((int) (min * scaleFactor));
       slider.setMaximum((int) (max * scaleFactor));
-      slider.setValue((int) (threshline.value * scaleFactor));
+      // slider.setValue((int) (threshline.value * scaleFactor));
+      slider.setValue(Math.round(threshline.value * scaleFactor));
       thresholdValue.setText(threshline.value + "");
       slider.setMajorTickSpacing((int) (range / 10f));
       slider.setEnabled(true);
@@ -488,7 +495,7 @@ public class FeatureColourChooser extends JalviewDialog
     }
     fr.setColour(type, acg);
     cs = acg;
-    ap.paintAlignment(false);
+    ap.paintAlignment(updateOverview);
   }
 
   @Override
@@ -503,7 +510,7 @@ public class FeatureColourChooser extends JalviewDialog
   @Override
   public void okPressed()
   {
-    changeColour();
+    changeColour(false);
   }
 
   @Override
@@ -512,61 +519,80 @@ public class FeatureColourChooser extends JalviewDialog
     reset();
   }
 
+  /**
+   * Action when the user cancels the dialog. All previous settings should be
+   * restored and rendered on the alignment, and any linked Overview window or
+   * structure.
+   */
   void reset()
   {
     fr.setColour(type, oldcs);
-    ap.paintAlignment(false);
+    ap.paintAlignment(true);
     cs = null;
   }
 
-  public void thresholdCheck_actionPerformed(ActionEvent e)
-  {
-    changeColour();
-  }
-
-  public void annotations_actionPerformed(ActionEvent e)
-  {
-    changeColour();
-  }
-
-  public void threshold_actionPerformed(ActionEvent e)
+  /**
+   * Action on change of choice of No / Above / Below Threshold
+   */
+  protected void threshold_actionPerformed()
   {
-    changeColour();
+    changeColour(true);
   }
 
-  public void thresholdValue_actionPerformed(ActionEvent e)
+  /**
+   * Action on text entry of a threshold value
+   */
+  protected void thresholdValue_actionPerformed()
   {
     try
     {
       float f = Float.parseFloat(thresholdValue.getText());
       slider.setValue((int) (f * scaleFactor));
       threshline.value = f;
+
+      /*
+       * force repaint of any Overview window or structure
+       */
+      ap.paintAlignment(true);
     } catch (NumberFormatException ex)
     {
     }
   }
 
-  public void valueChanged()
+  /**
+   * Action on change of threshold slider value. This may be done interactively
+   * (by moving the slider), or programmatically (to update the slider after
+   * manual input of a threshold value).
+   */
+  protected void sliderValueChanged()
   {
-    threshline.value = slider.getValue() / scaleFactor;
+    /*
+     * squash rounding errors by forcing min/max of slider to 
+     * actual min/max of feature score range
+     */
+    int value = slider.getValue();
+    threshline.value = value == slider.getMaximum() ? max
+            : (value == slider.getMinimum() ? min : value / scaleFactor);
     cs.setThreshold(threshline.value);
-    changeColour();
-    ap.paintAlignment(false);
+
+    /*
+     * repaint alignment, but not Overview or structure,
+     * to avoid overload while dragging the slider
+     */
+    changeColour(false);
   }
 
-  public void thresholdIsMin_actionPerformed(ActionEvent actionEvent)
+  protected void thresholdIsMin_actionPerformed()
   {
-    changeColour();
+    changeColour(true);
   }
 
-  public void colourByLabel_actionPerformed(ActionEvent actionEvent)
+  protected void colourByLabel_actionPerformed()
   {
-    changeColour();
+    changeColour(true);
   }
 
-  ActionListener colourEditor = null;
-
-  public void addActionListener(ActionListener graduatedColorEditor)
+  void addActionListener(ActionListener graduatedColorEditor)
   {
     if (colourEditor != null)
     {
@@ -576,4 +602,19 @@ public class FeatureColourChooser extends JalviewDialog
     colourEditor = graduatedColorEditor;
   }
 
+  /**
+   * Answers the last colour setting selected by user - either oldcs (which may
+   * be a java.awt.Color) or the new GraduatedColor
+   * 
+   * @return
+   */
+  FeatureColourI getLastColour()
+  {
+    if (cs == null)
+    {
+      return oldcs;
+    }
+    return cs;
+  }
+
 }
index 065f97e..2d24512 100755 (executable)
@@ -154,7 +154,7 @@ public class IdPanel extends JPanel implements MouseListener,
       {
         av.getRanges().scrollRight(true);
       }
-      else
+      else if (!av.getWrapAlignment())
       {
         av.getRanges().scrollUp(false);
       }
@@ -165,7 +165,7 @@ public class IdPanel extends JPanel implements MouseListener,
       {
         av.getRanges().scrollRight(false);
       }
-      else
+      else if (!av.getWrapAlignment())
       {
         av.getRanges().scrollUp(true);
       }
index 45988fb..d472ef8 100644 (file)
@@ -4423,13 +4423,6 @@ public class Jalview2XML
 
     }
     // recover view properties and display parameters
-    if (view.getViewName() != null)
-    {
-      af.viewport.viewName = view.getViewName();
-      af.setInitialTabVisible();
-    }
-    af.setBounds(view.getXpos(), view.getYpos(), view.getWidth(),
-            view.getHeight());
 
     af.viewport.setShowAnnotation(view.getShowAnnotation());
     af.viewport.setAbovePIDThreshold(view.getPidSelected());
@@ -4463,6 +4456,14 @@ public class Jalview2XML
     af.viewport.setShowUnconserved(view.hasShowUnconserved() ? view
             .isShowUnconserved() : false);
     af.viewport.getRanges().setStartRes(view.getStartRes());
+
+    if (view.getViewName() != null)
+    {
+      af.viewport.viewName = view.getViewName();
+      af.setInitialTabVisible();
+    }
+    af.setBounds(view.getXpos(), view.getYpos(), view.getWidth(),
+            view.getHeight());
     // startSeq set in af.alignPanel.updateLayout below
     af.alignPanel.updateLayout();
     ColourSchemeI cs = null;
index 7a4456e..c81ac2f 100755 (executable)
@@ -28,6 +28,7 @@ import jalview.viewmodel.OverviewDimensionsShowHidden;
 import jalview.viewmodel.ViewportListenerI;
 
 import java.awt.BorderLayout;
+import java.awt.Cursor;
 import java.awt.Dimension;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
@@ -65,6 +66,8 @@ public class OverviewPanel extends JPanel implements Runnable,
 
   private boolean showHidden = true;
 
+  private boolean draggingBox = false;
+
   /**
    * Creates a new OverviewPanel object.
    * 
@@ -109,9 +112,35 @@ public class OverviewPanel extends JPanel implements Runnable,
       {
         if (!SwingUtilities.isRightMouseButton(evt))
         {
-          od.updateViewportFromMouse(evt.getX(), evt.getY(), av
+          if (draggingBox)
+          {
+            // set the mouse position as a fixed point in the box
+            // and drag relative to that position
+            od.adjustViewportFromMouse(evt.getX(),
+                    evt.getY(), av.getAlignment().getHiddenSequences(),
+                    av.getAlignment().getHiddenColumns());
+          }
+          else
+          {
+            od.updateViewportFromMouse(evt.getX(), evt.getY(), av
                   .getAlignment().getHiddenSequences(), av.getAlignment()
                   .getHiddenColumns());
+          }
+        }
+      }
+
+      @Override
+      public void mouseMoved(MouseEvent evt)
+      {
+        if (od.isPositionInBox(evt.getX(), evt.getY()))
+        {
+          // display drag cursor at mouse position
+          setCursor(Cursor.getPredefinedCursor(Cursor.MOVE_CURSOR));
+        }
+        else
+        {
+          // reset cursor
+          setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
         }
       }
     });
@@ -131,9 +160,31 @@ public class OverviewPanel extends JPanel implements Runnable,
         else
         // if (!av.getWrapAlignment())
         {
-          od.updateViewportFromMouse(evt.getX(), evt.getY(), av
-                  .getAlignment().getHiddenSequences(), av.getAlignment()
-                  .getHiddenColumns());
+          if (!od.isPositionInBox(evt.getX(), evt.getY()))
+          {
+            // don't do anything if the mouse press is in the overview's box
+            // (wait to see if it's a drag instead)
+            // otherwise update the viewport
+            od.updateViewportFromMouse(evt.getX(), evt.getY(),
+                    av.getAlignment().getHiddenSequences(),
+                    av.getAlignment().getHiddenColumns());
+          }
+          else
+          {
+            draggingBox = true;
+            od.setDragPoint(evt.getX(), evt.getY(),
+                    av.getAlignment().getHiddenSequences(),
+                    av.getAlignment().getHiddenColumns());
+          }
+        }
+      }
+
+      @Override
+      public void mouseReleased(MouseEvent evt)
+      {
+        if (draggingBox)
+        {
+          draggingBox = false;
         }
       }
 
index ec53e93..2176719 100755 (executable)
@@ -365,7 +365,7 @@ public class SliderPanel extends GSliderPanel
     }
     if (forConservation)
     {
-      if (!scheme.conservationApplied())
+      if (!scheme.conservationApplied() && sg != null)
       {
         /*
          * first time the colour scheme has had Conservation shading applied
index b47b82e..6aa798e 100755 (executable)
@@ -35,9 +35,17 @@ public abstract class ResidueColourScheme implements ColourSchemeI
 {
   public static final String NONE = "None";
 
+  /*
+   * default display name for a user defined colour scheme
+   */
   public static final String USER_DEFINED = "User Defined";
 
   /*
+   * name for (new) "User Defined.." colour scheme menu item
+   */
+  public static final String USER_DEFINED_MENU = "*User Defined*";
+
+  /*
    * lookup up by character value e.g. 'G' to the colors array index
    * e.g. if symbolIndex['K'] = 11 then colors[11] is the colour for K
    */
index 8e58c20..256862d 100755 (executable)
@@ -273,7 +273,7 @@ public class UserColourScheme extends ResidueColourScheme
     {
       return schemeName;
     }
-    return "User Defined";
+    return ResidueColourScheme.USER_DEFINED;
   }
 
   /**
index 5a7a27f..2881e81 100644 (file)
@@ -643,6 +643,11 @@ public abstract class AlignmentViewport implements AlignViewportI,
       {
         residueShading.setConservation(hconservation);
       }
+      /*
+       * reset conservation flag in case just set to false if
+       * Conservation was null (calculation still in progress)
+       */
+      residueShading.setConservationApplied(getConservationSelected());
       residueShading.alignmentChanged(alignment, hiddenRepSequences);
     }
 
index 7ac07ac..f54c1eb 100644 (file)
@@ -192,6 +192,44 @@ public abstract class OverviewDimensions
           HiddenSequences hiddenSeqs, HiddenColumns hiddenCols);
 
   /**
+   * Update the viewport location from a mouse drag within the overview's box
+   * 
+   * @param mousex
+   *          x location of mouse
+   * @param mousey
+   *          y location of mouse
+   * @param hiddenSeqs
+   *          the alignment's hidden sequences
+   * @param hiddenCols
+   *          the alignment's hidden columns
+   */
+  public abstract void adjustViewportFromMouse(int mousex, int mousey,
+          HiddenSequences hiddenSeqs, HiddenColumns hiddenCols);
+
+  /**
+   * Initialise dragging from the mouse - must be called on initial mouse click
+   * before using adjustViewportFromMouse in drag operations
+   * 
+   * @param mousex
+   *          x location of mouse
+   * @param mousey
+   *          y location of mouse
+   * @param hiddenSeqs
+   *          the alignment's hidden sequences
+   * @param hiddenCols
+   *          the alignment's hidden columns
+   */
+  public abstract void setDragPoint(int x, int y,
+          HiddenSequences hiddenSeqs, HiddenColumns hiddenCols);
+
+  /*
+   * Move the viewport so that the top left corner of the overview's box 
+   * is at the mouse position (leftx, topy)
+   */
+  protected abstract void updateViewportFromTopLeft(int leftx, int topy,
+          HiddenSequences hiddenSeqs, HiddenColumns hiddenCols);
+
+  /**
    * Set the overview panel's box position to match the viewport
    * 
    * @param hiddenSeqs
@@ -225,6 +263,9 @@ public abstract class OverviewDimensions
    */
   protected abstract void resetAlignmentDims();
 
+  /*
+   * Given the box coordinates in residues and sequences, set the box dimensions in the overview window
+   */
   protected void setBoxPosition(int startRes, int startSeq, int vpwidth,
           int vpheight)
   {
@@ -241,4 +282,31 @@ public abstract class OverviewDimensions
     // boxHeight is the height in sequences translated to pixels
     boxHeight = Math.round((float) vpheight * sequencesHeight / alheight);
   }
+
+  /**
+   * Answers if a mouse position is in the overview's red box
+   * 
+   * @param x
+   *          mouse x position
+   * @param y
+   *          mouse y position
+   * @return true if (x,y) is inside the box
+   */
+  public boolean isPositionInBox(int x, int y)
+  {
+    return (x > boxX && y > boxY && x < boxX + boxWidth
+            && y < boxY + boxHeight);
+  }
+
+  /*
+   * Given the centre x position, calculate the box's left x position
+   */
+  protected abstract int getLeftXFromCentreX(int mousex, HiddenColumns hidden);
+
+  /*
+   * Given the centre y position, calculate the box's top y position
+   */
+  protected abstract int getTopYFromCentreY(int mousey,
+          HiddenSequences hidden);
+
 }
\ No newline at end of file
index 4d64f1c..c78b8a3 100644 (file)
@@ -12,6 +12,12 @@ public class OverviewDimensionsHideHidden extends OverviewDimensions
 {
   private ViewportRanges ranges;
 
+  private int xdiff; // when dragging, difference in alignment units between
+                     // start residue and original mouse click position
+
+  private int ydiff; // when dragging, difference in alignment units between
+                     // start sequence and original mouse click position
+
   public OverviewDimensionsHideHidden(ViewportRanges vpranges,
           boolean showAnnotationPanel)
   {
@@ -24,37 +30,51 @@ public class OverviewDimensionsHideHidden extends OverviewDimensions
   public void updateViewportFromMouse(int mousex, int mousey,
           HiddenSequences hiddenSeqs, HiddenColumns hiddenCols)
   {
-    resetAlignmentDims();
+    int xAsRes = getLeftXFromCentreX(mousex, hiddenCols);
+    int yAsSeq = getTopYFromCentreY(mousey, hiddenSeqs);
+
+    updateViewportFromTopLeft(xAsRes, yAsSeq, hiddenSeqs, hiddenCols);
+
+  }
+
+  @Override
+  public void adjustViewportFromMouse(int mousex, int mousey,
+          HiddenSequences hiddenSeqs, HiddenColumns hiddenCols)
+  {
+    // calculate translation in pixel terms:
+    // get mouse location in viewport coords, add translation in viewport
+    // coords, and update viewport as usual
+    int vpx = Math.round((float) mousex * alwidth / width);
+    int vpy = Math.round((float) mousey * alheight / sequencesHeight);
 
-    int x = mousex;
-    int y = mousey;
+    updateViewportFromTopLeft(vpx + xdiff, vpy + ydiff, hiddenSeqs,
+            hiddenCols);
 
-    if (x < 0)
+  }
+
+  @Override
+  protected void updateViewportFromTopLeft(int leftx, int topy,
+          HiddenSequences hiddenSeqs, HiddenColumns hiddenCols)
+  {
+    int xAsRes = leftx;
+    int yAsSeq = topy;
+    resetAlignmentDims();
+
+    if (xAsRes < 0)
     {
-      x = 0;
+      xAsRes = 0;
     }
 
-    if (y < 0)
+    if (yAsSeq < 0)
     {
-      y = 0;
+      yAsSeq = 0;
     }
 
     if (ranges.isWrappedMode())
     {
-      y = 0; // sorry, no vertical scroll when wrapped
+      yAsSeq = 0; // sorry, no vertical scroll when wrapped
     }
 
-    //
-    // Convert x value to residue position
-    //
-
-    // need to determine where scrollCol should be, given x
-    // to do this also need to know width of viewport, and some hidden column
-    // correction
-
-    // convert x to residues - this is an absolute position
-    int xAsRes = Math.round((float) x * alwidth / width);
-
     // get viewport width in residues
     int vpwidth = ranges.getViewportWidth();
 
@@ -73,13 +93,7 @@ public class OverviewDimensionsHideHidden extends OverviewDimensions
       }
     }
 
-
-    //
-    // Convert y value to sequence position
-    //
-
-    // convert y to residues
-    int yAsSeq = Math.round((float) y * alheight / sequencesHeight);
+    // Determine where scrollRow should be, given visYAsSeq
 
     // get viewport height in sequences
     // add 1 because height includes both endSeq and startSeq
@@ -101,7 +115,6 @@ public class OverviewDimensionsHideHidden extends OverviewDimensions
     // update viewport
     ranges.setStartRes(xAsRes);
     ranges.setStartSeq(yAsSeq);
-
   }
 
   @Override
@@ -132,4 +145,32 @@ public class OverviewDimensionsHideHidden extends OverviewDimensions
     alwidth = ranges.getVisibleAlignmentWidth();
     alheight = ranges.getVisibleAlignmentHeight();
   }
+
+  @Override
+  protected int getLeftXFromCentreX(int mousex, HiddenColumns hidden)
+  {
+    int vpx = Math.round((float) mousex * alwidth / width);
+    return vpx - ranges.getViewportWidth() / 2;
+  }
+
+  @Override
+  protected int getTopYFromCentreY(int mousey, HiddenSequences hidden)
+  {
+    int vpy = Math.round((float) mousey * alheight / sequencesHeight);
+    return vpy - ranges.getViewportHeight() / 2;
+  }
+
+  @Override
+  public void setDragPoint(int x, int y, HiddenSequences hiddenSeqs,
+          HiddenColumns hiddenCols)
+  {
+    // get alignment position of x and box (can get directly from vpranges) and
+    // calculate difference between the positions
+    int vpx = Math.round((float) x * alwidth / width);
+    int vpy = Math.round((float) y * alheight / sequencesHeight);
+
+    xdiff = ranges.getStartRes() - vpx;
+    ydiff = ranges.getStartSeq() - vpy;
+  }
+
 }
index 62e8000..681d43d 100644 (file)
@@ -32,6 +32,12 @@ public class OverviewDimensionsShowHidden extends OverviewDimensions
 {
   private ViewportRanges ranges;
 
+  private int xdiff; // when dragging, difference in alignment units between
+                     // start residue and original mouse click position
+
+  private int ydiff; // when dragging, difference in alignment units between
+                     // start sequence and original mouse click position
+
   /**
    * Create an OverviewDimensions object
    * 
@@ -66,46 +72,71 @@ public class OverviewDimensionsShowHidden extends OverviewDimensions
   public void updateViewportFromMouse(int mousex, int mousey,
           HiddenSequences hiddenSeqs, HiddenColumns hiddenCols)
   {
-    int x = mousex;
-    int y = mousey;
+    // convert mousex and mousey to alignment units as well as
+    // translating to top left corner of viewport - this is an absolute position
+    int xAsRes = getLeftXFromCentreX(mousex, hiddenCols);
+    int yAsSeq = getTopYFromCentreY(mousey, hiddenSeqs);
+
+    // convert to visible positions
+    int visXAsRes = hiddenCols.findColumnPosition(xAsRes);
+    yAsSeq = hiddenSeqs.adjustForHiddenSeqs(
+            hiddenSeqs.findIndexWithoutHiddenSeqs(yAsSeq));
+    yAsSeq = Math.max(yAsSeq, 0); // -1 if before first visible sequence
+    int visYAsSeq = hiddenSeqs.findIndexWithoutHiddenSeqs(yAsSeq);
+    visYAsSeq = Math.max(visYAsSeq, 0); // -1 if before first visible sequence
+
+    // update viewport accordingly
+    updateViewportFromTopLeft(visXAsRes, visYAsSeq, hiddenSeqs, hiddenCols);
+  }
+
+  @Override
+  public void adjustViewportFromMouse(int mousex, int mousey,
+          HiddenSequences hiddenSeqs, HiddenColumns hiddenCols)
+  {
+    // calculate translation in pixel terms:
+    // get mouse location in viewport coords, add translation in viewport
+    // coords,
+    // convert back to pixel coords
+    int vpx = Math.round((float) mousex * alwidth / width);
+    int visXAsRes = hiddenCols.findColumnPosition(vpx) + xdiff;
+
+    int vpy = Math.round((float) mousey * alheight / sequencesHeight);
+    int visYAsRes = hiddenSeqs.findIndexWithoutHiddenSeqs(vpy) + ydiff;
 
+    // update viewport accordingly
+    updateViewportFromTopLeft(visXAsRes, visYAsRes,
+            hiddenSeqs,
+            hiddenCols);
+  }
+
+  @Override
+  protected void updateViewportFromTopLeft(int leftx, int topy,
+          HiddenSequences hiddenSeqs, HiddenColumns hiddenCols)
+  {
+    int visXAsRes = leftx;
+    int visYAsSeq = topy;
     resetAlignmentDims();
 
-    if (x < 0)
+    if (visXAsRes < 0)
     {
-      x = 0;
+      visXAsRes = 0;
     }
 
-    if (y < 0)
+    if (visYAsSeq < 0)
     {
-      y = 0;
+      visYAsSeq = 0;
     }
 
     if (ranges.isWrappedMode())
     {
-      y = 0; // sorry, no vertical scroll when wrapped
+      visYAsSeq = 0; // sorry, no vertical scroll when wrapped
     }
 
-    //
-    // Convert x value to residue position
-    //
-
-    // need to determine where scrollCol should be, given x
-    // to do this also need to know width of viewport, and some hidden column
-    // correction
-
-    // convert x to residues - this is an absolute position
-    int xAsRes = Math.round((float) x * alwidth / width);
+    // Determine where scrollCol should be, given visXAsRes
 
     // get viewport width in residues
     int vpwidth = ranges.getViewportWidth();
 
-    // get where x should be when accounting for hidden cols
-    // if x is in a hidden col region, shift to left - but we still need
-    // absolute position
-    // so convert back after getting visible region position
-    int visXAsRes = hiddenCols.findColumnPosition(xAsRes);
-
     // check in case we went off the edge of the alignment
     int visAlignWidth = hiddenCols.findColumnPosition(alwidth - 1);
     if (visXAsRes + vpwidth - 1 > visAlignWidth)
@@ -124,28 +155,14 @@ public class OverviewDimensionsShowHidden extends OverviewDimensions
       }
     }
 
-    //
-    // Convert y value to sequence position
-    //
-
-    // convert y to residues
-    int yAsSeq = Math.round((float) y * alheight / sequencesHeight);
+    // Determine where scrollRow should be, given visYAsSeq
 
     // get viewport height in sequences
     int vpheight = ranges.getViewportHeight();
 
-    // get where y should be when accounting for hidden rows
-    // if y is in a hidden row region, shift up - but we still need absolute
-    // position,
-    // so convert back after getting visible region position
-    yAsSeq = hiddenSeqs.adjustForHiddenSeqs(hiddenSeqs
-            .findIndexWithoutHiddenSeqs(yAsSeq));
-    yAsSeq = Math.max(yAsSeq, 0); // -1 if before first visible sequence
-
     // check in case we went off the edge of the alignment
     int visAlignHeight = hiddenSeqs.findIndexWithoutHiddenSeqs(alheight);
-    int visYAsSeq = hiddenSeqs.findIndexWithoutHiddenSeqs(yAsSeq);
-    visYAsSeq = Math.max(visYAsSeq, 0); // -1 if before first visible sequence
+
     if (visYAsSeq + vpheight - 1 > visAlignHeight)
     {
       // went past the end of the alignment, adjust backwards
@@ -213,4 +230,34 @@ public class OverviewDimensionsShowHidden extends OverviewDimensions
     alwidth = ranges.getAbsoluteAlignmentWidth();
     alheight = ranges.getAbsoluteAlignmentHeight();
   }
+
+  @Override
+  protected int getLeftXFromCentreX(int mousex, HiddenColumns hidden)
+  {
+    int vpx = Math.round((float) mousex * alwidth / width);
+    return hidden.subtractVisibleColumns(ranges.getViewportWidth() / 2,
+            vpx);
+  }
+
+  @Override
+  protected int getTopYFromCentreY(int mousey, HiddenSequences hidden)
+  {
+    int vpy = Math.round((float) mousey * alheight / sequencesHeight);
+    return hidden.subtractVisibleRows(ranges.getViewportHeight() / 2, vpy);
+  }
+
+  @Override
+  public void setDragPoint(int x, int y, HiddenSequences hiddenSeqs,
+          HiddenColumns hiddenCols)
+  {
+    // get alignment position of x and box (can get directly from vpranges) and
+    // calculate difference between the positions
+    int vpx = Math.round((float) x * alwidth / width);
+    int vpy = Math.round((float) y * alheight / sequencesHeight);
+
+    xdiff = ranges.getStartRes() - hiddenCols.findColumnPosition(vpx);
+    ydiff = ranges.getStartSeq()
+            - hiddenSeqs.findIndexWithoutHiddenSeqs(vpy);
+  }
+
 }
index 67098ae..af9c045 100644 (file)
@@ -544,10 +544,11 @@ public class AlignFrameTest
     assertEquals(af.alignPanel.getViewName(), "View 1");
     AlignViewport av2 = af.getViewport();
     assertNotSame(av, av2);
+    assertSame(av2, af.alignPanel.av);
     rs = av2.getResidueShading();
     assertNotSame(av.getResidueShading(), rs);
     assertEquals(rs.getThreshold(), 10);
-    assertTrue(rs.conservationApplied());
+    assertTrue(rs.conservationApplied(), rs.toString());
     assertEquals(rs.getConservationInc(), 20);
     assertEquals(av2.getAlignment().getGroups().size(), 1);
     sg = av2.getAlignment().getGroups().get(0);
index d6f1e8b..cc7dca0 100644 (file)
@@ -75,9 +75,13 @@ public class FeaturesFileTest
      * updated - JAL-1904), and verify (some) feature group colours
      */
     colours = af.getFeatureRenderer().getFeatureColours();
-    assertEquals("26 feature group colours not found", 26, colours.size());
+    assertEquals("27 feature group colours not found", 27, colours.size());
     assertEquals(colours.get("Cath").getColour(), new Color(0x93b1d1));
     assertEquals(colours.get("ASX-MOTIF").getColour(), new Color(0x6addbb));
+    FeatureColourI kdColour = colours.get("kdHydrophobicity");
+    assertTrue(kdColour.isGraduatedColour());
+    assertTrue(kdColour.isAboveThreshold());
+    assertEquals(-2f, kdColour.getThreshold());
 
     /*
      * verify (some) features on sequences
index 0e931eb..f6a9d32 100644 (file)
@@ -21,6 +21,8 @@
 package jalview.viewmodel;
 
 import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertFalse;
+import static org.testng.Assert.assertTrue;
 
 import jalview.analysis.AlignmentGenerator;
 import jalview.datamodel.Alignment;
@@ -56,7 +58,7 @@ public class OverviewDimensionsHideHiddenTest
 
   ViewportRanges vpranges;
 
-  Hashtable<SequenceI, SequenceCollectionI> hiddenRepSequences = new Hashtable<SequenceI, SequenceCollectionI>();
+  Hashtable<SequenceI, SequenceCollectionI> hiddenRepSequences = new Hashtable<>();
 
   HiddenColumns hiddenCols = new HiddenColumns();
 
@@ -210,7 +212,7 @@ public class OverviewDimensionsHideHiddenTest
     assertEquals(od.getBoxX(), 0);
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
-    assertEquals(vpranges.getStartSeq(),
+    assertEquals(vpranges.getStartSeq() + vpranges.getViewportHeight() / 2,
             Math.round((float) 10 * alheight / od.getSequencesHeight()));
     assertEquals(vpranges.getStartRes(), 0);
 
@@ -219,14 +221,13 @@ public class OverviewDimensionsHideHiddenTest
     assertEquals(od.getBoxY(), 0);
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
-    assertEquals(vpranges.getStartRes(),
-            Math.round((float) 6 * alwidth / od.getWidth()));
+    assertEquals(vpranges.getStartRes(), 0);
     assertEquals(vpranges.getStartSeq(), 0);
 
     // overly large boxX value reset to width-boxWidth
-    mouseClick(od, 100, 6);
+    mouseClick(od, 101, 6);
     assertEquals(od.getBoxX(), od.getWidth() - od.getBoxWidth());
-    assertEquals(od.getBoxY(), 6);
+    assertEquals(od.getBoxY(), 1);
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
     assertEquals(vpranges.getStartRes(),
@@ -238,7 +239,7 @@ public class OverviewDimensionsHideHiddenTest
 
     // overly large boxY value reset to sequenceHeight - boxHeight
     mouseClick(od, 10, 520);
-    assertEquals(od.getBoxX(), 10);
+    assertEquals(od.getBoxX(), 0);
     assertEquals(od.getBoxY(), od.getSequencesHeight() - od.getBoxHeight());
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
@@ -266,18 +267,19 @@ public class OverviewDimensionsHideHiddenTest
                     / od.getSequencesHeight()));
 
     // move viewport so startRes non-zero and then mouseclick
-    moveViewportH(50);
+    moveViewportH(20);
 
     // click at viewport position
     int oldboxx = od.getBoxX();
     int oldboxy = od.getBoxY();
-    mouseClick(od, od.getBoxX() + 5, od.getBoxY() + 2);
-    assertEquals(od.getBoxX(), oldboxx + 5);
+    mouseClick(od, od.getBoxX() + od.getBoxWidth() / 2 + 6,
+            od.getBoxY() + od.getBoxHeight() / 2 + 3);
+    assertEquals(od.getBoxX(), oldboxx + 6);
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
     assertEquals(vpranges.getStartRes(),
             Math.round((float) od.getBoxX() * alwidth / od.getWidth()));
-    assertEquals(od.getBoxY(), oldboxy + 2);
+    assertEquals(od.getBoxY(), oldboxy + 3);
     assertEquals(
             vpranges.getStartSeq(),
             Math.round((float) od.getBoxY() * alheight
@@ -311,20 +313,20 @@ public class OverviewDimensionsHideHiddenTest
     int lastHiddenCol = 30;
     hiddenCols.hideColumns(0, lastHiddenCol);
 
-    testBoxIsAtClickPoint(0, 0);
+    testBoxIsAtClickPoint(boxWidth / 2, boxHeight / 2);
 
     // click to right of hidden columns, box moves to click point
-    testBoxIsAtClickPoint(40, 0);
+    testBoxIsAtClickPoint(41 + boxWidth / 2, boxHeight / 2);
     assertEquals(vpranges.getStartSeq(), 0);
     assertEquals(vpranges.getStartRes(),
-            Math.round((float) 40 * alwidth / od.getWidth()));
+            Math.round((float) 41 * alwidth / od.getWidth()));
 
     // click to right of hidden columns such that box runs over right hand side
     // of alignment
     // box position is adjusted away from the edge
     // overly large boxX value reset to width-boxWidth
-    int xpos = 100;
-    mouseClick(od, xpos, 0);
+    int xpos = 100 + boxWidth / 2;
+    mouseClick(od, xpos, boxHeight / 2);
     assertEquals(od.getBoxX(), Math.round(od.getWidth()) - boxWidth);
     assertEquals(od.getBoxY(), 0);
     assertEquals(od.getBoxWidth(), boxWidth);
@@ -342,7 +344,7 @@ public class OverviewDimensionsHideHiddenTest
   public void testFromMouseWithHiddenColsInMiddle()
   {
     od.updateViewportFromMouse(0, 0, al.getHiddenSequences(), hiddenCols);
-    testBoxIsAtClickPoint(0, 0);
+    testBoxIsAtClickPoint(boxWidth / 2, boxHeight / 2);
     assertEquals(od.getBoxX(), 0);
     assertEquals(od.getBoxY(), 0);
     assertEquals(od.getBoxWidth(), boxWidth);
@@ -355,7 +357,7 @@ public class OverviewDimensionsHideHiddenTest
     hiddenCols.hideColumns(firstHidden, lastHidden);
 
     od.setBoxPosition(al.getHiddenSequences(), hiddenCols);
-    testBoxIsAtClickPoint(0, 0);
+    testBoxIsAtClickPoint(boxWidth / 2, boxHeight / 2);
     assertEquals(od.getBoxX(), 0);
     assertEquals(od.getBoxY(), 0);
     assertEquals(od.getBoxWidth(), boxWidth);
@@ -364,45 +366,51 @@ public class OverviewDimensionsHideHiddenTest
 
     // move box so that it overlaps with hidden cols on one side
     // box width, boxX and scrollCol as for unhidden case
-    int xpos = 55 - boxWidth; // 55 is position in overview approx halfway
+    int xpos = 54 - boxWidth / 2; // 54 is position in overview approx halfway
                               // between cols 60 and 70
-    mouseClick(od, xpos, 0);
-    testBoxIsAtClickPoint(xpos, 0);
-    assertEquals(vpranges.getStartRes(),
-            Math.round(xpos * alwidth / od.getWidth()));
+    mouseClick(od, xpos, boxHeight / 2);
+    testBoxIsAtClickPoint(xpos, boxHeight / 2);
+    assertEquals(vpranges.getStartRes(), 1 + // rounding
+            Math.round((xpos - boxWidth / 2) * alwidth / od.getWidth()));
     assertEquals(vpranges.getStartSeq(), 0);
 
     // move box so that it completely covers hidden cols
     // box width, boxX and scrollCol as for unhidden case
     xpos = 33;
-    mouseClick(od, xpos, 0);
-    testBoxIsAtClickPoint(xpos, 0);
+    mouseClick(od, xpos, boxHeight / 2);
+    testBoxIsAtClickPoint(xpos, boxHeight / 2);
     assertEquals(vpranges.getStartRes(),
-            Math.round((float) xpos * alwidth / od.getWidth()));
+            Math.round((float) (xpos - boxWidth / 2) * alwidth
+                    / od.getWidth()));
     assertEquals(vpranges.getStartSeq(), 0);
 
     // move box so boxX is in hidden cols, box overhangs at right
     // boxX and scrollCol at left of hidden area, box width unchanged
-    xpos = 50;
-    mouseClick(od, xpos, 0);
-    testBoxIsAtClickPoint(xpos, 0);
-    assertEquals(vpranges.getStartRes(),
-            Math.round((float) xpos * alwidth / od.getWidth()));
+    xpos = Math.round((float) 50 * od.getWidth() / alwidth) + boxWidth / 2;
+    mouseClick(od, xpos, boxHeight / 2);
+    assertEquals(od.getBoxX() + od.getBoxWidth() / 2, xpos);
+    assertEquals(od.getBoxY(), 0);
+    assertEquals(od.getBoxWidth(), boxWidth);
+    assertEquals(od.getBoxHeight(), boxHeight);
+    assertEquals(vpranges.getStartRes(), 50);
     assertEquals(vpranges.getStartSeq(), 0);
 
     // move box so boxX is to right of hidden cols, but does not go beyond full
     // width of alignment
     // box width, boxX and scrollCol all as for non-hidden case
-    xpos = 75;
-    testBoxIsAtClickPoint(xpos, 0);
+    xpos = Math.round((float) 75 * od.getWidth() / alwidth) + boxWidth / 2;
+    mouseClick(od, xpos, boxHeight / 2);
+    assertEquals(od.getBoxX() + od.getBoxWidth() / 2, xpos);
+    assertEquals(od.getBoxY(), 0);
+    assertEquals(od.getBoxWidth(), boxWidth);
+    assertEquals(od.getBoxHeight(), boxHeight);
     assertEquals(vpranges.getStartSeq(), 0);
-    assertEquals(vpranges.getStartRes(),
-            Math.round(xpos * alwidth / od.getWidth()));
+    assertEquals(vpranges.getStartRes(), 75);
     
     // move box so it goes beyond full width of alignment
     // boxX, scrollCol adjusted back, box width normal
     xpos = 3000;
-    mouseClick(od, xpos, 0);
+    mouseClick(od, xpos, boxHeight / 2);
     assertEquals(od.getBoxX(), Math.round(od.getWidth()) - boxWidth);
     assertEquals(od.getBoxY(), 0);
     assertEquals(od.getBoxWidth(), boxWidth);
@@ -440,19 +448,22 @@ public class OverviewDimensionsHideHiddenTest
 
     // click to left of hidden cols, without overlapping
     // boxX, scrollCol and width as normal
-    int xpos = 5;
-    testBoxIsAtClickPoint(xpos, 0);
-    assertEquals(vpranges.getStartSeq(), 0);
-    assertEquals(vpranges.getStartRes(),
-            Math.round((float) xpos * alwidth / od.getWidth()));
+    int xpos = 30;
+    int ypos = 6;
+    testBoxIsAtClickPoint(xpos, ypos);
+    assertEquals(vpranges.getStartSeq(), Math.round(
+            (float) (ypos - boxHeight / 2) * alheight / od.getHeight()));
+    assertEquals(vpranges.getStartRes(), Math.round(
+            (float) (xpos - boxWidth / 2) * alwidth / od.getWidth()));
 
     // click to left of hidden cols, with overlap
     // boxX and scrollCol adjusted for hidden cols, width normal
-    xpos = Math.round((float) 145 * od.getWidth() / alwidth) - boxWidth;
-    mouseClick(od, xpos, 0);
-    testBoxIsAtClickPoint(xpos, 0);
+    xpos = Math.round((float) 144 * od.getWidth() / alwidth) - boxWidth;
+    mouseClick(od, xpos, boxHeight / 2);
+    testBoxIsAtClickPoint(xpos, boxHeight / 2);
     assertEquals(vpranges.getStartRes(),
-            Math.round((float) xpos * alwidth / od.getWidth()));
+            Math.round((float) (xpos - boxWidth / 2) * alwidth
+                    / od.getWidth()));
     assertEquals(vpranges.getStartSeq(), 0);
 
     // click off end of alignment
@@ -777,9 +788,9 @@ public class OverviewDimensionsHideHiddenTest
     assertEquals(od.getBoxHeight(), boxHeight);
 
     // click below hidden rows
-    mouseClick(od, 0, 150);
+    mouseClick(od, 0, 151 + boxHeight / 2);
     assertEquals(od.getBoxX(), 0);
-    assertEquals(od.getBoxY(), 150);
+    assertEquals(od.getBoxY(), 151);
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
   }
@@ -825,22 +836,22 @@ public class OverviewDimensionsHideHiddenTest
     assertEquals(od.getBoxHeight(), boxHeight);
 
     // click above hidden rows, so that box overlaps
-    int ypos = 35; // column value in residues
+    int ypos = 35 + viewHeight / 2; // row value in residues
     mouseClick(od, 0,
             Math.round((float) ypos * od.getSequencesHeight() / alheight));
     assertEquals(od.getBoxX(), 0);
     assertEquals(od.getBoxY(),
-            Math.round((float) ypos * od.getSequencesHeight() / alheight));
+            Math.round((float) 35 * od.getSequencesHeight() / alheight));
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
 
     // click so that box straddles hidden rows
-    ypos = 44; // column value in residues
+    ypos = 45 + viewHeight / 2; // row value in residues
     mouseClick(od, 0,
             Math.round((float) ypos * od.getSequencesHeight() / alheight));
     assertEquals(od.getBoxX(), 0);
     assertEquals(od.getBoxY(),
-            Math.round((float) ypos * od.getSequencesHeight() / alheight));
+            Math.round((float) 45 * od.getSequencesHeight() / alheight));
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
   }
@@ -884,18 +895,18 @@ public class OverviewDimensionsHideHiddenTest
     assertEquals(od.getBoxHeight(), boxHeight);
 
     // click above hidden rows
-    int ypos = 40; // row 40
+    int ypos = 41 + viewHeight / 2; // row 41
     mouseClick(od, 0,
             Math.round((float) ypos * od.getSequencesHeight() / alheight));
     assertEquals(od.getBoxX(), 0);
     assertEquals(od.getBoxY(),
-            Math.round((float) ypos * od.getSequencesHeight() / alheight));
+            Math.round((float) 41 * od.getSequencesHeight() / alheight));
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
 
     // click above hidden rows so box overlaps
     // boxY, boxHeight remains same
-    ypos = 497; // row 497
+    ypos = 497 + viewHeight / 2; // row 497
     mouseClick(od, 0,
             Math.round((float) ypos * od.getSequencesHeight() / alheight));
     assertEquals(od.getBoxX(), 0);
@@ -908,6 +919,86 @@ public class OverviewDimensionsHideHiddenTest
     assertEquals(od.getBoxHeight(), boxHeight);
   }
 
+  /**
+   * Test the function to determine if a point is in the overview's box or not
+   */
+  @Test(groups = { "Functional" })
+  public void testPositionInBox()
+  {
+    od.updateViewportFromMouse(0, 0, al.getHiddenSequences(), hiddenCols);
+
+    assertFalse(od.isPositionInBox(0, 0));
+    assertTrue(od.isPositionInBox(10, 9));
+    assertFalse(od.isPositionInBox(0, 9));
+    assertFalse(od.isPositionInBox(9, 0));
+    assertFalse(od.isPositionInBox(75, 20));
+
+    // hide columns in the box area
+    // makes absolutely no difference
+    hiddenCols.hideColumns(1, 4);
+    od.setBoxPosition(al.getHiddenSequences(), hiddenCols);
+    assertFalse(od.isPositionInBox(0, 0));
+    assertTrue(od.isPositionInBox(10, 9));
+    assertFalse(od.isPositionInBox(0, 9));
+    assertFalse(od.isPositionInBox(9, 0));
+    assertFalse(od.isPositionInBox(75, 20));
+
+    // hide sequences in box area
+    // makes absolutely no difference
+    hideSequences(1, 3);
+    od.setBoxPosition(al.getHiddenSequences(), hiddenCols);
+    assertFalse(od.isPositionInBox(0, 0));
+    assertTrue(od.isPositionInBox(10, 9));
+    assertFalse(od.isPositionInBox(0, 9));
+    assertFalse(od.isPositionInBox(9, 0));
+    assertFalse(od.isPositionInBox(75, 20));
+  }
+
+  /**
+   * Test the dragging functionality
+   */
+  @Test(groups = { "Functional" })
+  public void testDragging()
+  {
+    od.updateViewportFromMouse(0, 0, al.getHiddenSequences(), hiddenCols);
+    od.setDragPoint(4, 16, al.getHiddenSequences(),
+            hiddenCols);
+    od.adjustViewportFromMouse(20, 22,
+            al.getHiddenSequences(), hiddenCols);
+
+    // updates require an OverviewPanel to exist which it doesn't here
+    // so call setBoxPosition() as it would be called by the AlignmentPanel
+    // normally
+    od.setBoxPosition(al.getHiddenSequences(), hiddenCols);
+
+    // corner moves 16 (20-4) right and 6 (22-16) up
+    assertEquals(od.getBoxX(), 16);
+    assertEquals(od.getBoxY(), 6);
+
+    // hide columns - makes no difference
+    hiddenCols.hideColumns(1, 4);
+    od.updateViewportFromMouse(0, 0, al.getHiddenSequences(), hiddenCols);
+    od.setDragPoint(4, 16, al.getHiddenSequences(), hiddenCols);
+    od.adjustViewportFromMouse(20, 22, al.getHiddenSequences(), hiddenCols);
+    od.setBoxPosition(al.getHiddenSequences(), hiddenCols);
+
+    // corner moves 16 (20-4) right and 6 (22-16) up
+    assertEquals(od.getBoxX(), 16);
+    assertEquals(od.getBoxY(), 6);
+
+    // hide sequences in box area
+    // makes absolutely no difference
+    hideSequences(1, 3);
+    od.updateViewportFromMouse(0, 0, al.getHiddenSequences(), hiddenCols);
+    od.setDragPoint(4, 16, al.getHiddenSequences(), hiddenCols);
+    od.adjustViewportFromMouse(20, 22, al.getHiddenSequences(), hiddenCols);
+    od.setBoxPosition(al.getHiddenSequences(), hiddenCols);
+
+    // corner moves 16 (20-4) right and 6 (22-16) up
+    assertEquals(od.getBoxX(), 16);
+    assertEquals(od.getBoxY(), 6);
+  }
+
   /*
    * Move viewport horizontally: startRes + previous width gives new horizontal extent. Vertical extent stays the same.
    */
@@ -956,8 +1047,8 @@ public class OverviewDimensionsHideHiddenTest
   private void testBoxIsAtClickPoint(int xpos, int ypos)
   {
     mouseClick(od, xpos, ypos);
-    assertEquals(od.getBoxX(), xpos);
-    assertEquals(od.getBoxY(), ypos);
+    assertEquals(od.getBoxX() + od.getBoxWidth() / 2, xpos);
+    assertEquals(od.getBoxY() + od.getBoxHeight() / 2, ypos);
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
 
index 66480c9..842a0fd 100644 (file)
@@ -21,6 +21,8 @@
 package jalview.viewmodel;
 
 import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertFalse;
+import static org.testng.Assert.assertTrue;
 
 import jalview.analysis.AlignmentGenerator;
 import jalview.datamodel.Alignment;
@@ -55,7 +57,7 @@ public class OverviewDimensionsShowHiddenTest
 
   ViewportRanges vpranges;
 
-  Hashtable<SequenceI, SequenceCollectionI> hiddenRepSequences = new Hashtable<SequenceI, SequenceCollectionI>();
+  Hashtable<SequenceI, SequenceCollectionI> hiddenRepSequences = new Hashtable<>();
 
   HiddenColumns hiddenCols = new HiddenColumns();
 
@@ -209,7 +211,7 @@ public class OverviewDimensionsShowHiddenTest
     assertEquals(od.getBoxX(), 0);
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
-    assertEquals(vpranges.getStartSeq(),
+    assertEquals(vpranges.getStartSeq() + vpranges.getViewportHeight() / 2,
             Math.round((float) 10 * alheight / od.getSequencesHeight()));
     assertEquals(vpranges.getStartRes(), 0);
 
@@ -218,14 +220,13 @@ public class OverviewDimensionsShowHiddenTest
     assertEquals(od.getBoxY(), 0);
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
-    assertEquals(vpranges.getStartRes(),
-            Math.round((float) 6 * alwidth / od.getWidth()));
+    assertEquals(vpranges.getStartRes(), 0);
     assertEquals(vpranges.getStartSeq(), 0);
 
     // overly large boxX value reset to width-boxWidth
-    mouseClick(od, 100, 6);
+    mouseClick(od, 101, 6);
     assertEquals(od.getBoxX(), od.getWidth() - od.getBoxWidth());
-    assertEquals(od.getBoxY(), 6);
+    assertEquals(od.getBoxY(), 1);
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
     assertEquals(vpranges.getStartRes(),
@@ -237,11 +238,11 @@ public class OverviewDimensionsShowHiddenTest
 
     // overly large boxY value reset to sequenceHeight - boxHeight
     mouseClick(od, 10, 520);
-    assertEquals(od.getBoxX(), 10);
+    assertEquals(od.getBoxX(), 0);
     assertEquals(od.getBoxY(), od.getSequencesHeight() - od.getBoxHeight());
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
-    assertEquals(vpranges.getStartRes(),
+    assertEquals(0,
             Math.round((float) od.getBoxX() * alwidth / od.getWidth()));
 
     // here (float) od.getBoxY() * alheight / od.getSequencesHeight() = 507.5
@@ -265,18 +266,19 @@ public class OverviewDimensionsShowHiddenTest
                     / od.getSequencesHeight()));
 
     // move viewport so startRes non-zero and then mouseclick
-    moveViewportH(50);
+    moveViewportH(20);
 
     // click at viewport position
     int oldboxx = od.getBoxX();
     int oldboxy = od.getBoxY();
-    mouseClick(od, od.getBoxX() + 5, od.getBoxY() + 2);
-    assertEquals(od.getBoxX(), oldboxx + 5);
+    mouseClick(od, od.getBoxX() + od.getBoxWidth() / 2 + 6,
+            od.getBoxY() + od.getBoxHeight() / 2 + 3);
+    assertEquals(od.getBoxX(), oldboxx + 6);
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
     assertEquals(vpranges.getStartRes(),
             Math.round((float) od.getBoxX() * alwidth / od.getWidth()));
-    assertEquals(od.getBoxY(), oldboxy + 2);
+    assertEquals(od.getBoxY(), oldboxy + 3);
     assertEquals(
             vpranges.getStartSeq(),
             Math.round((float) od.getBoxY() * alheight
@@ -332,10 +334,15 @@ public class OverviewDimensionsShowHiddenTest
     assertEquals(vpranges.getStartRes(), 0);
 
     // click to right of hidden columns, box moves to click point
-    testBoxIsAtClickPoint(40, 0);
+    mouseClick(od, 60 + boxWidth / 2, boxHeight / 2);
+    assertEquals(od.getBoxX(), 60);
+    assertEquals(od.getBoxY(), 0);
+    assertEquals(od.getBoxWidth(), boxWidth);
+    assertEquals(od.getBoxHeight(), boxHeight);
     assertEquals(vpranges.getStartSeq(), 0);
     assertEquals(vpranges.getStartRes(),
-            Math.round((float) 40 * alwidth / od.getWidth())
+            Math.round(
+                    (float) 60 * alwidth / od.getWidth())
                     - (lastHiddenCol + 1));
 
     // click to right of hidden columns such that box runs over right hand side
@@ -343,7 +350,7 @@ public class OverviewDimensionsShowHiddenTest
     // box position is adjusted away from the edge
     // overly large boxX value reset to width-boxWidth
     xpos = 100;
-    mouseClick(od, xpos, 5);
+    mouseClick(od, xpos + boxWidth / 2, 5 + boxHeight / 2);
     assertEquals(od.getBoxX(), od.getWidth() - od.getBoxWidth());
     assertEquals(od.getBoxY(), 5);
     assertEquals(od.getBoxWidth(), boxWidth);
@@ -385,10 +392,10 @@ public class OverviewDimensionsShowHiddenTest
 
     // move box so that it overlaps with hidden cols on one side
     // box width changes, boxX and scrollCol as for unhidden case
-    int xpos = 55 - boxWidth; // 55 is position in overview approx halfway
+    int xpos = 54 - boxWidth / 2; // 54 is position in overview approx halfway
                               // between cols 60 and 70
-    mouseClick(od, xpos, 0);
-    assertEquals(od.getBoxX(), xpos);
+    mouseClick(od, xpos, boxHeight / 2);
+    assertEquals(od.getBoxX(), xpos - boxWidth / 2);
     assertEquals(od.getBoxY(), 0);
     assertEquals(
             od.getBoxWidth(),
@@ -396,14 +403,15 @@ public class OverviewDimensionsShowHiddenTest
                     * od.getWidth() / alwidth));
     assertEquals(od.getBoxHeight(), boxHeight);
     assertEquals(vpranges.getStartRes(),
-            Math.round(xpos * alwidth / od.getWidth()));
+            Math.round((xpos - boxWidth / 2) * alwidth / od.getWidth())
+                    + 1); // +1 for rounding
     assertEquals(vpranges.getStartSeq(), 0);
 
     // move box so that it completely covers hidden cols
     // box width changes, boxX and scrollCol as for hidden case
-    xpos = 33;
+    xpos = 24 + boxWidth / 2;
     mouseClick(od, xpos, 0);
-    assertEquals(od.getBoxX(), xpos);
+    assertEquals(od.getBoxX(), 24);
     assertEquals(od.getBoxY(), 0);
     assertEquals(
             od.getBoxWidth(),
@@ -411,42 +419,28 @@ public class OverviewDimensionsShowHiddenTest
                     * od.getWidth() / alwidth));
     assertEquals(od.getBoxHeight(), boxHeight);
     assertEquals(vpranges.getStartRes(),
-            Math.round((float) xpos * alwidth / od.getWidth()));
-    assertEquals(vpranges.getStartSeq(), 0);
-
-    // move box so boxX is in hidden cols, box overhangs at right
-    // boxX and scrollCol at left of hidden area, box width extends across
-    // hidden region
-    xpos = 50;
-    mouseClick(od, xpos, 0);
-    assertEquals(od.getBoxX(),
-            Math.round((float) (firstHidden - 1) * od.getWidth() / alwidth));
-    assertEquals(od.getBoxY(), 0);
-    assertEquals(
-            od.getBoxWidth(),
-            boxWidth
-                    + Math.round((float) (lastHidden - firstHidden + 1)
-                            * od.getWidth() / alwidth));
-    assertEquals(od.getBoxHeight(), boxHeight);
-    assertEquals(vpranges.getStartRes(), firstHidden - 1);
+            Math.round((float) 24 * alwidth / od.getWidth()));
     assertEquals(vpranges.getStartSeq(), 0);
 
     // move box so boxX is to right of hidden cols, but does not go beyond full
     // width of alignment
     // box width, boxX and scrollCol all as for non-hidden case
-    xpos = 75;
-    testBoxIsAtClickPoint(xpos, 0);
+    xpos = Math.round((float) 75 * od.getWidth() / alwidth) + boxWidth / 2;
+    mouseClick(od, xpos, boxHeight / 2);
+    assertEquals(od.getBoxX(), xpos - boxWidth / 2);
+    assertEquals(od.getBoxY(), 0);
+    assertEquals(od.getBoxWidth(), boxWidth);
+    assertEquals(od.getBoxHeight(), boxHeight);
     assertEquals(vpranges.getStartSeq(), 0);
     assertEquals(vpranges.getStartRes(),
-            Math.round(xpos * alwidth / od.getWidth())
-                    - (lastHidden - firstHidden + 1));
+            75 - (lastHidden - firstHidden + 1));
     
     // move box so it goes beyond full width of alignment
     // boxX, scrollCol adjusted back, box width normal
     xpos = 3000;
     mouseClick(od, xpos, 5);
     assertEquals(od.getBoxX(), od.getWidth() - od.getBoxWidth());
-    assertEquals(od.getBoxY(), 5);
+    assertEquals(od.getBoxY(), 0);
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
     assertEquals(
@@ -487,24 +481,29 @@ public class OverviewDimensionsShowHiddenTest
 
     // click to left of hidden cols, without overlapping
     // boxX, scrollCol and width as normal
-    int xpos = 5;
-    testBoxIsAtClickPoint(xpos, 0);
-    assertEquals(vpranges.getStartSeq(), 0);
-    assertEquals(vpranges.getStartRes(),
-            Math.round((float) xpos * alwidth / od.getWidth()));
+    int xpos = 30;
+    int ypos = 6;
+    testBoxIsAtClickPoint(xpos, ypos);
+    assertEquals(vpranges.getStartSeq(), Math
+            .round((float) (ypos - boxHeight / 2) * alheight
+                    / od.getHeight()));
+    assertEquals(vpranges.getStartRes(), Math.round(
+            (float) (xpos - boxWidth / 2) * alwidth / od.getWidth()));
 
     // click to left of hidden cols, with overlap
     // boxX and scrollCol adjusted for hidden cols, width normal
     xpos = Math.round((float) 145 * od.getWidth() / alwidth) - boxWidth;
-    mouseClick(od, xpos, 0);
+    mouseClick(od, xpos + boxWidth / 2, boxHeight / 2);
     assertEquals(od.getBoxX(),
-            Math.round((float) (firstHidden - 1) * od.getWidth() / alwidth)
+            Math.round((float) (firstHidden - 1)
+                    * od.getWidth() / alwidth)
                     - boxWidth + 1);
     assertEquals(od.getBoxY(), 0);
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
     assertEquals(vpranges.getStartRes(),
-            Math.round((float) od.getBoxX() * alwidth / od.getWidth()));
+            Math.round((float) (od.getBoxX()) * alwidth
+                    / od.getWidth()));
     assertEquals(vpranges.getStartSeq(), 0);
 
     // click in hidden cols
@@ -823,7 +822,7 @@ public class OverviewDimensionsShowHiddenTest
     assertEquals(od.getBoxHeight(), boxHeight);
 
     // click below hidden rows
-    mouseClick(od, 0, 150);
+    mouseClick(od, 0, 150 + boxHeight/2);
     assertEquals(od.getBoxX(), 0);
     assertEquals(od.getBoxY(), 150);
     assertEquals(od.getBoxWidth(), boxWidth);
@@ -860,26 +859,15 @@ public class OverviewDimensionsShowHiddenTest
     assertEquals(od.getBoxHeight(), boxHeight);
 
     // click above hidden rows, so that box overlaps
-    int ypos = 35; // column value in residues
-    mouseClick(od, 0,
-            Math.round((float) ypos * od.getSequencesHeight() / alheight));
-    assertEquals(od.getBoxX(), 0);
-    assertEquals(od.getBoxY(),
-            Math.round((float) ypos * od.getSequencesHeight() / alheight));
-    assertEquals(od.getBoxWidth(), boxWidth);
-    assertEquals(
-            od.getBoxHeight(),
-            boxHeight
-                    + Math.round((float) (lastHiddenRow - firstHiddenRow + 1)
-                            * od.getSequencesHeight() / alheight));
-
-    // click so that box straddles hidden rows
-    ypos = 44; // column value in residues
+    int rowpos = 35; // row value in residues
+    int centrepos = 43; // centre row
     mouseClick(od, 0,
-            Math.round((float) ypos * od.getSequencesHeight() / alheight));
+            Math.round((float) centrepos * od.getSequencesHeight()
+                    / alheight));
     assertEquals(od.getBoxX(), 0);
     assertEquals(od.getBoxY(),
-            Math.round((float) ypos * od.getSequencesHeight() / alheight));
+            Math.round(
+                    (float) rowpos * od.getSequencesHeight() / alheight));
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(
             od.getBoxHeight(),
@@ -915,19 +903,19 @@ public class OverviewDimensionsShowHiddenTest
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
 
-    // click above hidden rows
-    int ypos = 40; // row 40
+    // click above hidden rows, no overlap
+    int ypos = 40 + viewHeight / 2; // top is row 40
     mouseClick(od, 0,
             Math.round((float) ypos * od.getSequencesHeight() / alheight));
     assertEquals(od.getBoxX(), 0);
     assertEquals(od.getBoxY(),
-            Math.round((float) ypos * od.getSequencesHeight() / alheight));
+            Math.round((float) 40 * od.getSequencesHeight() / alheight));
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
 
     // click above hidden rows so box overlaps
     // boxY moved upwards, boxHeight remains same
-    ypos = 497; // row 497
+    ypos = 497 + viewHeight / 2; // row 497
     mouseClick(od, 0,
             Math.round((float) ypos * od.getSequencesHeight() / alheight));
     assertEquals(od.getBoxX(), 0);
@@ -939,7 +927,7 @@ public class OverviewDimensionsShowHiddenTest
     assertEquals(od.getBoxHeight(), boxHeight);
 
     // click within hidden rows
-    ypos = 505;
+    ypos = 505 + boxHeight / 2;
     mouseClick(od, 0,
             Math.round((float) ypos * od.getSequencesHeight() / alheight));
     assertEquals(od.getBoxX(), 0);
@@ -951,6 +939,105 @@ public class OverviewDimensionsShowHiddenTest
     assertEquals(od.getBoxHeight(), boxHeight);
   }
 
+  /**
+   * Test the function to determine if a point is in the overview's box or not
+   */
+  @Test(groups = { "Functional" })
+  public void testPositionInBox()
+  {
+    od.updateViewportFromMouse(0, 0, al.getHiddenSequences(), hiddenCols);
+
+    assertFalse(od.isPositionInBox(0, 0));
+    assertTrue(od.isPositionInBox(10, 9));
+    assertFalse(od.isPositionInBox(0, 9));
+    assertFalse(od.isPositionInBox(9, 0));
+    assertFalse(od.isPositionInBox(75, 20));
+
+    assertTrue(od.isPositionInBox(47, 6));
+    assertFalse(od.isPositionInBox(48, 6));
+    assertTrue(od.isPositionInBox(47, 9));
+    assertFalse(od.isPositionInBox(47, 10));
+
+    // hide columns in the box area
+    // extends area where a point is considered to be in the box
+    hiddenCols.hideColumns(1, 4);
+    od.setBoxPosition(al.getHiddenSequences(), hiddenCols);
+    assertFalse(od.isPositionInBox(0, 0));
+    assertTrue(od.isPositionInBox(10, 9));
+    assertFalse(od.isPositionInBox(0, 9));
+    assertFalse(od.isPositionInBox(9, 0));
+    assertFalse(od.isPositionInBox(75, 20));
+
+    assertTrue(od.isPositionInBox(47, 6));
+    assertTrue(od.isPositionInBox(48, 6));
+    assertTrue(od.isPositionInBox(47, 9));
+    assertFalse(od.isPositionInBox(47, 10));
+
+    // hide sequences in box area
+    // extends area where a point is considered to be in the box
+    hideSequences(1, 3);
+    ColumnSelection cs = new ColumnSelection();
+    hiddenCols.revealAllHiddenColumns(cs);
+    od.setBoxPosition(al.getHiddenSequences(), hiddenCols);
+    assertFalse(od.isPositionInBox(0, 0));
+    assertTrue(od.isPositionInBox(10, 9));
+    assertFalse(od.isPositionInBox(0, 9));
+    assertFalse(od.isPositionInBox(9, 0));
+    assertFalse(od.isPositionInBox(75, 20));
+
+    assertTrue(od.isPositionInBox(47, 6));
+    assertFalse(od.isPositionInBox(48, 6));
+    assertTrue(od.isPositionInBox(47, 9));
+    assertTrue(od.isPositionInBox(47, 10));
+  }
+
+  /**
+   * Test the dragging functionality
+   */
+  @Test(groups = { "Functional" })
+  public void testDragging()
+  {
+    od.updateViewportFromMouse(0, 0, al.getHiddenSequences(), hiddenCols);
+    od.setDragPoint(4, 16, al.getHiddenSequences(), hiddenCols);
+    od.adjustViewportFromMouse(20, 22, al.getHiddenSequences(), hiddenCols);
+
+    // updates require an OverviewPanel to exist which it doesn't here
+    // so call setBoxPosition() as it would be called by the AlignmentPanel
+    // normally
+    od.setBoxPosition(al.getHiddenSequences(), hiddenCols);
+
+    // corner moves 16 (20-4) right and 6 (22-16) up
+    assertEquals(od.getBoxX(), 16);
+    assertEquals(od.getBoxY(), 6);
+
+    // hide columns - box moves drag distance + hidden cols, vertically makes no
+    // difference
+    hiddenCols.hideColumns(1, 4);
+    od.updateViewportFromMouse(0, 0, al.getHiddenSequences(), hiddenCols);
+    od.setDragPoint(4, 16, al.getHiddenSequences(), hiddenCols);
+    od.adjustViewportFromMouse(20, 22, al.getHiddenSequences(), hiddenCols);
+    od.setBoxPosition(al.getHiddenSequences(), hiddenCols);
+
+    // corner moves 16 (20-4) + hiddenCols right and 6 (22-16) down
+    assertEquals(od.getBoxX(),
+            16 + Math.round((float) 4 * od.getWidth() / alwidth));
+    assertEquals(od.getBoxY(), 6);
+
+    // hide sequences in box area
+    // makes absolutely no difference
+    hideSequences(1, 3);
+    od.updateViewportFromMouse(0, 0, al.getHiddenSequences(), hiddenCols);
+    od.setDragPoint(4, 16, al.getHiddenSequences(), hiddenCols);
+    od.adjustViewportFromMouse(20, 22, al.getHiddenSequences(), hiddenCols);
+    od.setBoxPosition(al.getHiddenSequences(), hiddenCols);
+
+    // corner moves 16 (20-4) + hiddenCols right and 6 (22-16) + hiddenRows down
+    assertEquals(od.getBoxX(),
+            16 + Math.round((float) 4 * od.getWidth() / alwidth));
+    assertEquals(od.getBoxY(),
+            6 + Math.round((float) 3 * od.getHeight() / alheight));
+  }
+
   /*
    * Move viewport horizontally: startRes + previous width gives new horizontal extent. Vertical extent stays the same.
    */
@@ -993,14 +1080,14 @@ public class OverviewDimensionsShowHiddenTest
   }
   
   /*
-   * Test that the box is positioned with the top left corner at xpos, ypos
+   * Test that the box is positioned with the centre at xpos, ypos
    * and with the original width and height
    */
   private void testBoxIsAtClickPoint(int xpos, int ypos)
   {
     mouseClick(od, xpos, ypos);
-    assertEquals(od.getBoxX(), xpos);
-    assertEquals(od.getBoxY(), ypos);
+    assertEquals(od.getBoxX() + od.getBoxWidth() / 2, xpos);
+    assertEquals(od.getBoxY() + od.getBoxHeight() / 2, ypos);
     assertEquals(od.getBoxWidth(), boxWidth);
     assertEquals(od.getBoxHeight(), boxHeight);
 
index 452afa5..7b93801 100644 (file)
 <profiles version="12">
 <profile kind="CodeFormatterProfile" name="Jalview" version="12">
 <setting id="org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode" value="enabled"/>
-<setting id="org.eclipse.jdt.core.compiler.codegen.targetPlatform" value="1.5"/>
-<setting id="org.eclipse.jdt.core.compiler.compliance" value="1.5"/>
+<setting id="org.eclipse.jdt.core.compiler.codegen.targetPlatform" value="1.8"/>
+<setting id="org.eclipse.jdt.core.compiler.compliance" value="1.8"/>
 <setting id="org.eclipse.jdt.core.compiler.problem.assertIdentifier" value="error"/>
 <setting id="org.eclipse.jdt.core.compiler.problem.enumIdentifier" value="error"/>
-<setting id="org.eclipse.jdt.core.compiler.source" value="1.5"/>
+<setting id="org.eclipse.jdt.core.compiler.source" value="1.8"/>
 <setting id="org.eclipse.jdt.core.formatter.align_type_members_on_columns" value="false"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression" value="16"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation" value="52"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_binary_expression" value="16"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_if" value="16"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression" value="80"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_enum_constants" value="0"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_enum_constants" value="16"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer" value="16"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_method_declaration" value="0"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_multiple_fields" value="16"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration" value="16"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_resources_in_try" value="80"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation" value="16"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration" value="16"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration" value="16"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration" value="16"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration" value="16"/>
 <setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch" value="16"/>
 <setting id="org.eclipse.jdt.core.formatter.blank_lines_after_imports" value="1"/>
 <setting id="org.eclipse.jdt.core.formatter.blank_lines_after_package" value="1"/>
 <setting id="org.eclipse.jdt.core.formatter.blank_lines_before_field" value="1"/>
 <setting id="org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration" value="next_line"/>
 <setting id="org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration" value="next_line"/>
 <setting id="org.eclipse.jdt.core.formatter.brace_position_for_array_initializer" value="next_line_on_wrap"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case" value="next_line"/>
 <setting id="org.eclipse.jdt.core.formatter.brace_position_for_block" value="next_line"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case" value="next_line"/>
 <setting id="org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration" value="next_line"/>
 <setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_constant" value="next_line"/>
 <setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration" value="next_line"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_lambda_body" value="end_of_line"/>
 <setting id="org.eclipse.jdt.core.formatter.brace_position_for_method_declaration" value="next_line"/>
 <setting id="org.eclipse.jdt.core.formatter.brace_position_for_switch" value="next_line"/>
 <setting id="org.eclipse.jdt.core.formatter.brace_position_for_type_declaration" value="next_line"/>
 <setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment" value="false"/>
 <setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_block_comments" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_block_comments" value="false"/>
 <setting id="org.eclipse.jdt.core.formatter.comment.format_header" value="false"/>
 <setting id="org.eclipse.jdt.core.formatter.comment.format_html" value="true"/>
 <setting id="org.eclipse.jdt.core.formatter.comment.format_javadoc_comments" value="true"/>
 <setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries" value="true"/>
 <setting id="org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments" value="false"/>
 <setting id="org.eclipse.jdt.core.formatter.compact_else_if" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer" value="2"/>
 <setting id="org.eclipse.jdt.core.formatter.continuation_indentation" value="4"/>
-<setting id="org.eclipse.jdt.core.formatter.disabling_tag" value="@formatter\:off"/>
-<setting id="org.eclipse.jdt.core.formatter.enabling_tag" value="@formatter\:on"/>
+<setting id="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer" value="2"/>
+<setting id="org.eclipse.jdt.core.formatter.disabling_tag" value="@formatter:off"/>
+<setting id="org.eclipse.jdt.core.formatter.enabling_tag" value="@formatter:on"/>
 <setting id="org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line" value="false"/>
 <setting id="org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column" value="true"/>
 <setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header" value="true"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_binary_operator" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_ellipsis" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_ellipsis" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional" value="insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_before_unary_operator" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer" value="do not insert"/>
 <setting id="org.eclipse.jdt.core.formatter.use_on_off_tags" value="true"/>
 <setting id="org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations" value="false"/>
 <setting id="org.eclipse.jdt.core.formatter.wrap_before_binary_operator" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested" value="true
+<setting id="org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested" value="true"/>
 </profile>
 </profiles>
diff --git a/utils/eclipse/README b/utils/eclipse/README
new file mode 100644 (file)
index 0000000..e69de29