What are the factors that can lead to evolution