Source: https://summer.ucsc.edu/courses/course-syllabi/2022/2022_math_105a_milea.pdf