now with module generation
adding big ass diagram