anchor.diff:          ! if (DEBUG >= 3) write(0,*) '    DEBUG3: size of global_node_ID',size(hecMESH%global_node_ID)
           exp_cols_item(cLID,cnt) = hecMESH%node_ID(2*jcol-1)
           exp_cols_item(cRANK,cnt) = hecMESH%node_ID(2*jcol)
  -        exp_cols_item(cGID,cnt) = hecMESH%global_node_ID(jcol)
  -        ! if (DEBUG >= 3) write(0,*) '    DEBUG3: lid,rank,gid',exp_cols_item(1:3,cnt)
  +        if (cNCOL_ITEM >= 3) exp_cols_item(cGID,cnt) = hecMESH%global_node_ID(jcol)
  +        ! if (DEBUG >= 3) write(0,*) '    DEBUG3: lid,rank(,gid)',exp_cols_item(1:cNCOL_ITEM,cnt)
         enddo
         if (cnt /= exp_cols_index(idom)) stop 'ERROR: make exp_cols_item'
       enddo
  
positive.code:   subroutine extract_add_nodes(ncols, cols, map, n_add_node, add_nodes)
      implicit none
      integer(kind=kint), intent(in) :: ncols
      integer(kind=kint), intent(in) :: cols(3,ncols), map(ncols)
      integer(kind=kint), intent(inout) :: n_add_node
      integer(kind=kint), allocatable, intent(out) :: add_nodes(:,:)
      integer(kind=kint) :: cnt, i
      allocate(add_nodes(3,n_add_node))
      cnt = 0
      do i = 1, ncols
        if (map(i) == -1) then
          cnt = cnt + 1
          add_nodes(1:3,cnt) = cols(1:3,i)
        endif
      enddo
      if (cnt /= n_add_node) stop 'ERROR: extract add_nodes'
  
negative.code:              2*nr, irank, tag, hecMESH%MPI_COMM, statuses(:,1))
          tag = 2003
          call HECMW_RECV_INT(imp_cols_item(1,imp_cols_index(idom-1)+1), &
               cNCOL_ITEM*nnz, irank, tag, hecMESH%MPI_COMM, statuses(:,1))
          tag = 2004
          call HECMW_RECV_R(imp_vals_item(ndof2*imp_cols_index(idom-1)+1), &
               ndof2*nnz, irank, tag, hecMESH%MPI_COMM, statuses(:,1))
  