Source: https://nvlpubs.nist.gov/nistpubs/jres/122/jres.122.041.pdf