changed so task 3 can handle None