Author: e.cox peter valli & himanshu p. goodluck