updated surface_glm and utils