implement a shell for module