working on #1 (done 3/4)