anchor.diff:              y= y + yp * Sdech
   !            write(*,*) "Ldech", Ldech
   !            write(*,*) "DESt", DESt
  -!            CALL CALC_ION_LOSS_CRY(IS,PC,Ldech,DESt)
  +            CALL CALC_ION_LOSS_CRY(IS,PC,Ldech,DESt)
               PC = PC - 0.5*DESt*Ldech          ! energy loss to ionization while in CH [GeV]
   
               x = x + 0.5*(s_length-Sdech)*xp
               y = y + 0.5*(s_length-Sdech)*yp
   
   !            write(*,*) "s_length-Sdech", s_length-Sdech
  -!            CALL CALC_ION_LOSS_CRY(IS,PC,s_length-Sdech,DESt)
  +            CALL CALC_ION_LOSS_CRY(IS,PC,s_length-Sdech,DESt)
               CALL MOVE_AM_(IS,NAM,s_length-Sdech,DESt,DLYi(IS),DLRi(IS),xp,yp,PC)
              !next line new from sasha
   !            PC = PC - 0.5*DES(IS)*y          ! energy loss to ionization [GeV]
  
positive.code: !.**************************************************************************
  !     SUBROUTINE FOR THE MOVEMENTS OF THE PARTICLES IN THE CRYSTAL
  !.**************************************************************************
        SUBROUTINE CRYST(IS,x,xp,y,yp,PC,Length)
  
        use mod_ranlux
        use mod_funlux
  !
  !     Simple tranport protons in crystal 2
  !-----------------------------------------------------------C
  
negative.code:         endif                                                                           !daniele
          PROC='out' !the default process is 'out'                                        !daniele
          bool_proc(idx_proc)=-1                                                                 !daniele
          cry_proc(idx_proc)=-1
  
  
          nabs = 0
  