NeuralGeneNode AddNodeToGenome(NeuralNodeType type, NeuralGenome genome)
    {
        switch (type)
        {
        case NeuralNodeType.Input:
            return(genome.AddInputNode(neuralActivationFunctions[0]));

            break;

        case NeuralNodeType.Output:
            return(genome.AddOutputNode(neuralActivationFunctions[2]));

            break;

        case NeuralNodeType.Hidden:
            return(genome.AddHiddenNode(neuralActivationFunctions[1]));

            break;

        default:
            break;
        }
        return(null);
    }