anchor.diff:  integer p_counter,t_counter
   double complex tempmat(size(propagators,1),size(propagators,2)) 
   write(*,*) '------------------------------------------------------------'
  -write (*,*) 'sandwiching rho of size ',size(rho,1),size(rho,2),size(rho,3),size(rho,4),' with propagator of size ',size(propagators,1),size(propagators,2),size(propagators,3),size(propagators,4)
  +write (*,*) 'sandwiching rho of size ',size(rho,1),size(rho,2),size(rho,3),size(rho,4),&
  +    ' with propagator of size ',size(propagators,1),size(propagators,2),&
  +    size(propagators,3),size(propagators,4)
   if (allocated(propagators)) then
   	write (*,*) 'propagators is allocated for size ',size(propagators)
   else
  
positive.code: 	do p_counter = 1,size(propagators,4)
  		do t_counter = 1,size(propagators,3)
  			!write (*,*) 'multiply',t_counter,p_counter
  			propagators(:,:,t_counter,p_counter) = matmul(&
  				propagators(:,:,t_counter,p_counter),&
  				matmul(&
  					rho(:,:,1,1) , conjg(transpose(&
  						propagators(:,:,t_counter,p_counter)&
  						))&
  					))
  		enddo
  	enddo
  else
  
negative.code: 	write (*,*) 'case 1'
  	do p_counter = 1,size(propagators,4)
  		do t_counter = 1,size(propagators,3)
  			call sandwich_internal(rho(:,:,t_counter,p_counter),propagators(:,:,t_counter,p_counter),propagators(:,:,t_counter,p_counter))
  		enddo
  	enddo
  elseif (size(rho,4).eq.1.and.size(rho,3).eq.1) then
  