Source: https://ebe.cpsc.ucalgary.ca/icse2000ws/submissions/Kaiser.pdf