some more gene refactoring; something is broken now