anchor.diff:    real(kind=fPrec), allocatable :: nxyzv(:,:,:)
     ! Normalised emittances
     real(kind=fPrec), allocatable :: epsnxyzv(:,:,:)
  +  real(kind=fPrec) dumptas(6,6), dumpclo(6), dumptasinv(6,6)
   
   #ifdef NAFF
     interface
  -    real(c_double) function tunenaff(x,xp,maxn,plane_idx,norm_flag, fft_naff) bind(c)
  +    real(c_double) function tunenaff(x,xp,maxn,plane_idx,norm_flag,fft_naff) bind(c)
         use, intrinsic :: iso_c_binding
         implicit none
         real(c_double), intent(in), dimension(1) :: x,xp
  
positive.code: 
                ! remove closed orbit -> check units used in dumpclo (is x' or px used?)
                do m=1,6
                  xyzvdummy2(m)=xyzvdummy(m)-dumpclo(j,m)
                end do
  
                ! For use in with normalised coordinates: convert to canonical variables
                xyzvdummy2(2)=xyzvdummy2(2) * ((one+xyzvdummy2(6))+dumpclo(j,6))
                xyzvdummy2(4)=xyzvdummy2(4) * ((one+xyzvdummy2(6))+dumpclo(j,6))
  
                ! Normalise nxyz=dumptasinv*xyz2
                do m=1,6
                  nxyzvdummy(m)=zero
                  do n=1,6
                    nxyzvdummy(m)=nxyzvdummy(m) + dumptasinv(j,m,n)*xyzvdummy2(n)
                  end do
                  ! convert nxyzvdummy(6) to 1.e-3 sqrt(m)
                  ! unit: nx,npx,ny,npy,nsig,ndelta all in [1.e-3 sqrt(m)]
  
negative.code:   use string_tools
    use mathlib_bouncer
    use platofma
    use dump, only : dump_fname, dumpfmt, dumpunit, dumpfirst, dumplast, dump_getTasMatrix
    use numerical_constants, only : zero, one, c1e3
  
    use crcoall
  