fix A

fix B

last minute feature

fix C