https://campus.fsu.edu/bbcswebdav/users/jastallins/public_htm/courses/complexity/readings/ehrenfeld.htm