anchor.diff:      end do
     end do
     flush(scatter_sumUnit)
  +
  +  write(lout,"(a,e16.9)") "SCATTER> Average scatter probability was ",sumProb/real(napx,fPrec)
  +  if(nAbove > 0) then
  +    write(lout,"(a,i0,a)") "SCATTER> WARNING ",nAbove," particles had a probability > 1.0"
  +  end if
   
     if(scatter_allowLosses) then
       call shuffleLostParticles
  
positive.code:   integer, intent(in) :: iElem
    integer, intent(in) :: nTurn
  
    integer i, j, k, idElem, idPro, iGen, nGen, idGen, iError, unitDens, iLost, procID, fixedID
    logical updateE, autoRatio, isDiff, isExact, densDump, beamDump, pScattered(napx)
    real(kind=fPrec) t, dEE, dPP, theta, phi, pVec(3), pNew, xRot, yRot, elemScale, sigmaTot,         &
      ratioTot, crossSection, scatterProb, targetDensity, scRatio, brRatio, rndVals(napx*3)
  
    real(kind=fPrec), allocatable :: brThreshold(:)
    logical,          allocatable :: hasProc(:,:)
  
negative.code:   iLost    = 0
    isDiff   = .false.
    updateE  = .false.
    sumProb  = zero
    nAbove   = 0
  
    pScattered(:) = .false.
  
  