upaded source files.  Working for part A partially.  Shift needs work