Quantum Computing Course: 3.8 Shor's Algorithm