Source: https://math.oit.edu/~paulr/Upper/Math_45x/Math_452/multistep.pdf