2300 final project (most current)