CGT 411/450 project