Source: https://www.classes.cs.uchicago.edu/archive/2022/winter/22880-1/lecs/Lec4bStatic.pdf