public NeuralNet Crossover(NeuralNet partner) { OutputLayer.Crossover(partner.OutputLayer); foreach (var layer in HiddenLayers.Zip(partner.HiddenLayers)) { layer.Key.Crossover(layer.Value); } return(this); }