Backup before using bit-wise operators to compare lesson timings
sequenced the functions properly for easier reading
Removed requirement to deep copy. Average time needed < 0.2sec