cleanup, better module pattern