anchor.diff:      else ! r1 < r2 <= rr
   !FOX    FRR=ONE ;
       endif
  +    write(lout,'(a)')'ELENS> ELENS_KICK_FOX radial kick 01'
       ! 'radial kick'
   !FOX    FRR=(((ELE_R2*ELE_R2)/RR)*FRR)*(MTCDA/(ONE+DPDA)) ;
  +    write(lout,'(a)')'ELENS> ELENS_KICK_FOX radial kick 02'
       if(elens_lThetaR2(ielens(ix))) then
         if(elens_I(ielens(ix)) < zero) then
   !FOX    FRR=FRR*((RV+ELEBET*BETREL)/(ONE+ELEBET*BETREL)) ;
  
positive.code:   ELESIG=elens_sig(iLens)
    ELEFR1=elens_radial_fr1(iLens)
    ELEBET=elens_beta_e(iLens)
    
    ! 1) apply offset of e-lens
    !    xx = x(proton) - elens_offset_x
    !    yy = y(proton) - elens_offset_y
  !FOX    XI=(XX(1)-XCLO) ;
  !FOX    YI=(XX(2)-YCLO) ;
    
    ! 2) calculate radius
    !    radial position of main beam relative to center of elens beam
    !    rr = sqrt(xx**2+yy**2)
  !FOX    RR=SQRT(XI*XI+YI*YI) ;
    
    ! 3) calculate kick
    !    shape function: spatial charge density depends on type:
    !    0    if r < R1
    !    frr  if R1 < r < R2
    !    1    if r > R2
    call dapek(RR,hh,RRA)
    if (RRA.gt.elens_r1(iLens)) then ! rr <= r1 -> no kick from elens
      if (RRA.lt.elens_r2(iLens)) then ! r1 < rr < r2
        select case (elens_type(iLens))
  
negative.code: ! ================================================================================================ !
  subroutine elens_kick_fox(i,ix)
  
    use mod_common, only : betrel, mtcda
    use mod_hions, only : moidpsv
    use crcoall, only : lout
    use mod_common_main
    use numerical_constants, only : zero, one
    use utils, only : huntBin, polcof
    use mod_lie_dab, only : lnv, idao, rscrri, iscrda
    use mod_common_track, only : comt_daStart, comt_daEnd
    use mod_common_da
  
    implicit none
  