Added a bunch of stuff, including part D