functional rna molecules are highly diverse and they are mainly structured by a set of short a - form helices that are typically about 10 base pairs in length .
these helices define elements of secondary structure which are then arranged in space through tertiary contacts and delimit motifs identifiable at the sequence or structure levels ( 1,2 ) . since these elements
define the overall fold of the molecule , evolutionary history can be studied directly from secondary structure ( 36 ) .
evolutionary studies have used both geometrical and statistical features ( characters ) describing topological and thermodynamic attributes of rna molecules to infer rooted phylogenetic trees ( branching histories of inheritance ) ( 511 ) .
such trees reveal evolutionary patterns that are generally overlooked by traditional phylogenetic methods that focus on sequence .
geometrical and statistical characters gave trees that were congruent and similarly rooted , and generally matched trees reconstructed from sequences .
the approach is robust and it has been applied to a wide variety of molecules at different taxonomical levels , from the subspecies / species levels to the universal tree .
for example , patterns in spacer rrna structures matched diversification patterns of phytopathogenic fungi following continental pathogen introduction ( 5 ) or habitat adaptation ( 6 ) , and resolved intrageneric relationships in caribbean gorgonian corals ( 12 ) . at higher taxonomical levels ,
analysis of rrna structure helped resolve rapid radiations in cladoceran orders of arthropodes ( 13 ) and deep phylogenetic relationships in the grasses ( 7 ) .
trees of life were even reconstructed from the structure of several molecules , including the small and large subunits of rrna ( 6,9 ) and trna ( 11 ) . finally , structural evolution was traced in ribosomes ( 9 ) and the origins and evolution of eukaryotic retrotransposable elements ( 8) and trna ( 10 ) was established . in order to facilitate phylogenetic analysis , we developed nobai ( numeration of objects in biology : alignment inferences ) , a software package that automates the task of coding information in the secondary structure of folded rna sequences .
nobai consists of four separate modules , which are written in either c or c++ : marten ( molecular analysis and recording tool for evolutionary numeration ) , stoat ( statistics of architectural topology ) , stringgen and omrokgen .
marten takes as input sequence and structural information in dcse format ( 14 ) , codes geometrical features in paired and unpaired regions of the molecules as linearly ordered multi - state characters and produces a file in nexus format ( 15 ) for analysis with standard phylogenetic software .
stoat takes as input nucleotide sequences in fasta format , folds the molecules ( with or without constraints ) using routines in rnafold ( 16,17 ) , calculates four normalized morphospace parameters that describe molecular mechanic properties of the molecules and produces a file in nexus format .
finally , stringgen and omrokgen are sequence randomization tools that read sequence strings and either generate all possible recombinations or rearrange sequences by single nucleotide permutation .
all four applications in the nobai software package are unix command line based and they do not have a graphical user interface ( gui ) . this paper presents the nobai web server .
the server is an apache installation that provides a web interface to the four applications in nobai .
the communication between the applications , the web server and the user ( such as the uploading of an input file and the presentation of the computational results ) is done by perl - cgi scripts .
the execution time for these samples ( when assuming no load on the server ) should be less than 10 seconds .
the computational results are made available for download from a temporal web page as both individual files and a compressed tar - file .
figure 1a illustrates how the secondary structure of functional rna molecules can be used to reconstruct evolutionary history in the form of phylogenetic trees .
this method requires that we know the geometrical shape of the molecules , either by inference using alignment and/or folding algorithms or experimentally through crystallographic or other methods .
the actual secondary structure of a specific rna molecule can be found in databases [ e.g. the european ribosomal rna database ( 18 ) or rfam ( 19 ) ] or can be obtained using predictive folding software [ e.g. the vienna package ( 17 ) ] . 

( a ) a sketch of how the secondary structure of rna molecules can be used to reconstruct the evolutionary history of organisms .
h , hairpin ; sx , stem number x ; ssx , substructure number x ; mx , molecule number x ; f , the frobenius norm ; q , shannon entropy ; p , base - pairing propensity and s , mean stem length .
( b ) a sketch of the processing performed by marten and stoat ( the two main programs in the nobai package ) . ( c ) a sketch of the processing performed by stringgen and omrokgen .
( a ) a sketch of how the secondary structure of rna molecules can be used to reconstruct the evolutionary history of organisms .
h , hairpin ; sx , stem number x ; ssx , substructure number x ; mx , molecule number x ; f , the frobenius norm ; q , shannon entropy ; p , base - pairing propensity and s , mean stem length .
( b ) a sketch of the processing performed by marten and stoat ( the two main programs in the nobai package ) . ( c )
geometrical characters describe individual molecular components ( substructures , ss ) , or the entire molecule .
for example , the sample molecule in figure 1a can be divided into six ss following the dcse format , one substructure for each stem strand .
these ss are further associated with three parameters : the number of unpaired nucleotides ( u ) , the number of paired nucleotides ( p ) and the number of bulged nucleotides ( b ) . for our sample molecule
the first stem strand ( s1 ) has 2 unpaired nucleotides , 5 paired nucleotides and 0 nucleotides in bulges or internal loops .
these three numbers can then be used in a geometrical character data matrix to represent s1 , as shown in figure 1a .
statistical characters define a morphospace that provides global descriptions of elements of secondary structure of folded nucleotide sequences .
these morphospace characters include the shannon entropy of the base - pairing probability matrix ( q ) , the frobenius norm ( f ) , the base - pairing propensity ( p ) and the mean stem length ( s ) ( 20,21 )
table 1 provides equations defining these four statistical parameters . as illustrated in figure 1a ,
terms used in the equations : ; pij , the base paring probability ; ak , the length of stem number k ( i.e. the number of paired nucleotides in that stem ) ; c , the number of paired bases ; n , the number of bases ; and b , the number of stemsshannon entropyfrobenius normbase - pairing propensitymean stem length statistical characters of folded rna sequences used by stoat .
terms used in the equations : ; pij , the base paring probability ; ak , the length of stem number k ( i.e. the number of paired nucleotides in that stem ) ; c , the number of paired bases ; n , the number of bases ; and b , the number of stems the generated character data matrices contain characters describing the rna molecules .
figure 1a shows how data matrices display character states and are used to generate phylogenetic trees .
several software packages , including paup * ( 22 ) , take these matrices in nexus format as input for phylogenetic analysis . if the character data matrices are flipped ( i.e. rows become columns and vice versa ) , then the data matrices can be used to create phylogenetic trees of ss in addition to the traditional phylogenetic trees of molecules .
these trees of ss are very useful and have been used to define origins and evolution of rna structure ( 810 ) .
the nobai web server provides a web interface to the applications in the nobai software package .
the web server is available at  www.manet.uiuc.edu / nobai / nobai.php , while source code of the applications can be obtained directly from the authors .
the service is free and open to all users and there is no login requirement .
the documentation pages are small manuals that give a brief description of both the application and the input parameters .
these manuals were originally written with unix man - page macros and thereafter converted to html by groff ( 23 ) .
the results from the computations performed on the web server are made available for download on a temporary web page after the calculation has ended .
this web page presents the computational results as both individual files and a tar file ( 24 ) .
the tar file is compressed with gzip ( 25 ) and it contains all the result files plus the user provided input .
the tar file will unpack all the files in the same directory as it is stored .
all files related to a specific computation are stored in a separate directory on the server for at least 24 hours .
however , the user needs to recall the exact web address to a file in order to download that file after the temporary web page has been lost .
figure 1 ( b and c ) gives an overview of the input , output and processing of the four applications in the nobai software package .
the two main programs are marten and stoat , which code phylogenetic characters associated with rna secondary structures .
omrokgen and stringgen on the other hand , are tools that generate new nucleotide strings in which the positions of the nucleotides in the original sequence are rearranged .
all four applications print information to standard out during the computation . on the web server ,
the main output from marten is a geometrical character data matrix written to a nexus file .
nex. marten also translates the input sequences from the dcse format to the fasta format .
fas. the default and maximum number of character states are 64 . however , the user can change the number of character states .
a capture of the marten web interface and result page are shown in figure 2 . 

a brief description of the input parameters can be found under the  documentation hyperlink .
( b ) capture of a temporary result page generated by the marten web interface .
the result files can either be downloaded as separate files or as a compressed tar file .
a brief description of the input parameters can be found under the  documentation hyperlink .
( b ) capture of a temporary result page generated by the marten web interface .
the result files can either be downloaded as separate files or as a compressed tar file .
note that in certain occasions dcse files downloaded from the european ribosomal rna database may contain sequences for which the  helix numbers are not located directly underneath the stem strands . if the number of stems strands for those sequences are less than the number of 
helix numbers , then marten may fail to assign the stem strands to a  helix number. when this situation occurs , marten excludes the sequence from the computation .
the user can , however , instruct marten to search for  helix numbers outside the stem strands , but it is often better to edit the input file manually instead , if the calculation fails .
stoat reads an input file in the fasta format and invokes the rnafold program ( version 1.4 ) from the vienna package ( 17 ) .
rnafold returns the minimum free energy ( mfe ) structure and the probability of base - pairing between bases i and j in the sequence ( pij ) .
the base - pairing probability stems from the partition function ( 26 ) and is needed to calculate the shannon entropy and the frobenius norm .
parameters such as the stem lengths ( ak ) and the number of stems ( b ) are calculated from the secondary structure of the folded nucleotides .
note that stoat divides stems containing bulges or internal loops into more than one substructure ( e.g. stem 2 of the sample molecule in figure 1a is divided into two ss ) .
these two files have the suffixes  _ l.nex and  _ g.nex. the local  _ l.nex file gives the character states relative to a linear scale based on the minimum and maximum values for that run .
the global  _ g.nex file gives the character states relative to 0 and 1 .
the statistical characters used in the matrices are the shannon entropy , the frobenius norm , the base - pairing propensity and the mean stem length ( table 1 ) . in the 
_ g.nex-file , the mean stem length is given as s. the default number of character states is 31 and the maximum number is 64 .
figure 3 shows a local nexus file generated by stoat and a consensus phylogenetic tree generated from it using paup*. 
 figure 3.character data matrix produced by stoat in nexus format ( _ l.nex file ) from 5s rrna archaeal structures ( a ) and strict consensus phylogenetic tree reconstructed using paup * using maximum parsimony as the optimality criterion .
note that only a top segment of the nexus file is shown and that the 5s rrna sequences are provided as sample input data in the web server .
character data matrix produced by stoat in nexus format ( _ l.nex file ) from 5s rrna archaeal structures ( a ) and strict consensus phylogenetic tree reconstructed using paup * using maximum parsimony as the optimality criterion .
note that only a top segment of the nexus file is shown and that the 5s rrna sequences are provided as sample input data in the web server .
the application reads a nucleotide sequence and applies a loop to select all possible sequences of that same length and base composition . because of computational limitations , the maximum sequence length for the web interface is 15 nucleotides .
however , the rearrangement is performed by a permutation procedure described in refs ( 20,27 ) .
this procedure consists of three perfect shuffles , each swapping nucleotides sequentially at all sites with a randomly chosen site elsewhere in the sequence . on the omrokgen web interface
these randomization tools shuffle sequences of any defined nucleotide composition and can be used to dissect the effects of composition and order of nucleotides in the stability of folded nucleic acids molecules ( 28 ) .
the main output from marten is a geometrical character data matrix written to a nexus file .
nex. marten also translates the input sequences from the dcse format to the fasta format .
fas. the default and maximum number of character states are 64 . however , the user can change the number of character states .
a capture of the marten web interface and result page are shown in figure 2 . 

a brief description of the input parameters can be found under the  documentation hyperlink .
( b ) capture of a temporary result page generated by the marten web interface .
the result files can either be downloaded as separate files or as a compressed tar file .
a brief description of the input parameters can be found under the  documentation hyperlink .
( b ) capture of a temporary result page generated by the marten web interface .
the result files can either be downloaded as separate files or as a compressed tar file .
note that in certain occasions dcse files downloaded from the european ribosomal rna database may contain sequences for which the  helix numbers are not located directly underneath the stem strands . if the number of stems strands for those sequences are less than the number of 
the user can , however , instruct marten to search for  helix numbers outside the stem strands , but it is often better to edit the input file manually instead , if the calculation fails .
stoat reads an input file in the fasta format and invokes the rnafold program ( version 1.4 ) from the vienna package ( 17 ) .
rnafold returns the minimum free energy ( mfe ) structure and the probability of base - pairing between bases i and j in the sequence ( pij ) .
the base - pairing probability stems from the partition function ( 26 ) and is needed to calculate the shannon entropy and the frobenius norm .
parameters such as the stem lengths ( ak ) and the number of stems ( b ) are calculated from the secondary structure of the folded nucleotides .
note that stoat divides stems containing bulges or internal loops into more than one substructure ( e.g. stem 2 of the sample molecule in figure 1a is divided into two ss ) .
these two files have the suffixes  _ l.nex and  _ g.nex. the local  _ l.nex file gives the character states relative to a linear scale based on the minimum and maximum values for that run . the global  _ g.nex file gives the character states relative to 0 and 1 .
the statistical characters used in the matrices are the shannon entropy , the frobenius norm , the base - pairing propensity and the mean stem length ( table 1 ) . in the 
_ g.nex-file , the mean stem length is given as s. the default number of character states is 31 and the maximum number is 64 .
figure 3 shows a local nexus file generated by stoat and a consensus phylogenetic tree generated from it using paup*. 
 figure 3.character data matrix produced by stoat in nexus format ( _ l.nex file ) from 5s rrna archaeal structures ( a ) and strict consensus phylogenetic tree reconstructed using paup * using maximum parsimony as the optimality criterion .
note that only a top segment of the nexus file is shown and that the 5s rrna sequences are provided as sample input data in the web server .
character data matrix produced by stoat in nexus format ( _ l.nex file ) from 5s rrna archaeal structures ( a ) and strict consensus phylogenetic tree reconstructed using paup * using maximum parsimony as the optimality criterion .
( b ) . note that only a top segment of the nexus file is shown and that the 5s rrna sequences are provided as sample input data in the web server .
the application reads a nucleotide sequence and applies a loop to select all possible sequences of that same length and base composition . because of computational limitations , the maximum sequence length for the web interface is 15 nucleotides .
however , the rearrangement is performed by a permutation procedure described in refs ( 20,27 ) .
this procedure consists of three perfect shuffles , each swapping nucleotides sequentially at all sites with a randomly chosen site elsewhere in the sequence . on the omrokgen web interface
these randomization tools shuffle sequences of any defined nucleotide composition and can be used to dissect the effects of composition and order of nucleotides in the stability of folded nucleic acids molecules ( 28 ) .
a software package has been developed to code geometrical and statistical phylogenetic characters from the secondary structure of folded rna sequences .
the applications in this software package have been made freely accessible on a web server open for all users .
this software package with its web interfaces will facilitate the search for evolutionary patterns embedded in the structure of functional rna .
 the numeration of objects in biology : alignment inferences ( nobai ) web server provides a web interface to the applications in the nobai software package . 
 this software codes topological and thermodynamic information related to the secondary structure of rna molecules as multi - state phylogenetic characters , builds character matrices directly in nexus format and provides sequence randomization options . 
 the web server is an effective tool that facilitates the search for evolutionary history embedded in the structure of functional rna molecules . 
 the nobai web server is accessible at  http://www.manet.uiuc.edu / nobai / nobai.php. this web site is free and open to all users and there is no login requirement . 
INTRODUCTION
METHODs
WEB SERVER
MARTEN
STOAT
STRINGGEN and OMROKGEN
CONCLUSIONS