a part 1
b part 2