removed send and read