CS 446 project