added getSurface