implemented crossovers; first working version