second programming assignment