Adding an ordered crossover routine