Author: Arturo Vasquez and Patrick McKelvey