to do #2-5