Contributions from Ryan Berger