seems ok for automatizing generation