Updated for submission to GitHub