This topic has been discussed at length. Search around and you find plenty.