changes to make it a module