anchor.diff:    
     ! clean up
     deallocate(buffNode,buffPoint,buffLine,buffTri,buffQuad,buffTet,buffHex,buffFacet,buffEle)
  -  deallocate(smapNode,smapPoint,smapLine,smapTri,smapQuad,smapTet,smapHex,smapFacet,smapEle)
  +  deallocate(mapNode,mapPoint,mapLine,mapTri,mapQuad,mapTet,mapHex,mapFacet,mapEle)
   end subroutine
   
   !*******************
  
positive.code:   end do
    nkLine=count(gmapLine(:)>0)
    allocate(buffLine(nkLine))
    allocate(smapLine(nkLine))
    do i=1,nLine
      if(gmapLine(i)>0)then
        smapLine(gmapLine(i))=i
      end if
    end do
    buffLine(:)=Line(smapLine)
    
    ! correct points
    forall(i=1:nkPoint)
  
negative.code:       &             0,pidMPI,MPI_comm_world,statMPI,errMPI)
      end do
    end do
    ! receive tensor data in elements
    do i=1,ntransEleTens
      allocate(transEleTens(i)%ptr(nEle,3,3))
  