Source: https://uwspace.uwaterloo.ca/bitstream/handle/10012/14080/Goyal_Julia.pdf