anchor.diff:                nMaster = nMaster + 1
                 if(nMaster > size(indexMaster)) then
                   !stop 'Error: Too many master faces are possibly in contact!'
  -                allocate(itmp(nMasterMax))
  -                itmp(:) = indexMaster(:)
  -                deallocate(indexMaster)
  +                itmp => indexMaster
                   allocate(indexMaster(nMasterMax*2))
  -                indexMaster(1:nMastermax) = itmp(1:nMasterMax)
  +                indexMaster(1:nMasterMax) = itmp(1:nMasterMax)
                   deallocate(itmp)
                   nMasterMax = nMasterMax*2
                   write(*,*) 'Info: increased nMasterMax to ', nMasterMax
  
positive.code:             contact%states(i)%multiplier(:) = 0.d0
              iSS = isInsideElement( etype, contact%states(i)%lpos, clearance )
              if( iSS>0 ) call cal_node_normal( id, iSS, contact%master, currpos, contact%states(i)%direction(:) )
              infoCTChange%free2contact = infoCTChange%free2contact + 1
              active = .true.
              write(*,'(A,i10,A,i10,A,f7.3,A,2f7.3,A,3f7.3)') "Node",nodeID(slave)," contact with element", &
  
negative.code:       real(kind=kreal)    :: dum, dxi(2), shapefunc(l_max_surface_node)
        real(kind=kreal)    :: metric(2,2), dispmat(2,l_max_elem_node*3+3)
        real(kind=kreal)    :: fric(2), f3(l_max_elem_node*3+3)
        integer(kind=kint)  :: i, idx0
  
        slave = contact%slave(lslave)
        fcoeff = contact%fcoeff
  