Genetic optimization of combinatorial libraries | Synapse