anchor.diff:          use pointer_data
           use phio
           use iso_c_binding
  -c
           include "common.h"
  -!MR CHANGE
           include "mpif.h" !Required to determine the max for itpblk
  -!MR CHANGE END
  -c
   
           integer, target, allocatable :: ientp(:,:),iBCBtp(:,:)
           real*8, target, allocatable :: BCBtp(:,:)
           integer materb(ibksz)
           integer, target :: intfromfile(50) ! integers read from headers
           character*255 fname1
  -
  -cccccccccccccc New Phasta IO starts here cccccccccccccccccccccccccccccc
  -
           integer :: descriptor, descriptorG, GPID, color, nfiles, nfields
           integer :: numparts, nppp, nprocs, writeLock
           integer :: ierr_io, numprocs, itmp, itmp2 
  -!        integer :: num_local_loop, num_global_loop
  -!MR CHANGE
           integer, target :: itpblktot,ierr
  -!MR CHANGE END
  -
           character*255 fname2
  -
           character(len=30) :: dataInt, dataDbl
           dataInt = c_char_'integer'//c_null_char
           dataDbl = c_char_'double'//c_null_char
  
positive.code:            lcsyst=intfromfile(7)
             numnbc=intfromfile(8)
  
  !MR CHANGE
  !           write (temp1,"('connectivityBoundaryHeader_',i1,'_',i1)")
  !     &                                              iblk,myrank
  !           temp1=trim(temp1)          
  !           open(unit=14,file=temp1,status='unknown')
  !           write(14,*) intfromfile(:)
  !           close(14)
  !MR CHANGE END
  
             allocate (ientp(neltp,nshl))
             allocate (iBCBtp(neltp,ndiBCB))
             allocate (BCBtp(neltp,ndBCB))
  
negative.code: c     
  c.... allocate memory for stack arrays
  c
                   allocate (mienb(nelblb)%p(npro,nshl))
                   allocate (miBCB(nelblb)%p(npro,ndiBCB))
                   allocate (mBCB(nelblb)%p(npro,nshlb,ndBCB))
                   allocate (mmatb(nelblb)%p(npro))
  c 
  c.... save the boundary element block
  