Source: https://www.eecs.mit.edu/docs/ug/freshman_subjects.pdf