struct generation does something