updated module for best practices