James C - more Generator refactoring