def _get_all_recipient_ids(exploration_id, thread_id, author_id):
 exploration_rights = rights_manager.get_exploration_rights(exploration_id)
 owner_ids = set(exploration_rights.owner_ids)
 participant_ids = get_all_thread_participants(exploration_id, thread_id)
 sender_id = set([author_id])
 batch_recipient_ids = (owner_ids - sender_id)
 other_recipient_ids = ((participant_ids - batch_recipient_ids) - sender_id)
 return (batch_recipient_ids, other_recipient_ids)

def _get_all_recipient_ids ( exploration_id , thread_id , author_id ) : exploration_rights = rights_manager . get_exploration_rights ( exploration_id ) owner_ids = set ( exploration_rights . owner_ids ) participant_ids = get_all_thread_participants ( exploration_id , thread_id ) sender_id = set ( [ author_id ] ) batch_recipient_ids = ( owner_ids - sender_id ) other_recipient_ids = ( ( participant_ids - batch_recipient_ids ) - sender_id ) return ( batch_recipient_ids , other_recipient_ids )
fetches all authors of the exploration excluding the given author and all the other recipients .