possible module logic improved