Crossover: mate halves
If cut bond in other half exist
- choose one at random
- merge cut bonds, respect valence
else
- flip coin
- heads -- attach cut bond to random atom in other half respecting valence
- tails -- discard cut bond
repeat until all cut bonds processed