refactored _send into a 'private' function