This topic has been discussed in length previously so I suggest you look for that thread