anchor.diff:     integer(ik),allocatable :: gtot(:),indices(:)
      character(len=20),allocatable :: quantum_numbers(:,:)
      !
  +   integer(ik),allocatable :: nchars_quanta(:)  ! max number of characters used for each quantum number
  +   !
      character(len=9) :: npoints_fmt  !text variable containing formats for reads/writes
  +   character(len=9) :: b_fmt
      integer(hik):: Nintens(-60:60)
      !
      logical :: eof
  
positive.code:            !
             read(tunit,"(i3,f12.6,e10.3e3,e10.3,10x,f10.4,12x,a55,23x,2f7.1)",end=20) imol,tranfreq,abscoef,acoef,energyi,ch_q,gf,gi
             !
             if (imol/=iso) cycle
             !
             if (tranfreq<small_) cycle
  
negative.code:            tranfreq = energyf-energyi
             !
             if (tranfreq<small_) cycle
             !
             ! check for duplicates 
             !
             if (indexf==indexf_.and.indexi_==indexi) then
               !
               if (abs(acoef-acoef_)>small_) then
                 write(out,"('but A-coefs are different:',2e17.5)") acoef_,acoef
               endif 
               !
             endif
             !
             select case (trim(specttype))
               !
  