drug discovery is a complex and expensive endeavor that usually requires seven major steps : disease selection , target hypothesis , lead compound identification ( screening ) , lead optimization , pre - clinical trial , clinical trial and pharmacogenomic optimization . among the various techniques used to facilitate the drug discovery process , virtual or in silico ligand screening ( vls ) based on the structure of known ligands or on the structure of the receptor is becoming a method of choice ( 111 ) , as seen in several recent studies [ reviewed in ( 1216 ) ] .
it has been suggested that these libraries of purchasable small organic compounds should be filtered [ adme / tox ( absorption , distribution , metabolism , excretion and toxicity ) filtering ] in an attempt to work with databases of molecules with acceptable physical properties and chemical functionalities , at least consistent with known drug profiles ( 1727 ) .
common filtering protocols can be variations of lipinski 's rule - of - five ( or ro5 , potential for oral bioavailability ) ( 25 ) : molecular weight ( mw ) ( poor absorption is observed if mw is more than 500 ) , computed log p ( p = octanol / water partition coefficient ) ( should not be more than 5 ) , h - bond donors ( should not be more than 5 ) and h - bond acceptors ( should not be more than 10 ) .
filters can also include a limit on the number of rotatable bonds , on the polar surface area ( a value correlated to the number of h - bond donors and acceptors ) among others , or can remove compounds containing specific chemical substructures associated with poor chemical stability or toxicity and sometimes attempt to predict drug metabolism ( e.g. cytochrome - mediated metabolism , pgp efflux ) ( 2832 ) .
the selected molecules after applying lipinski 's ro5 or related filters based on physicochemical properties or investigation of chemical functionalities are erroneously called 
drug - like while in fact , many organic compounds conform to the above listed rules but they are by no means drug - like ( 33 ) .
in fact , these rules define only some necessary conditions for a drug candidate ( such as likely solubility , bio - availability ) but not sufficient ones .
different levels of filtering could be applied in agreement with the aims of the project .
for instance , soft filtering protocols are usually appropriate for cancer projects while , for some other studies , only small and rigid compounds / fragments ( low mw , few rotatable bonds ) are needed ( e.g. fragment - based lead discovery projects or fraganomics ) ( 34 ) .
only few online adme / tox tools are available , they can usually evaluate one compound at a time ( table 1 ) while commercial packages are in general expensive [ see review ( 35 ) ] .
compound libraries can be found online , but they are usually not free nor filtered ( table 2 ) ( 36 ) .
only recently , a free 3d database of compounds ready for vls projects has been reported , zinc :   ( 37 ) .
it is also possible to perform adme / tox computations via zinc and in this case they are carried out by the program filter ( openeye scientific software , a program to remove undesirable molecules based on physicochemical properties and about 100 rules to eliminate unstable / reactive / dye chemical groups as well as to desalt the molecules ) . for the time being , the users of zinc can only apply default thresholds for the various computed properties .
because adme / tox calculations are usually not available online , we have created faf - drugs , a tool to perform physicochemical filtering .
also , in order to make vls experiments easier to perform to a broad community of users , we have interfaced several additional utilities ( such as binding site prediction , openbabel  ) and processed five major compound collections .
we use frowns ( developed by brian kelley ) , a chemoinformatics toolkit ( ) written in python and c++ to parse / read smiles ( see explanations about the format at ) or sdf files ( see format at molecular design limited ) .
we have implemented an algorithm in python that make use of frowns features to compute properties known to be important for filtering databases and that utilizes xtool ( 38 ) to compute log p - values . because salts and counterions are often present in compound collections we recommend users to first apply the desalt utility that removes most salts and counterions prior to faf - drugs calculations .
then , our program computes the following molecular properties : 
 ( i ) molecular weight ( part of lipinski 's ro5)(ii ) hydrogen bond donors and acceptors ( part of lipinski 's ro5 ) ( i ) molecular weight ( part of lipinski 's ro5 ) ( ii ) hydrogen bond donors and acceptors ( part of lipinski 's ro5 ) defined as the number of hydrogen bond acceptors ( sum of n + o ) and hydrogen bond donors ( sum of oh + nh ) . 

( iii ) number of rigid bonds(iv ) number of rings(v ) size of the rings(vi ) number of rotatable bond ( iii ) number of rigid bonds ( v ) size of the rings ( vi ) number of rotatable bond defined as any single non - ring bond , bounded to non - terminal heavy atom ( 29 ) .
the amide c - n bonds are not considered because of their high rotational energy barrier . 

( vii ) number of carbon atoms , number of heteroatoms and ratio.(viii ) number of atom with a net charge(ix ) sum of formal charges(x ) the topological polar surface area ( tpsa ) 
  ( vii ) number of carbon atoms , number of heteroatoms and ratio .
( viii ) number of atom with a net charge ( ix ) sum of formal charges ( x ) the topological polar surface area ( tpsa ) the method described in ( 30 ) has been implemented .
briefly , the molecular polar surface area ( psa ) ( i.e. surface belonging to polar atoms ) is a descriptor that was shown to correlate well with passive molecular transport through membranes .
the calculation of psa , however , is rather time - consuming because of the necessity to generate a reasonable 3d molecular geometry and the calculation of the surface itself .
a new approach for the calculation of the psa was developed by erlt et al .
this approach was called topological polar surface area , it provides results that are practically identical with the 3d psa while the computation speed is 23 orders of magnitude faster . 

( xi ) computation of xlogp ( p = calculated octanol / water partition coefficient ) ( part of lipinski 's ro5 ) 
  ( xi ) computation of xlogp ( p = calculated octanol / water partition coefficient ) ( part of lipinski 's ro5 ) we use the xscore package ( ) to compute xlogp as described in ( 38 ) .
this method gives log p - values by summing the contributions of component atoms while making use of correction factors .
about 90 atom types are used to classify carbon , nitrogen , oxygen , sulfur , phosphorus and halogen atoms , and 10 correction factors are used for some special substructures .
the contributions of each atom type and correction factor were derived by multivariate regression analysis of about 1850 organic compounds with known experimental log p - values . in faf - drugs ,
the format for the input files has , for the time being , to be sdf , smiles or cansmiles while the compounds have to be in mol2 format for xlogp computations .
few compounds are found to have ambiguous atom types and in this case the log p is not computed .
( please see definitions about log p at : ) 
 ( xii ) atom check 
  molecules with some specific atoms can be filtered - out ( for instance molecules containing h , c , n , o , f , s , p , cl , br , i atoms are kept when using default parameters ) .
we use frowns ( developed by brian kelley ) , a chemoinformatics toolkit ( ) written in python and c++ to parse / read smiles ( see explanations about the format at ) or sdf files ( see format at molecular design limited ) .
we have implemented an algorithm in python that make use of frowns features to compute properties known to be important for filtering databases and that utilizes xtool ( 38 ) to compute log p - values . because salts and counterions are often present in compound collections we recommend users to first apply the desalt utility that removes most salts and counterions prior to faf - drugs calculations .
then , our program computes the following molecular properties : 
 ( i ) molecular weight ( part of lipinski 's ro5)(ii ) hydrogen bond donors and acceptors ( part of lipinski 's ro5 ) ( i ) molecular weight ( part of lipinski 's ro5 ) ( ii ) hydrogen bond donors and acceptors ( part of lipinski 's ro5 ) defined as the number of hydrogen bond acceptors ( sum of n + o ) and hydrogen bond donors ( sum of oh + nh ) . 

( iii ) number of rigid bonds(iv ) number of rings(v ) size of the rings(vi ) number of rotatable bond ( iii ) number of rigid bonds ( v ) size of the rings ( vi ) number of rotatable bond defined as any single non - ring bond , bounded to non - terminal heavy atom ( 29 ) .
the amide c - n bonds are not considered because of their high rotational energy barrier . 

( vii ) number of carbon atoms , number of heteroatoms and ratio.(viii ) number of atom with a net charge(ix ) sum of formal charges(x ) the topological polar surface area ( tpsa ) 
  ( vii ) number of carbon atoms , number of heteroatoms and ratio .
( viii ) number of atom with a net charge ( ix ) sum of formal charges ( x ) the topological polar surface area ( tpsa ) the method described in ( 30 ) has been implemented .
briefly , the molecular polar surface area ( psa ) ( i.e. surface belonging to polar atoms ) is a descriptor that was shown to correlate well with passive molecular transport through membranes .
the calculation of psa , however , is rather time - consuming because of the necessity to generate a reasonable 3d molecular geometry and the calculation of the surface itself .
a new approach for the calculation of the psa was developed by erlt et al .
this approach was called topological polar surface area , it provides results that are practically identical with the 3d psa while the computation speed is 23 orders of magnitude faster . 

( xi ) computation of xlogp ( p = calculated octanol / water partition coefficient ) ( part of lipinski 's ro5 ) 
  ( xi ) computation of xlogp ( p = calculated octanol / water partition coefficient ) ( part of lipinski 's ro5 ) we use the xscore package ( ) to compute xlogp as described in ( 38 ) .
this method gives log p - values by summing the contributions of component atoms while making use of correction factors .
about 90 atom types are used to classify carbon , nitrogen , oxygen , sulfur , phosphorus and halogen atoms , and 10 correction factors are used for some special substructures .
the contributions of each atom type and correction factor were derived by multivariate regression analysis of about 1850 organic compounds with known experimental log p - values . in faf - drugs ,
the format for the input files has , for the time being , to be sdf , smiles or cansmiles while the compounds have to be in mol2 format for xlogp computations .
few compounds are found to have ambiguous atom types and in this case the log p is not computed .
( please see definitions about log p at : ) 
 ( xii ) atom check 
  molecules with some specific atoms can be filtered - out ( for instance molecules containing h , c , n , o , f , s , p , cl , br , i atoms are kept when using default parameters ) .
online adme / tox tools are usually not freely available , for this reason , we have developed faf - drugs .
this latter stands for free adme / tox filtering and  drug - like compound collections . our service can be used to filter collections available online as well as virtual libraries .
different levels of filtering have been reported in the literature , depending on the stage of the project , on the target and the disease types .
for example , simple physicochemical property filtering could be used when searching for new hits on a new target while more complex adme / tox models ( 39 ) [ see for example a list of chemical groups incompatible with final drug development ( 36,40 ) ] could be applied at a later stage .
we chose to implement only simple physicochemical rules because they address the filtering process using widely understood molecular properties .
to start faf - drugs filtering , users can either write a molecule in smiles or 2d/3d sdf format directly in the web interface window or browse and upload a compound library . salts and counterions are often present in compound collections and should be removed prior to adme / tox calculations .
if salts and counterions are present , we suggest users to run first our desalt utility . at present , the input formats for faf - drugs calculations are cansmiles , smiles or sdf ( please check our web site for explanations about the required formats ) but openbabel ( or online at rpbs ) can be used for file format conversion prior to the filtering step ( figure 1a ) . then users can decide about the upper and lower limits of each investigated properties ( adjustable thresholds ) such as , to tailor the compound selection to a specific project .
we also propose default parameters that are commonly used in the field ( 25,26,29,32,41 ) .
users obtain two files with molecules that pass and do not pass the filters in cansmiles format together with the original ( if available ) compound i d provided by the chemical vendors .
all computed properties ( e.g. mw , tpsa , xlogp  ) are also returned in a third file . in order to test our program , we performed computations on 50 080 molecules extracted from the chembridge compound collection ( diversity set ) with faf - drugs and filter ( version 1.0.2 , openeye scientific software ) with the same parameters with the same threshold values ( mw , tpsa  ) . both , filter and faf - drugs compute tpsa using the approach of erlt et al .
a total of 49 334 passed the filters with faf - drugs and 49 032 with filter .
small differences could be due to the fact that some rules are implemented slightly differently , for instance tpsa or log p calculations or definition of flexible bond .
our tests on a linux machine ( dell precision 650 , 3ghz , 2 gb sdram ) show that the standalone version of faf - drugs is able to process the above 50 080 molecules in about 20 min while equivalent computations on the same computer with filter ( openeye ) took about 10 min .
faf - drugs implementation is python - based and is not presently optimized for speed . with regard
to server implementation , similar computations took about 30 min , but it can be longer ( about 3 h ) depending on the server load .
we also compared faf - drugs with other online tools : molinspiration ( ) that allows evaluation of few physicochemical properties ( one molecule at a time can be processed , they have implemented their own tools to calculate log p while they follow the erlt et al .
approach to compute polar surface ) , and the log p calculators provided by syracuse research corporation ( see table 1 ) and by tetko and tanchuck , alogps 2.1 ( 42 ) . the method for log p prediction developed at molinspiration ( milogp ) is based on group contributions .
these have been obtained by fitting calculated log p with experimental log p. alogps uses a neural network approach to predict logp while syracuse research corporation tool ( logkow ) estimates log p using an atom / fragment contribution method .
over 100 diverse molecules were tested and in all cases we computed very similar values . to illustrate our calculations ,
to further assess faf - drugs calculations , we compared over 100 computed log p - values [ via our implementation of xlogp ) with experimental log p ( obtained via syracuse research corporation and via the edetox database ( ) ] .
the computed values are in good agreement with the experimental data , indicating that our implementation of xlogp is appropriate and that this approach gives very good results ( figure 2 )
. taken together , the above data suggest that our adme / tox program is robust .
once users obtain the cansmiles output , they can decide about adjusting the filters and run additional computations or use 1d/2d to 3d conversion programs such as corina ( ) , omega ( openeye scientific software ) , converter ( accelrys ) and start a vls project . for the time being , to protect our server from intensive use , we suggest scientists to upload files with less than 30  000 molecules . in the present version of the service , computations for several tens of thousands of compounds remain time consuming ( e.g. several hours depending on the number of jobs in the queue ) but work is in progress to improve this point .
for this reason and in order to save cpu time and disk space , we also provide five filtered compound collections ( figure 1a ) .
a rational approach to increase the efficiency of finding new drugs and reduce the r&d cost is to reduce the attrition rate in the costly downstream stages ( e.g. clinical trials ) .
several important methods toward this goal have been developed , involving early computations of adme / tox properties .
we have developed faf - drugs to help modelers and biologists to embark into drug discovery projects .
users can filter their own compound libraries and adapt the thresholds to a specific project .
other tools pertaining to the field of drug design / compound collections are also available at our web site .
( a ) schema of the faf - drugs service . compound collections in smiles , cansmiles or sdf format are needed as input .
users obtain two output files , one with molecules that pass the filters and the other with compounds that do not pass the filters . a third file with all the computed properties
several other utilities are available at faf - drugs , these involve online xlogp calculations ( 38 ) computed with xtool , online openbabel for file format conversion and implementation of the java molecular editor from dr p. ertl ( novartis pharma ag , basel , switzerland ) to draw molecules and obtain the corresponding smiles string .
in addition , at faf - drugs , users can find five adme / tox filtered compound collections ready for vls computations .
three levels of filtering were applied ( see our web site for further details ) in order to better suit the needs of potential users .
the openeye 's omega program was used to generate 3d models , either single conformation or up to 50 conformations , for each molecule that passed the adme / tox filters .
other utilities consist of a test set that contains six protein targets ( pdb format ) and about 10 corresponding ligands ( mol2 format , see information about the format at ) to facilitate evaluation of docking / scoring methods and an interface to pass ( 43 ) , a program that predicts binding pocket at the surface of a receptor .
many additional tools pertaining to the field of structural bioinformatics are also available at rpbs such as protein electrostatic computations , loop search , solvent accessibility prediction 
four molecules with different physicochemical properties were selected in order to compare faf - drugs calculations with other online tools .
example of free online adme / tox tools some online compound collections comparison of faf - drugs with several online tools faf - drugs computes several descriptors , such as molecular weight ( mw ) , hydrogen bond donors ( hd ) , hydrogen bond acceptors ( ha ) , number of rotatable bonds ( rot_bond ) , tpsa and log p ( see text ) .
similar / identical results were obtained via the molinspiration website and by faf - drugs . experimental log p - values and cas registry numbers
were found in the edetox database ( ) and at the   ( syracuse research corporation ) server .
 in silico screening based on the structures of the ligands or of the receptors has become an essential tool to facilitate the drug discovery process but compound collections are needed to carry out such in silico experiments . 
 it has been recognized that absorption , distribution , metabolism , excretion and toxicity ( adme / tox ) are key properties that need to be considered early on , even during the database preparation stage . 
 faf - drugs is an online service based on frowns ( a chemoinformatics toolkit ) that allows users to process their own compound collections via simple adme / tox filtering rules such as molecular weight , polar surface area , logp or number of rotatable bonds . 
 smiles ( simplified molecular input line entry system ) , cansmiles ( canonical smiles ) or sdf ( structure data file ) files are required as input and molecules that pass or do not pass the filters are sent back in cansmiles format . 
 this service should thus help scientists engaging in drug discovery campaigns . 
 other utilities and several compound collections suitable for in silico screening are available at our site . 
 faf - drugs can be accessed at . 