completed 18
completed 19 and 20