CS640 Technical Project