revise #send