anchor.diff:      end if
       dcum(i) = tmpDcum
     end do
  +
  +  ! Correct the elpos array after a GO reshuffle
  +  if(kanf > 1 .and. strumcol) then
  +    sGo  = elpos(1)
  +    sEnd = elpos(iu-kanf+1)-sGo
  +    elpos(1:iu-kanf+1)  = elpos(1:iu-kanf+1)  - sGo
  +    elpos(iu-kanf+2:iu) = elpos(iu-kanf+2:iu) + sEnd
  +  end if
   
     ! Assign the last value to the closing MARKER:
     dcum(iu+1)  = tmpDcum
  
positive.code: 
    character(len=24) tmpS, tmpE
    character(len=99) fmtH, fmtC
    real(kind=fPrec) tmpDcum, delS
    integer i, j, k, ix, outUnit
  
    write(lout,"(a)") "GEOMETRY> Calculating machine length"
  
negative.code:           tmpDcum = tmpDcum + el(k)
          end if
          if(strumcol) then
            elpos(i) = elpos(i) - sGo + el(k)/2 ! Change from centre of element to end of element
          else
            elpos(i) = tmpDcum ! Just copy dcum(i)
          end if
  