working on generator
work on dsl