Source: https://vtechworks.lib.vt.edu/bitstream/handle/10919/26484/SeanDavisDissertation.pdf