anchor.diff:    integer                        :: i, j, last_full, dets(comb_teeth)
     integer                        :: k, l, cur_cp, under_det(comb_teeth+1)
     integer, allocatable :: iorder(:), first_cp(:)
  +  double precision :: tmp
  +
   
     allocate(iorder(N_det_generators), first_cp(N_cps_max+1))
     allocate(computed(N_det_generators))
  
positive.code:       delta_s2 += delta_det(:,:,i,2)
      end do
    else
  
    delta = cp(:,:,cur_cp,1)
    delta_s2 = cp(:,:,cur_cp,2)
    do i=cp_first_tooth(cur_cp)-1,0,-1
      delta += delta_det(:,:,i,1)
      delta_s2 += delta_det(:,:,i,2)
    end do
  
    end if
    mrcc(1) = E
    call end_zmq_to_qp_run_socket(zmq_to_qp_run_socket)
  end subroutine
  
  
negative.code:         E0 = E0 + mrcc_detail(1, first_det_of_teeth(cp_first_tooth(cur_cp))) * (1d0-fractage(cp_first_tooth(cur_cp)))
        end if
  
        print "(I5,F15.7,E12.4,F10.2)", cur_cp, E+E0+avg, eqt, time-timeInit
  
        if ((dabs(eqt) < relative_error .and. cps_N(cur_cp) >= 30)  .or. total_computed == N_det_generators) then
          if (zmq_abort(zmq_to_qp_run_socket) == -1) then
  