properly use surface class