corrected module structure