Initial Project 2. This version is working but has not been validated yet.