Generator, new structure, etc

good idea