Part A

Part B

Part C

Others