final project for cmps450G