| LSA Cluster Survey |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| March 31, 2005 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Department |
Cluster name |
Owner |
Supporter (if different than owner) |
Use |
Year purchased |
Expected life |
# nodes |
# CPU |
# racks |
OS |
Interconnect |
Notes |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Astronomy |
wiglaf |
Astronomy |
jhallum |
This cluster is a multidepartment resource. The
majority of the time it is used for tightly parallel problems such as
hydrodynamic situations, but it is flexible enough to be used in loosely
parallel problems. There are 6 different research groups using this cluster
in 3 different departments (Astronomy, Math, and Physics), so it is difficult
to cover all of the problems being worked on in this short space. |
2002 |
2006-2007 |
16 |
32 |
0.6 |
Linux |
Myrinet |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Astronomy |
(to be decided) |
see notes |
jhallum |
??? |
2005 |
??? |
48 |
96 |
??? |
Linux |
??? |
Contingent upon Drs. Nuria Calvet and Lee Hartmann
accepting positions with the Department. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Biophysics Research Division |
mercury / hermes |
skrimm |
dsglaser |
??? |
2000 |
??? |
17 |
17 |
17 desktop machines |
Linux |
100 Mbps Ethernet |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Chemistry |
alpha |
andricio |
raeker |
Our research explores theoretical and computational
topics at the interface between structural molecular biology and physical
chemistry. It hinges on the central theme of developing and applying
computer and modeling methods to describe, in terms of dynamics and
thermodynamics, biologically important molecular processes, with the aim to
complement, enhance or predict experimental findings. One example is the
/Computer Simulation of DNA-Binding Machines/. Protein DNA interactions are
essential in such crucial cellular functions as replication, repair,
transcription or recombination. Many enzymes at and ahead of the replication
fork affect large DNA fragments. For instance, topoisomerases undo DNA
knotting. Others, like helicases and polymerases, are biomolecular motors:
they use the energy of binding and/or hydrolysis of nucleotides to do
mechanical work on the DNA fragments to which they bind. We have an avid
interest in the theoretical description of these fundamental genetic
processes through massively parallel computer simulations. Together with
postdocs and graduate students, we involve 5-6 undergraduates in such
simulations each year.
|
2003 |
"until last node dies" |
9 |
18 |
9 towers in one rack |
Linux |
GbE |
Frontend has 560 GB data storage; nodes have 100 GB
data storage and 2 GB RAM each. May move to Bioinformatics machine room. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Chemistry |
thermis |
nwalter |
raeker |
We use our 17-node dual-processor PC cluster largely
for molecular dynamics (MD) simulations of large RNA enzymes in explicit
water (about 9,000 atoms each). We use the software package AMBER 7.0 for
the simulations and later analyze our time trajectories using scripts written
in PERL. We are particularly interested in correlating the observed
structural dynamics of the RNA enzyme in silico with experimental
observations of such dynamics as observed by single molecule fluorescence
spectroscopy. 1 nanosecond of MD simulation takes about 1 week calculation
time on one node, and we typically like to repeat the same simulation several
times as well as run a number of closely related simulations in parallel. |
2003 |
"until last node dies" |
17 |
34 |
17 towers in two racks |
Linux |
GbE |
Frontend has 400 GB data storage; nodes have 80 GB
storage and 2 GB RAM each. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Chemistry |
hector |
rrsharp |
raeker |
Our 16-node Beowulf cluster is used primarily for
the calculation of NMR paramagnetic relaxation rates using Spin Dynamics
Simulation techniques. The SD algorithms are similar in spirit to Molecular
Dynamics simulations but involve quantum mechanical propagation of the
electron spin operators driven by a stochastic hamiltonian rather than, in
the= case of MD, classical propagation of molecular degrees of freedom. This
capability is essential to our research and is used on a day-by-day basis. |
2002 |
"until last node dies" |
16 |
16 |
15 towers in one rack |
Linux |
GbE |
100 GB disk space on frontend; 2 GB RAM per node |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Chemistry |
medussa |
eitan |
raeker |
At the present time, we mostly use the cluster for
running imaginary time path-integral and real-time classical molecular
dynamics simulations of liquids, as well as Langevin and Brownian simulations
of polymers. Such simulations require a lot of averaging, and having many
CPUÕs allows us to do this in a timely fashion. Those applications are also
relatively light on memory, which significantly lowers the price per CPU. We
do use MPI in order to ÒmanageÓ the averaging in an efficient manner. More
recently, we have become interested in applications that require multiple
diagonalizations of very large matrices, which are memory intensive, and it
is likely that our need for memory will rapidly grow in the future. |
2002 (with nodes added periodically since) |
"until last node dies" |
51 |
51 |
51 towers in five racks |
Linux |
100 Mbps Ethernet |
Frontend has 80 GB disk space 1 GB RAM; nodes have
40 GB and 1 GB RAM each. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Chemistry |
summer |
bdunietz |
raeker |
Ab initio electronic structure calculations |
2004 |
"until last node dies" |
20 |
40 |
1.5 |
Linux |
GbE |
All nodes have 4 GB RAM and 250 GB disk space. 5
nodes have additional 500 GB disk space. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Chemistry |
zeus |
lbartell |
raeker |
Zeus is dedicated to molecular dynamics simulations
of the spontaneous homogeneous nucleation of crystals in supercooled
liquids. The study of kinetics in this area of research has heretofore been
notoriously difficult, whether by laboratory experiment or the application of
theory, although many conjectures about what goes on during freezing have
been proposed. Since the topic is of importance in technology and is a
challenging topic in its own right in pure science, it is felicitous that
computer simulations have finally begun to provide answers. These
simulations are massively computer-intensive, however, and Zeus in its
present configuration is barely adequate. |
2002 |
"until last node dies" |
48 |
48 |
48 towers in three racks |
Linux |
100 Mbps Ethernet |
Frontend has 500 GB data storage; each node has 40
GB disk space and 1 GB RAM each. 16 more nodes might be added by end of
2005. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Chemistry |
tiamat |
Chemistry |
raeker |
Shared amoung various research groups who do not
have their own cluster. General molecular mechanics simulations, ab initio
electronic structure and crystalligraphic calculations. |
2000 |
"until last node dies" |
24 |
24 |
24 towers in two racks |
Linux |
GbE |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Economics |
(no name) |
Economics Lab |
aclrk |
Our cluster is an xgrid system that is used by some
grad students to perform Stata, Matlab and perl calculations in parallel. We
use desktop lab OS X machines as cluster nodes.
|
2004 |
??? |
5 |
10 |
10 towers |
MacOS X |
building Ethernet |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Geology |
condor |
poulsen |
messinam |
The Earth's climate record is one of global change.
For example, in the last 3 million years, Earth's climate has fluctuated
between glacial and interglacial states. The cause of these fluctuations is
largely unknown. We are using three-dimensional models of the ocean and the
atmosphere to understand the forcings and processes that have shaped Earth's
climate history. Our climate code has been optimized for cluster application,
allowing us to run long equilibrium simulations. |
2004 |
??? |
17 |
34 |
1 |
Linux |
Myrinet and GbE |
This cluster will be merged into petrarch. 1.5TB of
RAID storage served from master (master will become dedicated file server
after merge with Petrarch) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Geology |
petrarch |
tehlers |
messinam |
The primary application of the cluster is in the
simulation of the thermal, mechanical, and topographic evolution of
tectonically active mountain ranges. Various 3D finite element models are
coupled together to simulate the cooling history of rocks as a function of
different tectonic settings and erosional histories. Model results are
tested by comparison to geochemical data collected from the mountain range
being simulated. Hundreds to thousands of simulations are typically
conducted using an intelligent inverse scheme to find the range of model
parameters (and hence geologic processes) that produce results which satisfy
the data. Although most of the group's inverse model applications use an
'embarrassing parallel' approach to run a suite of simulations some
applications do take advantage of the message passing interface (MPI). |
2004-2005 |
??? |
33 |
50 |
2 |
Linux |
GbE; 16 of the nodes are on Myrinet for poulsen |
2.0TB of RAID storage served from a dedicated linux
file server |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Geology |
trans |
keken |
messinam |
The trans cluster is used for finite element
modeling of mantle convection with emphasis on the long term chemical and
physical evolution of the Earth's interior and the dynamics of mantle plumes
and subduction zones; massively parallel rendering of seismic wave
propagation through the Earth's interior; and development of parallel finite
element modeling tools. |
2003 |
??? |
37 |
37 |
2 |
Linux |
GbE |
2.0TB of RAID storage served from a dedicated linux
file server |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Geology |
udocluster |
ubecker |
messinam |
Mineral surface reactions are important in a number
of environmental processes such as adsorption of organic and inorganica
material, redox reactions, crystal growth and dissolution, the
adsorption/incorporation of nuclear material, to name a few. In order to
understand these processes at the molecular level and as a tool to understand
molecular scale microscopy and spectroscopy methods, we perform quantum
mechanical and, for larger systems, empirical force-field type calculations.
These are done on a number of minerals, surfaces, adsorption mechanisms with
coupled redox processes, and reactions involving organic species such as
growth inhibitors, siderophores, pesticides, and polypeptides. Especially for
quantum mechanical calculations, calculations can become very demanding.
Programs such as Castep, VASP, NWCHEM, Gaussian, Crystal etc. can sometimes
run for weeks on a parallel computer, just for a system containing several
tens of atoms. Therefore, we are using a linux cluster with currently 20 nodes
to accomodate these calculations. |
2004 |
??? |
9 |
10 |
0.5 |
Linux |
GbE |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Geology |
udo2 |
ubecker |
messinam |
Mineral surface reactions are important in a number
of environmental processes such as adsorption of organic and inorganica
material, redox reactions, crystal growth and dissolution, the
adsorption/incorporation of nuclear material, to name a few. In order to
understand these processes at the molecular level and as a tool to understand
molecular scale microscopy and spectroscopy methods, we perform quantum
mechanical and, for larger systems, empirical force-field type calculations.
These are done on a number of minerals, surfaces, adsorption mechanisms with
coupled redox processes, and reactions involving organic species such as
growth inhibitors, siderophores, pesticides, and polypeptides. Especially for
quantum mechanical calculations, calculations can become very demanding.
Programs such as Castep, VASP, NWCHEM, Gaussian, Crystal etc. can sometimes
run for weeks on a parallel computer, just for a system containing several
tens of atoms. Therefore, we are using a linux cluster with currently 20 nodes
to accomodate these calculations. |
2005 |
??? |
12 |
12 |
0.5 |
Linux |
GbE |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| LSA Information Technology |
obsidian |
LSAIT |
kpachla, lyzhang |
College-wide cluster for general faculty use.
Intended to allow faculty to run small jobs, and to developing code to run on
larger clusters at CAC or other supercomputing centers. |
2005 |
2008 |
17 |
34 |
1 |
Linux |
Infiniband, GbE |
On order. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| LSA Information Technology |
lsa-cluster2 |
LSAIT |
dpugh |
College-wide cluster for general faculty use.
Intended to allow faculty to run small jobs, and to developing code to run on
larger clusters at CAC or other supercomputing centers. |
2005 |
2008 |
17 |
34 |
1 |
MacOS X |
not decided yet |
To be ordered summer 2005, budget permitting. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| LSA Information Technology |
(to be decided) |
LSAIT |
kpachla, lyzhang |
Internal LSAIT testing and development |
2005 |
2009 |
3 |
6 |
0.15 |
Linux |
not decided yet |
To be ordered summer 2005, budget permitting. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| LSA Information Technology |
lsa-cluster1 |
LSAIT |
dpugh |
Internal LSAIT testing and development |
2004 |
2008 |
5 |
10 |
0.25 |
MacOS X |
GbE |
Currently also being used by EEB faculty. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Physics |
hypnos |
ATLAS group (DoE), MGRID |
smckee |
Support the Michigan ATLAS groups computing needs as
well as for some funded research programs (UltraLight, TeraPaths and
GridNFS). The ATLAS work involves significant grid middleware which is
provided by Grid3/Open Science Grid. Most simulations, reconstruction,
digitization and analysis codes involved are "embarrasingly"
parallel. Each code runs on a single processor with a minimum of 1 GB of RAM
per processor. |
2003 |
2007 |
14 |
27 |
1 + 7 towers |
Linux |
GbE |
Utilized for both ATLAS and networking research,
including 10 Gigabit ethernet, MPLS/QoS and GridNFS (based upon NFSv4).
Storage requirements are significant. The group currently has about 12
Terabytes of storage in RAID5 arrays as well as scattered storage on single
disks totaling about 22 Terabytes. Network connectivity also critical.
Currently has access directly to campus gigabit backbone and MiLR 10 gigabit
wavelength to Chicago/StarLight. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Physics |
um-atlas |
ATLAS group (DoE), MGRID |
smckee |
Support the Michigan ATLAS groups computing needs as
well as for some funded research programs (UltraLight, TeraPaths and
GridNFS). The ATLAS work involves significant grid middleware which is
provided by Grid3/Open Science Grid. Most simulations, reconstruction,
digitization and analysis codes involved are "embarrasingly"
parallel. Each code runs on a single processor with a minimum of 1 GB of RAM
per processor. |
2003 |
2007 |
128 |
256 |
5 |
Linux |
dual GbE |
Utilized for both ATLAS and networking research,
including 10 Gigabit ethernet, MPLS/QoS and GridNFS (based upon NFSv4).
Storage requirements are significant. The group currently has about 12
Terabytes of storage in RAID5 arrays as well as scattered storage on single
disks totaling about 22 Terabytes. Network connectivity also critical.
Currently has access directly to campus gigabit backbone and MiLR 10 gigabit
wavelength to Chicago/StarLight. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Physics |
opus |
evrard |
mbusha |
??? |
2004 |
no plan |
34 |
68 |
1 |
Linux |
GbE |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| TOTALS: |
|
|
|
|
|
|
597 |
964 |
16.5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* note: total number of racks does not count the
tower systems |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mean: |
25.95652174 |
41.91304348 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Median: |
17 |
34 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|