change to module structure