updated for prof david lary's new website