added one point and two point crossover