See http://wws.princeton.edu/~mcnamara/papers.htm