Crossover now discards invalid children