structure as a module