if you make a superclass, this should have some kind of getRewriter method or something, and no if/else.