LEVEL = ../../../..

Source = abend.f         dinv.f          intd6.f         search.f   \
         adia.f          dist1.f         intepr.f        sinpro.f   \
         adib.f          distance.f      join.f          sixdaco6.f \
         ambm6.f         dlie6.f         lie6.f          subre.f    \
         analie6.f       eig66.f         linopt.f        subsea.f   \
         betalf.f        envada.f        loesd.f         sumpos.f   \
         block.f         envar.f         lostpar2.f      synoda.f   \
         blockdis.f      envardis.f      lostpar3.f      synuthck.f \
         caconv.f        envars.f        lostpart.f      take6.f    \
         calrms.f        envarsv.f       maincr.f        taked6.f   \
         chroma.f        envquad.f       mainia6.f       thck4d.f   \
         cinvar.f        errf.f          matrix.f        thck6d.f   \
         clor6.f         errff.f         maxmin.f        thck6dua.f \
         clorb.f         error.f         midbloc6.f      thin4d.f   \
         clorb2.f        fexpo6.f        mul66.f         thin6d.f   \
         combel.f        fft.f           mywwerf.f       thin6dua.f \
         comnul.f        fit.f           orbinit.f       trauthck.f \
         corrorb.f       flush.f         ord.f           trauthin.f \
         cpart6.f        forest6.f       orderma6.f      trx6.f     \
         cphase.f        foxys.f         phasad.f        tuer6.f    \
         cpltwis.f       gam6.f          postpr.f        umlau6.f   \
         creat6.f        gbm6.f          putorb.f        umlauf.f   \
         ctrbasi6.f      gofix6.f        qmod.f          write4.f   \
         dacond6.f       hbook.f         ranecu.f        write6.f   \
         dacopd6.f       htal.f          resb6.f         writebin.f \
         dalie6s.f       htbl.f          resex.f         writelin.f \
         dalind6.f       htls.f          resl6.f         wzset.f    \
         daprid6.f       htrl.f          rext6.f         wzsubf.f   \
         daten.f         htul.f          ripple.f        wzsubv.f   \
         decoup.f        hyper6.f        rmod.f          xuflow.f   \
         detune.f        igmeta.f        rotatio6.f

FP_ABSTOLERANCE=0.0005
FP_TOLERANCE=0.0005

STDIN_FILENAME  = inp.in
STDOUT_FILENAME = inp.out
NAGFORTRAN_FLAGS = -dusty

include ../../Makefile.spec2000
include $(PROJ_SRC_ROOT)/Makefile.FORTRAN

CPPFLAGS += -DINT64='long long'
