refactor to new methods
add send method