Professional Documents
Culture Documents
Pymol Tutorial
Pymol Tutorial
PSB-CIBB
Babu A. Manjasetty PhD
Cyril Dian PhD
MariaRosa Quintero Bernabeu PhD
1
1 Introduction to the software
PyMOL is a molecular viewer, render tool, and 3D molecular editor intended for visu-
alization of 3D chemical structures including atomic resolution X-ray crystal structures
of: proteins, nucleic acids (DNA, RNA, and tRNA), and carbohydrates, as well as small
molecule structures of drug leads, inhibitors, metabolites, sugars, nucleoside phosphates,
and other ligands including inorganic salts and solvent molecules. PyMOL is a USER-
SPONSORED molecular visualization system on an OPEN-SOURCE foundation.
1.1 Visualization
To visualize a 3D structure the le has to be in the right format. The supported formats
are:
.pml PyMOL command script to be run on startup
.py, .pym, .pyc Python program to be run on startup
.pdb Protein Data Bank format le to be loaded on startup
.mmod Macromodel format to be loaded on startup
.mol MDL MOL le to be loaded on startup
.sdf MDL SD le to be parsed and loaded on startup
.xplor X-PLOR Map le (ASCII) to be loaded on startup
.ccp4 CCP4 map le (BINARY) to be loaded on startup
.cc1, .cc2 ChemDraw 3D cartesian coordinate le
.pkl Pickled ChemPy Model (class chempy.model.Indexe)
.r3d Raster3D le
.cex CEX le (Metaphorics)
.top AMBER topology le
.crd AMBER coordinate le
.rst AMBER restart le
.trj AMBER trajectory
.pse PyMOL session le
.phi Delphi/Grasp Electrostatic Potential Map
Once your structure is loaded, you can modify it. The simplest actions are:
close-up: zoom-in and out
surface/map: The surface representation of a protein, in PyMol, shows the Con-
nolly surface or the surface that would be traced out by the surfaces of waters in
contact with the protein at all possible positions.
symmetry: generate symmetry objects of your molecule.
align: align performs a sequence alignment followed by a structural alignment, and
then carrys out zero or more cycles of renement in order to reject structural outliers
found during the t.
2
stereo: the stereo option controls whether or not PyMOL displays the scene in stereo
mode. Stereo mode is a convenient way to see 3D. There are also various 3D modes
1.2 Input modes
Pymol supports two modes of input: point and click mode, and command line mode. It is
also possible to work using scripts.
Manually: the point and click allows you to quickly rotate the molecule(s) zoom in
and out and change the clipping planes.
command line: the command line mode where commands are entered into the external
GUI window supports all of the commands in the point and click mode, but is more
exible and possibly useful for complex selection and command issuing. Commands
entered on the command line are executed when you press the return key.
Script: running a Python script or a Pymol command script from PyMOL, usu-
ally the command: run script.py or rum script.pml is enough. Of course, the le
script.py(pml) needs to be in the working directory.
1.3 The Pymol interface
When PyMol is opened, two windows appear. The smaller window (called the External
GUI in PyMol documentation) contains the menu bar (File, Edit, Help, Display, etc),
shortcut buttons for common commands, and the command line. The second window is
the PyMOL Viewer, which is where all the magic happens. In the Viewer, 3D models are
displayed, and the user interacts (eg rotates) and manipulates the model.
Pymol viewer (3D Screen): the objects that PyMOL renders in 3D are loaded from
coordinate les that describe (in great detail) locations of individual atoms in the
molecule. PyMOL can display more than one object at a time, and provides an
Object Control Panel to adjust viewing modes, colors, labels, hiding, and just about
anything else relating to objects.
Object list: on the right-hand side of the Pymol viewer there is a list of all the objects
that have been loaded. After each object name is a set of command buttons which
control the object. Here are the buttons and some of their options:
A - Actions: Rename, duplicate, remove, apply presets (like ball-and-stick or
publication), perform computations
S - Show: Change the way things appear, eg change to stick or cartoon view.
H - Hide: Things that are shown using S accumulate, and dont automatically
replace the last view. H is the opposite of S and hides unwanted representations.
3
L- Label: Label atoms, residues, etc.
C - Color: Change the color of atoms and groups.
Command line: the PyMol command line is a great tool that lets the experienced user
change all sorts of options that simply dont appear in the point-and-click graphical
interface. It can also be a lot faster. Combined with scripting, it is a powerful option
for automating tasks and making intricate sets of changes. But, its complex, and
page upon page of PyMol documentation cover these commands, so were going to
ignore them as much as possible.
Mouse controls
L Rota M Move R MovZ Wheel Slab
Shift +Box -Box Clip MovS
Ctrl +/- PkAt Pk1 -
CtSh Sele Cent Menu -
DblClk Menu Cent PkAt -
Main commands Here you will nd the main commands for working with PyMOL.
Please refer to the Pymol reference card and other literature for more details.
1. open: in the external GUI, File open to open your le, that will be an object
on Pymol.
2. load (command): reads several le formats. If an object is specied, then the le
is loaded into that object. Otherwise, an object is created with the same name
as the le prex. usage: load lename [,object [,state [,format [,nish [,discrete
[,multiplex ]]]]]]
3. run: executes an external Python script in a local name space, the main Python
namespace, the global PyMOL namespace, or in its own namespace (as a mod-
ule). Usage: run python-script [, (local global module main private
) ]
4. set: is one of the most utilized commands. PyMOL representations, states,
options, etc. are changed with set. Briey, set changes one of the PyMOL state
variables. Usage set name, [,value [,object-or-selection [,state ]]]
5. select: mouse selection mode or as a command. Creates a named selection
from an atom selection. Selections are one of the most powerful aspects of
PyMOL and learning to use selections well is paramount to quickly achieving
your goals in PyMOL.
6. get (command): returns the value of a setting.
7. Help (command): typing help name of command on the command line, you get
information about how to use that command. Also there is a general help menu
on the external GUI.
4
8. Save: writes selected atoms to a le. File save (dierent options). Also as a
command, it is necessary to specify options. Usage save le [,(selection) [,state
[,format]] ]
9. Quit: close the program.
10. Reinitialize: reinitialize Pymol.
Wizards and plugins: there are special Python scripts which work with PyMOL in
order to obtain direct user interaction and easily perform complicated tasks. You
can access them through the wizards menu on the External GUI.
Plugins are external modules which extend Pymols capabilities. Available plugins (if
any) are shown in the Plugin menu on the External GUI. If no plugins are listed, then
either none have been installed, or those that are installed are not yet functional.
Rendering: this is a small plugin to render images with a given DPI. The Ray
button raytraces, and the Draw button just draws the image without raytracing
(a fast way to see that the height/width look good).(see 6)
2 Simple gure
Cartoon: right-hand side of the Pymol viewer, changes the default cartoon for a set
of atoms.
Color: right-hand side of the Pymol viewer, changes the color of an object or an atom
selection.
Background/light/shadow/fog/clip: Lighting is important for high-quality shots. Py-
MOL supports of up to 10 virtual lights. You can turn the lights on/o and also
position them where you want. Also it is possible to change the background color
and the shadows in your gure. You can also chose the clipping planes with clip.
Ray high resolution: creates a ray-traced image of the current frame. See 6
Example script
load gank_0207.pdb,a
bg_color white
set cartoon_fancy_helices, 0
Center: translates the window, the clipping slab, and the origin to a point centered
within the atom selection.
Zoom: scales and translates the window and the origin to cover the atom selection.
5
Selection (around/expand ect.): creates a named selection from an atom selection.
Selections are one of the most powerful aspects of PyMOL and learning to use se-
lections well is paramount to quickly achieving your goals in PyMOL. Selections can
be done mainly by typing in sele object-name/segi-id/chain-id/resi-id/name-id, or by
selecting directly on the sequence.
sequence: botton right-hand side of the Pymol viewer. Shows the sequence of your
molecule.
View: makes it possible to save and restore viewpoints on a given scene within a
single session.
Residues display: right-hand side of the Pymol viewer
Non bonded: right-hand side of the Pymol viewer. Shows non-bonded atoms
Coordination/hydrogen bonds: bond creates a new bond between two selections, each
of which should contain one atom. You can easily create a new bond by selecting two
atoms, each with the CTRL-MIDDLE-MOUSE-BUTTON and typing bond on the
command line.
Modication of any parameters (alter): alter changes one or more atomic properties
over a selection using the python evaluator with a separate name space for each atom.
Example script
load pdb, prot1
# zoom consistenly 20 Ang from each object at the center
center prot1
zoom center, 20
3 Symmetry/packing/align
Symmetry: set symmetry can be used to dene or redene the crystal and spacegroup
parameters for a molecule or map object. symexp creates all symmetry-related
objects for the specied object that occur within a cuto about an atom selection.
Align (pymol/coot/ccp4mg ect): performs a sequence alignment followed by a struc-
tural alignment, and then carrys out zero or more cycles of renement in order to
reject structural outliers found during the t. For comparing proteins with lower
sequence identity, an alignment program like, Cealign might be a better choice. Ex-
ample script:
align prot1////CA, prot2, object=alignment
6
Selection: see 2
Example script
load gank_0207.pdb,a
#symexp prefix, object, selection[, cutoff]
symexp sym=foo,(foo),5.0
delete sym*
4 NMR structures
NMR models should be loaded into the same object, but should have dierent states. Load
a model into an object and then slplit it into dierent states:
set all_states, on
split_states name
It is possible to t two structures, i.e. supperimpose them. Only matching atoms in
both selections will be used for the t.
fit (selection), (target-selection)
5 Maps and Surfaces
5.1 Loading and rendering electron density maps using ccp4 format
Use FFT to create a map in CCP4. (This task can be run from the Run FFT-Create
Map option under Map and Mask Utilities). You can create a simple map or a Fo-Fc
map as you wish. CCP4i will create a 2Fo-Fc map by default. To make a Fo-Fc map, set
F1=DELFWT and PHIC=PHDELWT in the task window. Select the option to cover all
atoms in PDB le. For pymol to read the map later, you will need to add the le extension
.map.ccp4 to the generated map.
1. Open pymol and read in your PDB le. Create a selection about whatever you want
to see the map around. Typically one would display the selection as sticks.
2. Open your map in pymol, e.g. mymap.map.ccp4 (you need the ccp4 extension). An
object named mymap.map will be created by pymol.
7
3. Identify a selection about which to display your map, e.g. Select site, resi X-Y and
resn Z
4. To display the map around your selection (e.g., named site) issue a command similar
to this:
isomesh map, mymap.map, 2.0, site, carve=1.6
This command will create a mesh map object named map from the object mymap.map,
contoured at 2.0 sigma, around the selection site, within 1.6
e
x
i
b
l
e
a
n
d
p
o
s
s
i
b
l
y
u
s
e
f
u
l
f
o
r
c
o
m
p
l
e
x
s
e
l
e
c
t
i
o
n
a
n
d
c
o
m
m
a
n
d
i
s
s
u
i
n
g
.
C
o
m
m
a
n
d
s
e
n
t
e
r
e
d
o
n
t
h
e
c
o
m
m
a
n
d
l
i
n
e
a
r
e
e
x
e
c
u
t
e
d
w
h
e
n
y
o
u
p
r
e
s
s
t
h
e
r
e
t
u
r
n
k
e
y
.
c
o
m
m
a
n
d
h
e
l
p
h
e
l
p
k
e
y
w
o
r
d
L
o
a
d
i
n
g
F
i
l
e
s
l
e
l
o
a
d
i
n
g
l
o
a
d
d
a
t
a
/
t
e
s
t
/
p
e
p
t
.
p
d
b
l
o
a
d
i
n
g
f
r
o
m
t
e
r
m
i
n
a
l
p
y
m
o
l
d
a
t
a
/
t
e
s
t
/
p
e
p
t
.
p
d
b
t
o
g
g
l
e
b
e
t
w
e
e
n
t
e
x
t
a
n
d
g
r
a
p
h
i
c
s
E
s
c
t
o
g
g
l
e
Y
a
x
i
s
r
o
c
k
i
n
g
r
o
c
k
s
t
e
r
e
o
v
i
e
w
s
t
e
r
e
o
o
n
/
o
f
f
s
t
e
r
e
o
t
y
p
e
s
t
e
r
e
o
c
r
o
s
s
e
y
e
/
w
a
l
l
e
y
e
/
q
u
a
d
b
u
f
f
e
r
u
n
d
o
a
c
t
i
o
n
u
n
d
o
r
e
s
e
t
v
i
e
w
r
e
s
e
t
r
e
i
n
i
t
i
a
l
i
z
e
P
y
m
o
l
r
e
i
n
i
t
i
a
l
i
z
e
q
u
i
t
(
f
o
r
c
e
,
e
v
e
n
i
f
u
n
s
a
v
e
d
)
q
u
i
t
M
o
u
s
e
C
o
n
t
r
o
l
L
M
R
W
h
e
e
l
R
o
t
a
M
o
v
e
M
o
v
Z
S
l
a
b
S
h
i
f
t
+
B
o
x
-
B
o
x
C
l
i
p
M
o
v
S
C
t
r
l
+
/
-
P
k
A
t
P
k
1
C
t
S
h
S
e
l
e
C
e
n
t
M
e
n
u
D
b
l
C
l
k
M
e
n
u
C
e
n
t
P
k
A
t
s
e
t
t
h
e
c
e
n
t
e
r
o
f
r
o
t
a
t
i
o
n
o
r
i
g
i
n
s
e
l
e
c
t
i
o
n
A
t
o
m
S
e
l
e
c
t
i
o
n
o
b
j
e
c
t
-
n
a
m
e
/
s
e
g
i
-
i
d
/
c
h
a
i
n
-
i
d
/
r
e
s
i
-
i
d
/
n
a
m
e
-
i
d
m
o
l
e
c
u
l
a
r
s
y
s
t
e
m
s
e
l
e
c
t
i
o
n
/
p
e
p
t
m
o
l
e
c
u
l
e
s
e
l
e
c
t
i
o
n
/
p
e
p
t
/
l
i
g
c
h
a
i
n
s
e
l
e
c
t
i
o
n
/
p
e
p
t
/
l
i
g
/
a
r
e
s
i
d
u
e
s
e
l
e
c
t
i
o
n
/
p
e
p
t
/
l
i
g
/
a
/
1
0
a
t
o
m
/
p
e
p
t
/
l
i
g
/
a
/
1
0
/
c
a
r
a
n
g
e
s
l
i
g
/
a
/
1
0
-
1
2
/
c
a
r
a
n
g
e
s
a
/
6
+
8
/
c
+
o
m
i
s
s
i
n
g
s
e
l
e
c
t
i
o
n
s
/
p
e
p
t
/
/
a
n
a
m
i
n
g
a
s
e
l
e
c
t
i
o
n
s
e
l
e
c
t
b
b
,
n
a
m
e
c
+
o
+
n
+
c
a
c
o
u
n
t
a
t
o
m
s
i
n
a
s
e
l
e
c
t
i
o
n
c
o
u
n
t
a
t
o
m
s
b
b
r
e
m
o
v
e
a
t
o
m
s
f
r
o
m
a
s
e
l
e
c
t
i
o
n
r
e
m
o
v
e
r
e
s
i
5
g
e
n
e
r
a
l
a
l
l
,
n
o
n
e
,
h
y
d
r
o
,
h
e
t
a
t
m
,
v
i
s
i
b
l
e
,
p
r
e
s
e
n
t
a
t
o
m
s
n
o
t
i
n
a
s
e
l
e
c
t
i
o
n
s
e
l
e
c
t
s
i
d
e
c
h
a
i
n
s
,
!
b
b
a
t
o
m
s
w
i
t
h
a
v
d
W
g
a
p
<
3
A
r
e
s
i
6
a
r
o
u
n
d
3
a
t
o
m
c
e
n
t
e
r
s
w
i
t
h
a
g
a
p
<
1
.
0
A
r
e
s
i
6
n
e
a
r
1
a
t
o
m
s
c
e
n
t
e
r
s
w
i
t
h
i
n
<
1
.
0
A
w
i
t
h
i
n
4
r
e
s
i
6
B
a
s
i
c
C
o
m
m
a
n
d
s
S
o
m
e
c
o
m
m
a
n
d
s
u
s
e
d
w
i
t
h
a
t
o
m
s
s
e
l
e
c
t
i
o
n
s
.
I
f
y
o
u
a
r
e
u
n
s
u
r
e
a
b
o
u
t
t
h
e
s
e
l
e
c
t
i
o
n
,
c
l
i
c
k
o
n
t
h
e
m
o
l
e
c
u
l
e
p
a
r
t
t
h
a
t
y
o
u
w
a
n
t
i
n
t
h
e
v
i
e
w
i
n
g
w
i
n
d
o
w
a
n
d
t
h
e
n
l
o
o
k
a
t
t
h
e
o
u
t
-
p
u
t
l
i
n
e
t
o
s
e
e
t
h
e
s
e
l
e
c
t
i
o
n
.
l
l
v
i
e
w
e
r
w
i
t
h
s
e
l
e
c
t
i
o
n
z
o
o
m
,
/
p
e
p
t
/
/
a
c
e
n
t
e
r
a
s
e
l
e
c
t
i
o
n
c
e
n
t
e
r
/
p
e
p
t
/
/
a
c
o
l
o
u
r
a
s
e
l
e
c
t
i
o
n
c
o
l
o
u
r
p
i
n
k
,
/
p
e
p
t
/
/
a
f
o
r
c
e
P
y
m
o
l
t
o
r
e
a
p
p
l
y
c
o
l
o
u
r
s
r
e
c
o
l
o
r
s
e
t
b
a
c
k
g
r
o
u
n
d
c
o
l
o
u
r
b
g
c
o
l
o
r
,
w
h
i
t
e
v
d
W
r
e
p
r
e
s
e
n
t
a
t
i
o
n
o
f
s
e
l
e
c
t
i
o
n
s
h
o
w
s
p
h
e
r
e
s
,
1
5
6
/
c
a
s
t
i
c
k
r
e
p
r
e
s
e
n
t
a
t
i
o
n
o
f
s
e
l
e
c
t
i
o
n
s
h
o
w
s
t
i
c
k
s
,
a
/
/
l
i
n
e
r
e
p
r
e
s
e
n
t
a
t
i
o
n
o
f
s
e
l
e
c
t
i
o
n
s
h
o
w
l
i
n
e
s
,
/
p
e
p
t
r
i
b
b
o
n
r
e
p
r
e
s
e
n
t
a
t
i
o
n
o
f
s
e
l
e
c
t
i
o
n
s
h
o
w
r
i
b
b
o
n
,
/
p
e
p
t
d
o
t
r
e
p
r
e
s
e
n
t
a
t
i
o
n
o
f
s
e
l
e
c
t
i
o
n
s
h
o
w
d
o
t
s
,
/
p
e
p
t
m
e
s
h
r
e
p
r
e
s
e
n
t
a
t
i
o
n
o
f
s
e
l
e
c
t
i
o
n
s
h
o
w
m
e
s
h
,
/
p
e
p
t
s
u
r
f
a
c
e
r
e
p
r
e
s
e
n
t
a
t
i
o
n
o
f
s
e
l
e
c
t
i
o
n
s
h
o
w
s
u
r
f
a
c
e
,
/
p
e
p
t
n
o
n
b
o
n
d
e
d
r
e
p
r
e
s
e
n
t
a
t
i
o
n
o
f
s
e
l
e
c
t
i
o
n
s
h
o
w
n
o
n
b
o
n
d
e
d
,
/
p
e
p
t
n
o
n
b
o
n
d
e
d
s
p
h
e
r
e
r
e
p
r
e
s
e
n
t
a
t
i
o
n
o
f
s
e
l
e
c
t
i
o
n
s
h
o
w
n
b
s
p
h
e
r
e
s
,
/
p
e
p
t
c
a
r
t
o
o
n
r
e
p
r
e
s
e
n
t
a
t
i
o
n
o
f
s
e
l
e
c
t
i
o
n
s
h
o
w
c
a
r
t
o
o
n
a
u
t
o
m
a
t
i
c
,
a
/
/
c
l
e
a
r
a
l
l
h
i
d
e
a
l
l
r
o
t
a
t
e
a
s
e
l
e
c
t
i
o
n
r
o
t
a
t
e
a
x
i
s
,
a
n
g
l
e
,
s
e
l
e
c
t
i
o
n
t
r
a
n
s
l
a
t
e
a
s
e
l
e
c
t
i
o
n
t
r
a
n
s
l
a
t
e
[
x
,
y
,
z
]
,
s
e
l
e
c
t
i
o
n
C
a
r
t
o
o
n
S
e
t
t
i
n
g
s
S
e
t
t
i
n
g
t
h
e
v
a
l
u
e
a
t
t
h
e
e
n
d
t
o
0
f
o
r
c
e
s
t
h
e
s
e
c
o
n
d
a
r
y
s
t
r
u
c
-
t
u
r
e
t
o
g
o
t
h
o
u
g
h
t
h
e
C
A
p
o
s
i
t
i
o
n
.
c
y
l
i
n
d
r
i
c
a
l
h
e
l
i
c
e
s
s
e
t
c
a
r
t
o
o
n
c
y
l
i
n
d
r
i
c
a
l
h
e
l
i
c
e
s
,
1
f
a
n
c
y
h
e
l
i
c
e
s
[
t
u
b
u
l
a
r
e
d
g
e
]
s
e
t
c
a
r
t
o
o
n
f
a
n
c
y
h
e
l
i
c
e
s
,
1
a
t
s
h
e
e
t
s
s
e
t
c
a
r
t
o
o
n
f
l
a
t
s
h
e
e
t
s
,
1
s
m
o
o
t
h
l
o
o
p
s
s
e
t
c
a
r
t
o
o
n
s
m
o
o
t
h
l
o
o
p
s
,
1
n
d
r
i
n
g
s
f
o
r
c
a
r
t
o
o
n
s
e
t
c
a
r
t
o
o
n
r
i
n
g
f
i
n
d
e
r
,
[
1
,
2
,
3
,
4
]
r
i
n
g
m
o
d
e
s
e
t
c
a
r
t
o
o
n
r
i
n
g
m
o
d
e
,
[
1
,
2
,
3
]
n
u
c
l
e
i
c
a
c
i
d
m
o
d
e
s
e
t
n
u
c
l
e
i
c
a
c
i
d
m
o
d
e
,
[
0
,
1
,
2
,
3
,
4
]
c
a
r
t
o
o
n
s
i
d
e
c
h
a
i
n
s
s
e
t
c
a
r
t
o
o
n
s
i
d
e
c
h
a
i
n
h
e
l
p
e
r
;
r
e
b
u
i
l
d
p
r
i
m
a
r
y
c
o
l
o
u
r
s
e
t
c
a
r
t
o
o
n
c
o
l
o
r
,
b
l
u
e
s
e
c
o
n
d
a
r
y
c
o
l
o
u
r
s
e
t
c
a
r
t
o
o
n
h
i
g
h
l
i
g
h
t
c
o
l
o
r
,
g
r
e
y
l
i
m
i
t
c
o
l
o
u
r
t
o
s
s
s
e
t
c
a
r
t
o
o
n
d
i
s
c
r
e
t
e
c
o
l
o
r
s
,
o
n
c
a
r
t
o
o
n
t
r
a
n
s
p
a
r
e
n
c
y
s
e
t
c
a
r
t
o
o
n
t
r
a
n
s
p
a
r
e
n
c
y
,
0
.
5
c
a
r
t
o
o
n
l
o
o
p
s
h
o
w
c
a
r
t
o
o
n
l
o
o
p
,
a
/
/
c
a
r
t
o
o
n
r
e
c
t
a
n
g
u
l
a
r
s
h
o
w
c
a
r
t
o
o
n
r
e
c
t
,
a
/
/
c
a
r
t
o
o
n
o
v
a
l
s
h
o
w
c
a
r
t
o
o
n
o
v
a
l
,
a
/
/
c
a
r
t
o
o
n
t
u
b
u
l
a
r
s
h
o
w
c
a
r
t
o
o
n
t
u
b
e
,
a
/
/
c
a
r
t
o
o
n
a
r
r
o
w
s
h
o
w
c
a
r
t
o
o
n
a
r
r
o
w
,
a
/
/
c
a
r
t
o
o
n
d
u
m
b
e
l
l
s
h
o
w
c
a
r
t
o
o
n
d
u
m
b
e
l
l
,
a
/
/
I
m
a
g
e
O
u
t
p
u
t
l
o
w
r
e
s
o
l
u
t
i
o
n
r
a
y
h
i
g
h
r
e
s
o
l
u
t
i
o
n
r
a
y
2
0
0
0
,
2
0
0
0
u
l
t
r
a
-
h
i
g
h
r
e
s
o
l
u
t
i
o
n
r
a
y
5
0
0
0
,
5
0
0
0
c
h
a
n
g
e
t
h
e
d
e
f
a
u
l
t
s
i
z
e
[
p
t
s
]
v
i
e
w
p
o
r
t
6
4
0
,
4
8
0
i
m
a
g
e
s
h
a
d
o
w
c
o
n
t
r
o
l
s
e
t
r
a
y
s
h
a
d
o
w
,
0
i
m
a
g
e
f
o
g
c
o
n
t
r
o
l
s
e
t
r
a
y
t
r
a
c
e
f
o
g
,
0
i
m
a
g
e
d
e
p
t
h
c
u
e
c
o
n
t
r
o
l
s
e
t
d
e
p
t
h
c
u
e
,
0
i
m
a
g
e
a
n
t
i
a
l
i
a
s
i
n
g
c
o
n
t
r
o
l
s
e
t
a
n
t
i
a
l
i
a
s
,
1
e
x
p
o
r
t
i
m
a
g
e
a
s
.
p
n
g
p
n
g
i
m
a
g
e
.
p
n
g
H
y
d
r
o
g
e
n
B
o
n
d
i
n
g
D
r
a
w
b
o
n
d
s
b
e
t
w
e
e
n
a
t
o
m
s
a
n
d
l
a
b
e
l
t
h
e
r
e
s
i
d
u
e
s
t
h
a
t
a
r
e
i
n
v
o
l
v
e
d
.
d
r
a
w
a
l
i
n
e
b
e
t
w
e
e
n
a
t
o
m
s
d
i
s
t
a
n
c
e
5
4
2
/
o
e
1
,
5
3
8
/
n
e
s
e
t
t
h
e
l
i
n
e
d
a
s
h
g
a
p
s
e
t
d
a
s
h
g
a
p
,
0
.
0
9
s
e
t
t
h
e
l
i
n
e
d
a
s
h
w
i
d
t
h
s
e
t
d
a
s
h
w
i
d
t
h
,
3
.
0
s
e
t
t
h
e
l
i
n
e
d
a
s
h
r
a
d
i
u
s
s
e
t
d
a
s
h
r
a
d
i
u
s
,
0
.
0
s
e
t
t
h
e
l
i
n
e
d
a
s
h
l
e
n
g
t
h
s
e
t
d
a
s
h
l
e
n
g
t
h
,
0
.
1
5
s
e
t
r
o
u
n
d
d
a
s
h
e
n
d
s
s
e
t
d
a
s
h
r
o
u
n
d
e
n
d
s
,
o
n
h
i
d
e
a
l
a
b
e
l
h
i
d
e
l
a
b
e
l
s
,
d
i
s
t
0
1
l
a
b
e
l
a
r
e
s
i
d
e
l
a
b
e
l
(
5
4
2
/
o
e
1
)
,
"
%
s
"
%
(
"
E
5
4
2
"
)
s
e
t
l
a
b
e
l
f
o
n
t
s
e
t
l
a
b
e
l
f
o
n
t
i
d
,
4
s
e
t
l
a
b
e
l
c
o
l
o
u
r
s
e
t
l
a
b
e
l
c
o
l
o
r
,
w
h
i
t
e
E
l
e
c
t
r
o
s
t
a
t
i
c
s
T
h
e
r
e
a
r
e
a
n
u
m
b
e
r
o
f
w
a
y
s
t
o
a
p
p
l
y
e
l
e
c
t
r
o
s
t
a
t
i
c
s
i
n
P
y
-
m
o
l
.
T
h
e
u
s
e
r
c
a
n
u
s
e
G
R
A
S
P
t
o
g
e
n
e
r
a
t
e
a
m
a
p
a
n
d
t
h
e
n
i
m
p
o
r
t
i
t
.
A
l
t
e
r
n
a
t
i
v
e
l
y
t
h
e
u
s
e
r
c
a
n
u
s
e
t
h
e
A
P
B
S
P
y
m
o
l
p
l
u
g
i
n
.
P
y
m
o
l
a
l
s
o
h
a
s
a
b
u
i
l
t
i
n
f
u
n
c
t
i
o
n
t
h
a
t
i
s
q
u
i
c
k
a
n
d
d
i
r
t
y
.
g
e
n
e
r
a
t
e
e
l
e
c
t
r
o
s
t
a
t
i
c
s
u
r
f
a
c
e
a
c
t
i
o
n
>
g
e
n
e
r
a
t
e
>
v
a
c
u
u
m
e
l
e
c
t
r
o
s
t
a
t
i
c
s
>
p
r
o
t
e
i
n
c
o
n
t
a
c
t
p
o
t
e
n
t
i
a
l
P
y
m
o
l
M
o
v
i
e
s
(
m
a
c
)
m
o
v
e
t
h
e
c
a
m
e
r
a
m
o
v
e
x
,
1
0
t
u
r
n
t
h
e
c
a
m
e
r
a
t
u
r
n
x
,
9
0
p
l
a
y
t
h
e
m
o
v
i
e
m
p
l
a
y
s
t
o
p
t
h
e
m
o
v
i
e
m
s
t
o
p
w
r
i
t
e
o
u
t
p
n
g
l
e
s
m
p
n
g
p
r
e
f
i
x
[
,
f
i
r
s
t
[
,
l
a
s
t
]
]
s
h
o
w
a
p
a
r
t
i
c
u
l
a
r
f
r
a
m
e
f
r
a
m
e
n
u
m
b
e
r
m
o
v
e
f
o
r
w
a
r
d
o
n
f
r
a
m
e
f
o
r
w
a
r
d
m
o
v
e
b
a
c
k
o
n
e
f
r
a
m
e
b
a
c
k
w
a
r
d
s
g
o
t
o
t
h
e
s
t
a
r
t
o
f
t
h
e
m
o
v
i
e
r
e
w
i
n
d
g
o
t
o
t
h
e
m
i
d
d
l
e
o
f
t
h
e
m
o
v
i
e
m
i
d
d
l
e
g
o
t
o
t
h
e
m
o
v
i
e
e
n
d
e
n
d
i
n
g
d
e
t
e
r
m
i
n
e
t
h
e
c
u
r
r
e
n
t
f
r
a
m
e
g
e
t
f
r
a
m
e
c
l
e
a
r
t
h
e
m
o
v
i
e
c
a
c
h
e
m
c
l
e
a
r
e
x
e
c
u
t
e
a
c
o
m
m
a
n
d
i
n
a
f
r
a
m
e
m
d
o
1
,
t
u
r
n
x
,
5
;
t
u
r
n
y
,
5
;
d
u
m
p
c
u
r
r
e
n
t
m
o
v
i
e
c
o
m
m
a
n
d
s
m
d
u
m
p
r
e
s
e
t
t
h
e
n
u
m
b
e
r
o
f
f
r
a
m
e
s
p
e
r
s
e
c
o
n
d
m
e
t
e
r
r
e
s
e
t
20
M
i
s
c
e
l
l
a
n
e
o
u
s
a
d
d
h
y
d
r
o
g
e
n
s
i
n
t
o
a
m
o
l
e
c
u
l
e
s
e
l
e
c
t
i
o
n
h
a
d
d
a
l
i
a
s
a
s
e
t
o
f
c
o
m
m
a
n
d
s
s
e
p
a
r
a
t
e
d
b
y
a
l
i
a
s
g
o
,
l
o
a
d
1
h
p
v
.
p
d
b
;
z
o
o
m
2
0
0
/
;
s
h
o
w
s
t
i
c
k
s
,
2
0
0
/
a
r
o
u
n
d
8
s
t
r
u
c
t
u
r
a
l
l
y
a
l
i
g
n
a
l
i
g
n
p
r
o
t
1
/
/
/
/
C
A
,
p
r
o
t
2
,
o
b
j
e
c
t
=
a
l
i
g
n
m
e
n
t
t
o
n
e
m
o
l
e
l
c
u
l
e
t
o
a
n
o
t
h
e
r
f
i
t
s
e
l
e
c
t
i
o
n
,
t
a
r
g
e
t
c
o
p
y
a
t
s
e
l
e
c
t
i
o
n
c
o
p
y
t
a
r
g
e
t
,
s
o
u
r
c
e
c
r
e
a
t
e
a
n
e
w
s
e
l
e
c
t
i
o
n
c
r
e
a
t
e
t
a
r
g
e
t
,
s
e
l
e
c
t
i
o
n
d
e
l
e
t
e
a
s
e
l
e
c
t
i
o
n
d
e
l
e
t
e
s
e
l
e
c
t
i
o
n
s
a
v
e
l
e
s
a
v
e
f
i
l
e
n
a
m
e
,
s
e
l
e
c
t
i
o
n
p
r
o
t
e
c
t
o
r
d
e
p
r
o
t
e
c
t
a
s
e
l
e
c
t
i
o
n
[
d
e
]
p
r
o
t
e
c
t
s
e
l
e
c
t
i
o
n
m
a
s
k
o
r
d
e
m
a
s
k
t
o
a
l
l
o
w
/
s
t
o
p
s
e
l
e
c
t
i
o
n
[
u
n
]
m
a
s
k
s
e
l
e
c
t
i
o
n
a
l
i
g
n
c
o
o
r
d
i
n
a
t
e
s
w
i
t
h
a
x
i
s
o
r
i
e
n
t
s
e
l
e
c
t
i
o
n
g
e
t
t
h
e
c
u
r
r
e
n
t
r
o
t
a
t
i
o
n
m
a
t
r
i
x
g
e
t
v
i
e
w
i
n
p
u
t
a
r
o
t
a
t
i
o
n
m
a
t
r
i
x
s
e
t
v
i
e
w
s
a
f
e
l
y
r
e
f
r
e
s
h
t
h
e
s
c
e
n
e
r
e
f
r
e
s
h
s
t
o
r
e
a
s
c
e
n
e
v
i
e
w
n
a
m
e
,
s
t
o
r
e
,
d
e
s
c
r
i
p
t
i
o
n
r
e
s
t
o
r
e
a
v
i
e
w
v
i
e
w
n
a
m
e
,
[
r
e
c
a
l
l
]
s
e
t
a
n
e
w
c
o
l
o
u
r
s
e
t
c
o
l
o
r
n
a
m
e
,
r
g
b
S
e
c
o
n
d
a
r
y
S
t
r
u
c
t
u
r
e
s
P
y
m
o
l
h
a
s
a
s
e
c
o
n
d
a
r
y
s
t
r
u
c
t
u
r
e
d
e
t
e
r
m
i
n
a
t
i
o
n
a
l
g
o
r
i
t
h
m
c
a
l
l
e
d
d
s
s
,
h
o
w
e
v
e
r
i
t
i
s
b
e
t
t
e
r
t
o
u
s
e
t
h
e
D
S
S
P
a
l
g
o
r
i
t
h
m
a
n
d
t
h
e
n
d
e
n
e
t
h
e
l
i
m
i
t
s
m
a
n
u
a
l
l
y
.
t
o
r
u
n
d
s
s
d
s
s
s
e
l
e
c
t
i
o
n
t
o
d
e
n
e
h
e
l
i
c
a
l
s
t
r
u
c
t
u
r
e
a
l
t
e
r
1
1
-
4
0
/
,
s
s
=
t
o
d
e
n
e
l
o
o
p
r
e
g
i
o
n
s
a
l
t
e
r
4
0
-
5
0
/
,
s
s
=
t
o
d
e
n
e
s
t
r
a
n
d
s
t
r
u
c
t
u
r
e
a
l
t
e
r
5
0
-
6
0
/
,
s
s
=
r
e
b
u
i
l
d
t
h
e
c
a
r
t
o
o
n
a
f
t
e
r
a
l
t
e
r
a
t
i
o
n
r
e
b
u
i
l
d
g
e
t
d
i
h
e
d
r
a
l
a
n
g
l
e
g
e
t
d
i
h
e
d
r
a
l
4
/
n
,
4
/
c
,
4
/
c
a
,
4
/
c
b
F
i
l
e
s
c
h
a
n
g
e
t
h
e
w
o
r
k
i
n
g
d
i
r
e
c
t
o
r
y
c
d
<
p
a
t
h
>
l
i
s
t
c
o
n
t
e
n
t
s
o
f
c
u
r
r
e
n
t
d
i
r
e
c
t
o
r
y
l
s
p
r
i
n
t
c
u
r
r
e
n
t
w
o
r
k
i
n
g
d
i
r
e
c
t
o
r
y
p
w
d
C
r
y
s
t
a
l
S
t
r
u
c
t
u
r
e
s
T
o
r
e
c
r
e
a
t
e
c
r
y
s
t
a
l
p
a
c
k
i
n
g
o
f
m
o
l
e
l
c
u
l
e
s
w
i
t
h
i
n
5
A
o
f
p
e
p
t
i
n
t
h
e
p
e
p
t
.
p
d
b
(
w
h
i
c
h
m
u
s
t
c
o
n
t
a
i
n
C
R
Y
S
T
d
a
t
e
)
,
u
s
e
t
h
e
s
y
m
e
x
p
c
o
m
m
a
n
d
.
s
y
m
e
x
p
s
y
m
,
p
e
p
t
,
(
p
e
p
t
)
,
5
.
0
N
M
R
S
t
r
u
c
t
u
r
e
s
N
M
R
m
o
d
e
l
s
s
h
o
u
l
d
b
e
l
o
a
d
e
d
i
n
t
o
t
h
e
s
a
m
e
o
b
j
e
c
t
,
b
u
t
s
h
o
u
l
d
h
a
v
e
d
i
e
r
e
n
t
s
t
a
t
e
s
.
l
o
a
d
a
m
o
d
e
l
i
n
t
o
a
n
o
b
j
e
c
t
l
o
a
d
f
i
l
e
.
p
d
b
,
o
b
j
e
c
t
s
h
o
w
a
l
l
m
o
d
e
l
s
i
n
a
n
o
b
j
e
c
t
s
e
t
a
l
l
s
t
a
t
e
s
,
1
s
h
o
w
o
n
l
y
o
n
e
o
b
j
e
c
t
m
o
d
e
l
s
e
t
a
l
l
s
t
a
t
e
s
,
0
s
h
o
w
a
p
a
r
t
i
c
u
l
a
r
m
o
d
e
l
f
r
a
m
e
m
o
d
e
l
n
u
m
b
e
r
d
e
t
e
r
m
i
n
e
w
h
i
c
h
m
o
d
e
l
g
e
t
m
o
d
e
l
t
t
w
o
s
t
r
u
c
t
u
r
e
s
t
o
o
n
e
a
n
o
t
h
e
r
f
i
t
s
e
l
e
c
t
i
o
n
t
a
n
d
c
a
l
c
u
l
a
t
e
t
h
e
r
m
s
r
m
s
s
e
l
e
c
t
i
o
n
r
m
s
w
i
t
h
o
u
t
t
t
i
n
g
r
m
s
c
u
r
s
e
l
e
c
t
i
o
n
t
e
n
s
e
m
b
l
e
s
t
r
u
c
t
u
r
e
s
i
n
t
r
a
f
i
t
s
e
l
e
c
t
i
o
n
,
1
c
a
l
c
u
l
a
t
e
r
m
s
i
n
t
r
a
r
m
s
s
e
l
e
c
t
i
o
n
,
s
t
a
t
e
e
n
s
e
m
b
l
e
r
m
s
w
i
t
h
o
u
t
t
t
i
n
g
i
n
t
r
a
r
m
s
c
u
r
s
e
l
e
c
t
i
o
n
,
s
t
a
t
e
C
h
a
n
g
i
n
g
S
t
r
u
c
t
u
r
e
s
a
d
d
a
b
o
n
d
b
o
n
d
a
t
o
m
1
,
a
t
o
m
2
r
e
m
o
v
e
b
o
n
d
s
u
n
b
o
n
d
a
t
o
m
1
,
a
t
o
m
2
j
o
i
n
t
o
m
o
l
e
c
u
l
e
s
t
o
g
e
t
h
e
r
f
u
s
e
[
a
t
o
m
1
,
a
t
o
m
2
]
O
l
d
S
c
h
o
o
l
I
m
a
g
e
s
L
o
a
d
a
.
p
d
b
a
n
d
m
a
k
e
a
c
a
r
t
o
o
n
v
i
e
w
.
T
h
e
n
c
h
a
n
g
e
t
h
e
b
a
c
k
g
r
o
u
n
d
c
o
l
o
u
r
t
o
w
h
i
t
e
a
n
d
c
h
a
n
g
e
t
h
e
r
a
y
m
o
d
e
t
o
2
.
s
e
t
r
a
y
t
r
a
c
e
m
o
d
e
,
2
m
a
k
e
t
h
e
l
i
n
e
s
t
h
i
n
n
e
r
s
e
t
a
n
t
i
a
l
i
a
s
,
2
r
a
y
t
r
a
c
e
t
h
e
i
m
a
g
e
r
a
y
c
2
0
0
7
-
2
0
0
9
R
.
B
r
y
n
F
e
n
w
i
c
k
l
i
c
e
n
s
e
d
u
n
d
e
r
t
h
e
t
e
r
m
s
o
f
t
h
e
G
N
U
G
e
n
e
r
a
l
P
u
b
l
i
c
L
i
c
e
n
s
e
2
.
0
o
r
l
a
t
e
r
.
2
21