anchor.diff:     !
      !Prepare VoigtKampff
      if(trim(proftype(1:5))=='VOI-F') then
  -        !
  +     !
        if(trim(proftype(1:6))=='VOI-FN') then
         call fast_voigt%construct(dpwcoef,offset,dfreq,.true.)
         !call initalize_voigt_kampff(dpwcoef,dfreq,offset,voigt_index,1)
  
positive.code:      integer(ik),intent(in) :: nchars_quanta(maxitems),gtot(nlines)
       character(len=20),intent(in) :: quantum_numbers(0:maxitems,nlines)
       integer(ik) :: nchars_,kitem,ierror_nu,iE,ierror_i,ierror,ierror_S,l,qni,qnf,ierror_f,&
                      ilevelf,ileveli,iswap
       character(9) b_fmt
       !
       !
  
negative.code:            !
             !b_fmt = "(1x,a3)" ; if (l>3) b_fmt = "(1x,a8)"
             !
             write(b_fmt,"('(a',i1,')')") nchars_quanta(kitem)
             !
             nchars_  = nchars_ + nchars_quanta(kitem)
             !
             if (nchars_>21) cycle
             nchars_tot = nchars_tot + nchars_quanta(kitem)
             !
             write(sunit,b_fmt,advance="no") trim(quantum_numbers(kitem,ileveli))
             !
           enddo
           !
           ! topup to 44
           do kitem = nchars_tot+1,42
             !
             write(sunit,'(1x)',advance="no")
             !
           enddo
           !
           if ( mod(nint(2*Jf),2)==0 ) then
             !
             write(sunit,'(i4,1x,a1,1x,a1)',advance="no") nint(Jf),trim(quantum_numbers(1,ilevelf)),trim(quantum_numbers(2,ilevelf))
             write(sunit,'(1x,i4,1x,a1,1x,a1)',advance="no") nint(Ji),trim(quantum_numbers(1,ileveli)),trim(quantum_numbers(2,ileveli))
             !
           else
             !
             write(sunit,'(f4.1,1x,a1,1x,a1)',advance="no") Jf,trim(quantum_numbers(1,ilevelf)),trim(quantum_numbers(2,ilevelf))
             write(sunit,'(f4.1,1x,a1,1x,a1)',advance="no") Ji,trim(quantum_numbers(1,ileveli)),trim(quantum_numbers(2,ileveli))
             !
           endif
           !
  