Finished program with Extra Credit