traps working
lazy generator