Contributions by David O'Neil