oops... module name types and replacing arguments list with require