Adding optional surf method