class_docstr: Intracommunicator class with scalable, point-to-point based
  implementations of global reduction operations.
code: def exscan(self, sendobj=None, recvobj=None, op=MPI.SUM):
      size = self.size
      rank = self.rank
      tag = MPI.COMM_WORLD.Get_attr(MPI.TAG_UB) - 1
  
      recvobj = sendobj
      partial = sendobj
      mask = 1
      flag = False
  
      while mask < size:
          target = rank ^ mask
          if target < size:
              tmp = self.sendrecv(
                  partial,
                  dest=target,
                  source=target,
                  sendtag=tag,
                  recvtag=tag,
              )
              if rank > target:
                  partial = op(tmp, partial)
                  if rank != 0:
                      if not flag:
                          recvobj = tmp
                          flag = True
                      else:
                          recvobj = op(tmp, recvobj)
              else:
                  tmp = op(partial, tmp)
                  partial = tmp
          mask <<= 1
  
      if rank == 0:
          recvobj = None
  
      return recvobj
  
imports: from mpi4py import MPI
label_desc: Use image node_id 5 for calling the Intracomm obj's underlying member method code with example usage: obj.exscan(sendobj, recvobj, op) and returns: recvobj