CPSC 410 Term Project