Source: https://web.pdx.edu/~erdman/PTAC/problemtext_pdf.pdf