For CS4390 course