Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Digp
veriNA3d
Commits
a9bf129b
Commit
a9bf129b
authored
Apr 09, 2019
by
Digp
Browse files
Deleted old folders
parent
979b28db
Pipeline
#3091
skipped
Changes
309
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
FigurePaper/example2/transcription_factor_pdb/9ant_2_1.ent.gz
deleted
100644 → 0
View file @
979b28db
File deleted
FigurePaper/example2/transcriptionfactors.R
deleted
100755 → 0
View file @
979b28db
#!/usr/bin/Rscript
## EXAMPLE 2
## Description: From a dataset of DNA-TF, plot the most frequent amino acids
## interacting with phosphate, sugar and base.
## Author: Diego Gallego
## ----------------------------------------------------------------------------
## Preprocess
## ----------------------------------------------------------------------------
## Load necessary packages for the example
library
(
veriNA3d
)
library
(
bio3d
)
plotAA
<-
function
(
ta
,
main
)
{
color
<-
rainbow
(
n
=
20
)
names
(
color
)
<-
c
(
"ALA"
,
"ARG"
,
"ASN"
,
"ASP"
,
"CYS"
,
"GLN"
,
"GLU"
,
"GLY"
,
"HIS"
,
"ILE"
,
"LEU"
,
"LYS"
,
"MET"
,
"PHE"
,
"PRO"
,
"SER"
,
"THR"
,
"TRP"
,
"TYR"
,
"VAL"
)
par
(
mar
=
c
(
0
,
3
,
1
,
0.6
))
a
<-
barplot
(
ta
[
5
:
1
]
/
sum
(
ta
),
xlim
=
c
(
0
,
0.7
),
las
=
2
,
border
=
0
,
#cex.lab=1, cex.axis=1, font=1, col=color[names(ta[1:5])],
xaxt
=
'n'
,
font
=
1
,
col
=
color
[
names
(
ta
[
5
:
1
])],
cex.names
=
1.5
,
main
=
main
,
cex.main
=
1.5
,
horiz
=
TRUE
)
}
## ----------------------------------------------------------------------------
## Get Raw data
cat
(
"Getting data\n"
)
## ----------------------------------------------------------------------------
path
<-
"transcription_factor_pdb/"
pdblist
<-
dir
(
path
,
pattern
=
".ent.gz"
)
pdblist
<-
gsub
(
".ent.gz"
,
""
,
pdblist
)
## Get structural data
aantinfo
<-
pipeProtNucData
(
pdbID
=
pdblist
,
path
=
path
,
extension
=
".ent.gz"
,
cutoff
=
10
,
cores
=
1
)
## ----------------------------------------------------------------------------
## Clean data. Raw -> Tidy
cat
(
"Cleaning data\n"
)
## ----------------------------------------------------------------------------
## Filter to keep only closest contacts using distance < 3 Angstroms
intdata
<-
aantinfo
[
aantinfo
$
distance
<
3
,
]
## Create objects of interest
P
<-
c
(
"OP1"
,
"OP2"
,
"OP3"
)
S
<-
c
(
"O4'"
,
"O3'"
,
"O5'"
)
B
<-
c
(
"N1"
,
"N2"
,
"N3"
,
"N4"
,
"N6"
,
"N7"
,
"O2"
,
"O4"
,
"O6"
)
ta_P
<-
sort
(
table
(
intdata
[
intdata
$
elety_A
%in%
P
,
"resid_B"
]),
decreasing
=
TRUE
)
ta_S
<-
sort
(
table
(
intdata
[
intdata
$
elety_A
%in%
S
,
"resid_B"
]),
decreasing
=
TRUE
)
ta_B
<-
sort
(
table
(
intdata
[
intdata
$
elety_A
%in%
B
,
"resid_B"
]),
decreasing
=
TRUE
)
## ----------------------------------------------------------------------------
## Exploratory analysis. Plot
cat
(
"Plotting data\n"
)
## ----------------------------------------------------------------------------
total
<-
sum
(
ta_P
,
ta_S
,
ta_B
)
tiff
(
"example2.tiff"
,
height
=
10.5
,
width
=
16.5
,
units
=
"cm"
,
res
=
300
)
par
(
mfrow
=
c
(
3
,
1
),
oma
=
c
(
4.5
,
1
,
1
,
1
))
## Phosphate interactions plot
plotAA
(
ta_P
,
main
=
paste
(
"Phosphate "
,
round
(
sum
(
ta_P
)
/
total
*
100
),
"%"
,
sep
=
""
))
## Sugar interactions plot
plotAA
(
ta_S
,
main
=
paste
(
"Sugar "
,
round
(
sum
(
ta_S
)
/
total
*
100
),
"%"
,
sep
=
""
))
## Base interactions plot
plotAA
(
ta_B
,
main
=
paste
(
"Base "
,
round
(
sum
(
ta_B
)
/
total
*
100
),
"%"
,
sep
=
""
))
axis
(
side
=
1
,
lwd
=
1.5
,
cex.axis
=
2
)
title
(
xlab
=
"Density"
,
cex.lab
=
2
,
outer
=
TRUE
)
dev.off
()
FigurePaper/example3/example3.tiff
deleted
100644 → 0
View file @
979b28db
6.91 MB
FigurePaper/example3/rnamg.R
deleted
100755 → 0
View file @
979b28db
#!/usr/bin/Rscript
## EXAMPLE 3
## Description: From the whole PDB, create a dataset of RNA structures with Mg
## and a threshold resolution of 2 Angstroms. Then, measure and
## plot the distances between Mg and other atom types.
## Author: Diego Gallego
## ----------------------------------------------------------------------------
## Preprocess
## ----------------------------------------------------------------------------
## Load necessary packages for the example
library
(
veriNA3d
)
library
(
ggplot2
)
## Specific dependency for this example!
library
(
reshape2
)
## Specific dependency for this example!
## ----------------------------------------------------------------------------
## Get Raw data
cat
(
"Getting data\n"
)
## ----------------------------------------------------------------------------
## From the whole PDB, prepare dataset of interest ============================
## Retrieve ALL entries in the PDB (including latest entries)
pdblist
<-
queryEntryList
(
justIDs
=
FALSE
)
## Keep only Nucleic Acid structures solved by diffraction techniques
nalist
<-
pdblist
[
which
(
grepl
(
"nuc"
,
pdblist
$
type
,
perl
=
TRUE
)
&
pdblist
$
technique
==
"diffraction"
),
"pdbID"
]
## Query which structures contain MG
mg
<-
toupper
(
unlist
(
queryAPI
(
ID
=
"MG"
,
API
=
"ebi"
,
verbose
=
TRUE
,
string1
=
"pdb/compound/in_pdb/"
,
string2
=
""
)))
mgnalist
<-
nalist
[
which
(
nalist
%in%
mg
)]
## Query resolution and keep only structures under 2 A
resol
<-
applyToPDB
(
mgnalist
,
queryResol
)
mgnalist
<-
resol
[
resol
[,
2
]
<
2
,
1
]
## Check entities in the structures and keep only PDBs with RNA
naent
<-
applyToPDB
(
mgnalist
,
countEntities
,
as.df
=
FALSE
)
naent
<-
as.data.frame
(
do.call
(
rbind
,
naent
),
stringsAsFactors
=
FALSE
)
mgrnalist
<-
mgnalist
[
which
(
naent
$
RNA
>
0
)]
## ============================================================================
## Loop over list of PDB IDs
distances
<-
do.call
(
rbind
,
lapply
(
seq_along
(
mgrnalist
),
function
(
i
)
{
## Download mmCIF and get entity of Mg
cif
<-
cifParser
(
mgrnalist
[
i
])
MG
<-
cifEntity
(
cif
)[
grepl
(
"MAGNE"
,
cifEntity
(
cif
)
$
pdbx_description
),
"id"
]
## Measure distances between Mg and other entities
return
(
measureEntityDist
(
cif
,
refent
=
MG
,
entities
=
"all"
,
cutoff
=
4
,
n
=
NULL
))
}))
## ----------------------------------------------------------------------------
## Clean data. Raw -> Tidy
cat
(
"Cleaning data\n"
)
## ----------------------------------------------------------------------------
Ow
<-
distances
$
distance
[
distances
$
resid_B
==
"HOH"
&
distances
$
elety_B
==
"O"
]
distances
<-
distances
[
distances
$
resid_B
%in%
c
(
"A"
,
"C"
,
"G"
,
"U"
),
]
Ob
<-
distances
$
distance
[
distances
$
elety_B
%in%
c
(
"O2"
,
"O4"
,
"O6"
)]
Or
<-
distances
$
distance
[
distances
$
elety_B
%in%
c
(
"O2'"
,
"O3'"
,
"O4'"
,
"O5'"
)]
Op
<-
distances
$
distance
[
distances
$
elety_B
%in%
c
(
"OP1"
,
"OP2"
,
"OP3"
)]
Nb
<-
distances
$
distance
[
distances
$
elety_B
%in%
c
(
"N1"
,
"N2"
,
"N3"
,
"N7"
)]
## Data frame with distances per type of aotm
dist
<-
list
(
Nb
=
Nb
,
Ob
=
Ob
,
Or
=
Or
,
Op
=
Op
,
Ow
=
Ow
)
df
<-
melt
(
dist
,
value.name
=
"Distance"
);
names
(
df
)[
2
]
<-
"atom"
df
$
atom
<-
factor
(
df
$
atom
,
levels
=
c
(
"Ow"
,
"Op"
,
"Or"
,
"Ob"
,
"Nb"
))
## ----------------------------------------------------------------------------
## Exploratory analysis. Plot
cat
(
"Plotting data\n"
)
## ----------------------------------------------------------------------------
tiff
(
"example3.tiff"
,
height
=
10.5
,
width
=
16.5
,
units
=
"cm"
,
res
=
300
)
colors
<-
c
(
"#87CEEB"
,
"#6A5ACD"
,
"#F08080"
,
"#DC143C"
,
"#4169E1"
)
ggplot
(
df
,
aes
(
x
=
Distance
,
fill
=
atom
))
+
ylab
(
"Frequency"
)
+
scale_fill_manual
(
values
=
colors
)
+
scale_y_continuous
(
breaks
=
NULL
)
+
scale_x_continuous
(
breaks
=
seq
(
1.2
,
4
,
0.4
))
+
geom_histogram
(
binwidth
=
0.03
,
color
=
"white"
)
+
theme
(
panel.grid.minor
=
element_blank
())
dev.off
()
FigurePaper/example4/dependencies.R
deleted
100644 → 0
View file @
979b28db
## plotM plots a pie chart using ggplot
plotM
<-
function
(
x
,
res
,
motifs
=
motifs
,
motifs2
=
motifs2
)
{
df
<-
data.frame
(
table
(
x
))
names
(
df
)
<-
c
(
"motif"
,
"value"
)
df
<-
df
[
order
(
df
$
value
),
]
fa
<-
factor
(
levels
(
df
$
motif
),
levels
=
c
(
motifs
,
motifs2
))
pie
<-
ggplot
(
df
,
aes
(
x
=
""
,
y
=
value
,
fill
=
motif
))
+
geom_bar
(
width
=
1
,
stat
=
"identity"
)
+
coord_polar
(
"y"
,
start
=
0
)
blank_theme
<-
theme_minimal
()
+
theme
(
axis.title.x
=
element_blank
(),
axis.title.y
=
element_blank
(),
panel.border
=
element_blank
(),
panel.grid
=
element_blank
(),
axis.ticks
=
element_blank
(),
plot.title
=
element_text
(
size
=
14
,
face
=
"bold"
))
pie
+
scale_fill_manual
(
values
=
rainbow
(
length
(
levels
(
fa
)))[
fa
])
+
blank_theme
+
theme
(
axis.text.x
=
element_blank
())
+
labs
(
title
=
res
)
}
FigurePaper/example4/example4.tiff
deleted
100644 → 0
View file @
979b28db
This image diff could not be displayed because it is too large. You can
view the blob
instead.
FigurePaper/example4/modbase.R
deleted
100755 → 0
View file @
979b28db
#!/usr/bin/Rscript
## EXAMPLE 4
## Description: Get lists of PDBs containing a 3 RNA modified residues,
## then filter by resolution and execute DSSR. Plot motif in which
## the modified residues are found.
## Author: Diego Gallego
## ----------------------------------------------------------------------------
## Preprocess
## ----------------------------------------------------------------------------
## Load necessary packages for the example
library
(
veriNA3d
)
library
(
ggplot2
)
## Specific dependency for this example!
library
(
gridExtra
)
## Specific dependency for this example!
library
(
scales
)
## Specific dependency for this example!
## Load specific functions for the example
source
(
"dependencies.R"
)
## ----------------------------------------------------------------------------
## Get Raw data
cat
(
"Getting and cleaning data\n"
)
## ----------------------------------------------------------------------------
modres
<-
c
(
"1MA"
,
"6MA"
,
"4SU"
)
motifs
<-
c
(
"hairpin-loop"
,
"junction-loop"
,
"ss-non-loop"
,
"internal-loop"
)
motifs2
<-
c
(
"helix"
)
#, "helix-end")
out
<-
lapply
(
modres
,
function
(
res
)
{
## Query which structures contain the modres of interest
pdblist
<-
toupper
(
unlist
(
queryAPI
(
ID
=
res
,
API
=
"ebi"
,
verbose
=
TRUE
,
string1
=
"pdb/compound/in_pdb/"
,
string2
=
""
)))
## Query resolution and keep only structures under 3 A
resol
<-
applyToPDB
(
pdblist
,
queryResol
)
pdblist
<-
resol
[
resol
[,
2
]
<
3
,
1
]
output
<-
c
();
counter
<-
0
## Loop over list of PDB IDs
for
(
i
in
seq_along
(
pdblist
))
{
tryCatch
({
## Execute DSSR
dssrdata
<-
dssr
(
pdblist
[
i
])
## ----------------------------------------------------------------------------
## Clean data. Raw -> Tidy
## ----------------------------------------------------------------------------
## Extract data of interest
data
<-
dssrdata
$
models
$
parameters
$
nts
[[
1
]]
summary
<-
data
$
summary
[
data
$
nt_name
==
res
]
for
(
j
in
seq_along
(
summary
))
{
dat
<-
unlist
(
strsplit
(
summary
[
j
],
","
))
ind
<-
which
(
dat
%in%
motifs
)
if
(
length
(
ind
)
==
0
)
{
ind
<-
which
(
dat
%in%
motifs2
)
}
if
(
length
(
ind
)
!=
0
)
{
counter
<-
counter
+
1
output
[
counter
]
<-
dat
[
ind
]
in2
<-
which
(
data
$
nt_name
==
res
)
## Save neigbouring sequence
write
(
c
(
dat
[
ind
],
paste
(
data
$
nt_name
[(
in2
-2
)
:
(
in2
+2
)],
collapse
=
"-"
)),
file
=
"seq.txt"
,
ncolumns
=
2
,
append
=
T
,
sep
=
" "
)
}
}
## If DSSR fails with the given structure, do nothing
},
error
=
function
(
e
)
{})
}
return
(
output
)
})
## ----------------------------------------------------------------------------
## Exploratory analysis. Plot
cat
(
"Plotting data\n"
)
## ----------------------------------------------------------------------------
p
<-
lapply
(
1
:
3
,
function
(
i
)
{
plotM
(
out
[[
i
]],
res
=
modres
[
i
],
motifs
=
motifs
,
motifs2
=
motifs2
)
})
tiff
(
"example4.tiff"
,
height
=
10.5
,
width
=
24.75
,
units
=
"cm"
,
res
=
300
)
grid.arrange
(
p
[[
1
]],
p
[[
2
]],
p
[[
3
]],
ncol
=
3
)
dev.off
()
FigurePaper/example4/out_motifs.Rda
deleted
100644 → 0
View file @
979b28db
File deleted
FigurePaper/example4/seq.txt
deleted
100644 → 0
View file @
979b28db
hairpin-loop C-G-1MA-U-C
hairpin-loop C-G-1MA-U-C
hairpin-loop C-A-1MA-G-U
hairpin-loop C-A-1MA-G-U
hairpin-loop C-G-1MA-U-C
hairpin-loop C-G-1MA-U-C
hairpin-loop C-G-1MA-U-C
hairpin-loop C-G-1MA-U-C
hairpin-loop C-G-1MA-U-C
hairpin-loop C-G-1MA-A-U
hairpin-loop C-G-1MA-U-C
hairpin-loop C-G-1MA-U-C
hairpin-loop C-G-1MA-U-C
hairpin-loop U-G-1MA-A-A
hairpin-loop C-G-1MA-U-C
hairpin-loop C-G-1MA-U-C
hairpin-loop C-G-1MA-U-C
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop C-G-1MA-C-U
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop C-G-1MA-U-C
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop U-G-1MA-A-A
hairpin-loop C-G-1MA-U-C
hairpin-loop U-G-1MA-A-A
hairpin-loop C-A-1MA-G-U
internal-loop U-C-1MA-C-G
ss-non-loop U-C-1MA-C-G
ss-non-loop U-C-1MA-C-G
internal-loop U-C-1MA-C-G
internal-loop U-C-1MA-C-G
hairpin-loop U-G-1MA-A-A
internal-loop U-G-1MA-A-A
hairpin-loop C-G-1MA-U-C
helix DC-DG-6MA-DT-DC
helix DC-DG-6MA-DT-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DA-DC
internal-loop DG-DG-6MA-DT-DC
helix DC-DG-6MA-DT-DC
helix DC-DG-6MA-DT-DC
internal-loop DA-DG-6MA-DT-DC
helix DA-DG-6MA-DT-DC
helix DG-DG-6MA-DT-DC
helix DG-DG-6MA-DT-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DA-DC
helix DA-DG-6MA-DT-DC
helix DA-DG-6MA-DT-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DA-DC
helix DC-DG-6MA-DT-DC
helix DC-DG-6MA-DT-DC
helix DC-DG-6MA-DT-DC
helix DC-DG-6MA-DT-DC
helix DA-DT-6MA-DG-DC
helix DG-DA-6MA-DT-DT
helix DG-DA-6MA-DT-DT
helix DG-DG-6MA-DT-DC
helix DG-DG-6MA-DT-DC
helix DG-DG-6MA-DT-DC
helix DG-DG-6MA-DT-DC
helix DG-DG-6MA-DT-DC
helix DG-DG-6MA-DT-DC
helix DG-DG-6MA-DT-DC
helix DG-DG-6MA-DT-DC
internal-loop DA-DA-6MA-DA-DC
internal-loop DA-DA-6MA-DA-DC
internal-loop DA-DA-6MA-DA-DC
internal-loop DA-DA-6MA-DA-DC
helix DT-DG-6MA-DT-DT
helix DT-DG-6MA-DT-DT
helix DT-DG-6MA-DT-DT
helix DT-DG-6MA-DT-DT
helix DT-DG-6MA-DT-DT
helix DT-DG-6MA-DT-DT
helix DT-DG-6MA-DT-DT
helix DT-DG-6MA-DT-DT
helix DT-DG-6MA-DT-DT
helix DT-DG-6MA-DT-DT
junction-loop G-U-4SU-A-A
junction-loop G-G-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-A-4SU-A-G
ss-non-loop U-A-4SU-C-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop C-G-4SU-A-G
junction-loop C-G-4SU-A-G
junction-loop C-G-4SU-A-G
junction-loop C-G-4SU-A-G
junction-loop C-G-4SU-A-G
junction-loop C-G-4SU-A-G
junction-loop C-G-4SU-A-G
junction-loop C-G-4SU-A-G
junction-loop C-G-4SU-A-G
junction-loop C-G-4SU-A-G
junction-loop G-G-4SU-G-G
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-U-A
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
hairpin-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
ss-non-loop G-G-4SU-G-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-G-4SU-G-G
junction-loop G-U-4SU-G-A
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop A-U-4SU-A-G
junction-loop A-U-4SU-A-G
junction-loop A-U-4SU-A-G
junction-loop A-U-4SU-A-G
junction-loop A-U-4SU-A-G
junction-loop A-U-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-G-4SU-G-G
junction-loop G-G-4SU-G-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop G-A-4SU-A-G
junction-loop A-U-4SU-A-G
junction-loop A-U-4SU-A-G
junction-loop A-U-4SU-A-G
junction-loop A-U-4SU-A-G
junction-loop A-U-4SU-A-G
junction-loop A-U-4SU-A-G
Prev
1
…
12
13
14
15
16
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment