Put all gen in new class!