anchor.diff:          s=s/2
           x=x0+xp*s
           y=y0+yp*s
  -        PROC='AM'
           iProc = proc_AM
           CALL CALC_ION_LOSS_CRY(IS,is2,PC,AM_Length,DESt)
           CALL MOVE_AM_(IS,is2,NAM,Am_Length,DESt,DLYi(IS2),dlri(is2),xp,yp,PC)
  
positive.code: 
  !      ichoix=3
  
        if (ichoix.eq.1) then
  
          PROC = 'ch_absorbed'            !deep inelastic, impinging p disappeared
          iProc = proc_ch_absorbed
  
        endif
  
        if (ichoix.eq.2) then          ! p-n elastic
          PROC = 'ch_pne'
          iProc = proc_ch_pne
  !        write(*,*) "bn(IS)"
          bn(IS) = bnref(is2) * cs(0,IS) / csref_tot_rsc
  
negative.code:       endif
  
        if ( ichoix .eq. 5 ) then
          iProc = proc_ch_ruth
             length_cry=1
             call funlux( cgen_cry(1,IS) ,xran_cry,length_cry)
  