updated module source code. it will be reused for creating other modules