B2.1: (a) done
B2.1 (a): small changes
B2.1 : check this for errors