fixing annotations enough to get phase 2 to compile, but phase 3 is hosed