diff -ur orig/MG_ME_V4.4.3/pythia-pgs/libraries/lhapdf/src/QCDNUM.f MG_ME_V4.4.3/pythia-pgs/libraries/lhapdf/src/QCDNUM.f
--- orig/MG_ME_V4.4.3/pythia-pgs/libraries/lhapdf/src/QCDNUM.f	2006-05-19 18:56:49.000000000 +0900
+++ MG_ME_V4.4.3/pythia-pgs/libraries/lhapdf/src/QCDNUM.f	2008-09-06 00:20:40.000000000 +0900
@@ -5086,7 +5086,10 @@
         WRITE(6,'(/'' ------------------------------------'')')
         WRITE(6,'( '' QCDNUM error in s/r NFLGET ---> STOP'')')
         WRITE(6,'( '' ------------------------------------'')')
-        WRITE(6,'( '' Input IQ :'',I)') IQ
+c>>>>>>
+*       WRITE(6,'( '' Input IQ :'',I)') IQ
+        WRITE(6,'( '' Input IQ :'',I7)') IQ
+c<<<<<<
         WRITE(6,'(/'' IQ outside grid boundary'')')
         CALL QTRACE('NFLGET ',1)
         STOP
@@ -5900,9 +5903,15 @@
       WRITE(6,'( '' QCDNUM error in s/r QNGETW ---> STOP'')')
       WRITE(6,'( '' ------------------------------------'')')
       WRITE(6,'( '' Input OPT      :'',A)') OPT       
-      WRITE(6,'( ''       IX0      :'',I)') IX0       
-      WRITE(6,'( ''       IX       :'',I)') IX     
-      WRITE(6,'( ''       IQ       :'',I)') IQ     
+c>>>>>>
+*     WRITE(6,'( ''       IX0      :'',I)') IX0       
+*     WRITE(6,'( ''       IX       :'',I)') IX     
+*     WRITE(6,'( ''       IQ       :'',I)') IQ     
+*
+      WRITE(6,'( ''       IX0      :'',I7)') IX0       
+      WRITE(6,'( ''       IX       :'',I7)') IX     
+      WRITE(6,'( ''       IQ       :'',I7)') IQ     
+c<<<<<<
       IF(IERR.EQ.1) THEN
         WRITE(6,'(/'' IX0, IX and/or IQ outside allowed range'')')
       ELSEIF(IERR.EQ.2) THEN
@@ -6009,7 +6018,10 @@
       WRITE(6,'( '' QCDNUM error in s/r '',A,'' ---> STOP'')')
      +              SNAME
       WRITE(6,'( '' ------------------------------------'')')
-      WRITE(6,'( '' Input ID   :'',I)') ID
+c>>>>>>
+*     WRITE(6,'( '' Input ID   :'',I)') ID
+      WRITE(6,'( '' Input ID   :'',I7)') ID
+c<<<<<<
       WRITE(6,'( '' Input NAME :'',A)') NAM
       IF(IERR.EQ.1) THEN
         WRITE(6,'(/'' Blank name not allowed'')') 
@@ -6107,9 +6119,15 @@
       WRITE(6,'(/'' ------------------------------------'')')
       WRITE(6,'( '' QCDNUM error in s/r QNLINC ---> STOP'')')
       WRITE(6,'( '' ------------------------------------'')')
-      WRITE(6,'( '' Input ID        :'',I)') ID
+c>>>>>>
+*     WRITE(6,'( '' Input ID        :'',I)') ID
+      WRITE(6,'( '' Input ID        :'',I7)') ID
+c<<<<<<
       WRITE(6,'( ''       NAME      :'',A)') NAME
-      WRITE(6,'( ''       NF        :'',I)') NF
+c>>>>>>
+*     WRITE(6,'( ''       NF        :'',I)') NF
+      WRITE(6,'( ''       NF        :'',I7)') NF
+c<<<<<<
       WRITE(6,'( ''       FACTORS(1):'',E12.5)') WEITS(1)
       IF(IERR.EQ.1) THEN
         WRITE(6,'(/'' ID outside allowed range [11,30]'')')
@@ -6285,7 +6303,10 @@
      +              SRNAME
       WRITE(6,'( '' ------------------------------------'')')
       WRITE(6,'( '' Input NAME      :'',A)') NAM
-      WRITE(6,'( ''       NF        :'',I)') NF
+c>>>>>>
+*     WRITE(6,'( ''       NF        :'',I)') NF
+      WRITE(6,'( ''       NF        :'',I7)') NF
+c>>>>>>
       IF(IERR.EQ.1) THEN
         WRITE(6,'(/'' Input name not allowed and/or NF outside'',
      +             '' the allowed range [3,5]'')')
@@ -6480,8 +6501,13 @@
       WRITE(6,'( '' QCDNUM error in s/r QNPSET ---> STOP'')')
       WRITE(6,'( '' ------------------------------------'')')
       WRITE(6,'( '' Input NAME :'',A)') UNAM
-      WRITE(6,'( ''         IX :'',I)') IX
-      WRITE(6,'( ''         IQ :'',I)') IQ
+c>>>>>>
+*     WRITE(6,'( ''         IX :'',I)') IX
+*     WRITE(6,'( ''         IQ :'',I)') IQ
+*
+      WRITE(6,'( ''         IX :'',I7)') IX
+      WRITE(6,'( ''         IQ :'',I7)') IQ
+c<<<<<<
       WRITE(6,'( ''      Value :'',E12.5)') VAL
       IF(IERR.EQ.1) THEN
         WRITE(6,'(/'' No x-Q2 grid available'')')
@@ -6613,7 +6639,10 @@
       WRITE(6,'( '' QCDNUM error in s/r QADDSI ---> STOP'')')
       WRITE(6,'( '' ------------------------------------'')')
       WRITE(6,'( '' Input NAME :'',A)') UNAM
-      WRITE(6,'( ''         IQ :'',I)') IQ
+c>>>>>>
+c     WRITE(6,'( ''         IQ :'',I)') IQ
+      WRITE(6,'( ''         IQ :'',I7)') IQ
+c<<<<<<
       WRITE(6,'( ''     Factor :'',E12.5)') FACTOR
       IF(IERR.EQ.1) THEN
         WRITE(6,'(/'' No x-Q2 grid available'')')
@@ -8144,9 +8173,15 @@
       WRITE(6,'( '' QCDNUM error in s/r EVPLUS ---> STOP'')')
       WRITE(6,'( '' ------------------------------------'')')
       WRITE(6,'( '' Input NAME   :'',A)') UNAM
-      WRITE(6,'( '' Input IQ0    :'',I)') IQ0
-      WRITE(6,'( ''       IQLow  :'',I)') IUQL
-      WRITE(6,'( ''       IQHigh :'',I)') IUQH
+c>>>>>>
+*     WRITE(6,'( '' Input IQ0    :'',I)') IQ0
+*     WRITE(6,'( ''       IQLow  :'',I)') IUQL
+*     WRITE(6,'( ''       IQHigh :'',I)') IUQH
+*
+      WRITE(6,'( '' Input IQ0    :'',I7)') IQ0
+      WRITE(6,'( ''       IQLow  :'',I7)') IUQL
+      WRITE(6,'( ''       IQHigh :'',I7)') IUQH
+c<<<<<<
       IF(IERR.NE.1) THEN
         WRITE(6,'(/'' After cuts IQ0, Q20 :'',I5,E12.5)') IQ0,Q2TAB(IQ0)
         WRITE(6,'( ''            IQL, Q2L :'',I5,E12.5)') IQL,Q2TAB(IQL)
diff -ur orig/MG_ME_V4.4.3/pythia-pgs/libraries/lhapdf/src/alphas.f MG_ME_V4.4.3/pythia-pgs/libraries/lhapdf/src/alphas.f
--- orig/MG_ME_V4.4.3/pythia-pgs/libraries/lhapdf/src/alphas.f	2006-05-19 18:56:49.000000000 +0900
+++ MG_ME_V4.4.3/pythia-pgs/libraries/lhapdf/src/alphas.f	2008-09-06 00:20:40.000000000 +0900
@@ -448,12 +448,21 @@
 
 c set artificial quark masses, if necessary, in alpha_s to enforce 
 c the requested maximum number of flavors...
-	if(Nfl .le. 5) UDSCBT(6) = 6.e99
-	if(Nfl .le. 4) UDSCBT(5) = 5.e99
-	if(Nfl .le. 3) UDSCBT(4) = 4.e99
-	if(Nfl .le. 2) UDSCBT(3) = 3.e99
-	if(Nfl .le. 1) UDSCBT(2) = 2.e99
-	if(Nfl .le. 0) UDSCBT(1) = 1.e99
+c>>>>>>
+*	if(Nfl .le. 5) UDSCBT(6) = 6.e99
+*	if(Nfl .le. 4) UDSCBT(5) = 5.e99
+*	if(Nfl .le. 3) UDSCBT(4) = 4.e99
+*	if(Nfl .le. 2) UDSCBT(3) = 3.e99
+*	if(Nfl .le. 1) UDSCBT(2) = 2.e99
+*	if(Nfl .le. 0) UDSCBT(1) = 1.e99
+*
+	if(Nfl .le. 5) UDSCBT(6) = 6.e30
+	if(Nfl .le. 4) UDSCBT(5) = 5.e30
+	if(Nfl .le. 3) UDSCBT(4) = 4.e30
+	if(Nfl .le. 2) UDSCBT(3) = 3.e30
+	if(Nfl .le. 1) UDSCBT(2) = 2.e30
+	if(Nfl .le. 0) UDSCBT(1) = 1.e30
+c<<<<<<
 
 c	print *,'CtLhAlphaNewSET: imode=',imode,' Nfl=',Nfl		!*** temporary ***
 c	print *,'CtLhAlphaNewSET: mc,mb,mt=', mc, mb, mt		!*** temporary ***
@@ -651,7 +660,10 @@
 
 c first get a good starting point, to be sure Newton's method doesn't go 
 c to the wrong root.
-         BEST = 9.e99
+c>>>>>>
+*        BEST = 9.e99
+         BEST = 9.e30
+c<<<<<<
          DO ITRY = 0, 20
             IF(ITRY.NE.0) ALFA0 = (1./B1)*(ITRY-0.5D0)/20.D0
             F = -1.d0/ALFA0 + TERM0 - B1*LOG(ALFA0/AS0) 
diff -ur orig/MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/example/pythiaMadGraph.F MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/example/pythiaMadGraph.F
--- orig/MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/example/pythiaMadGraph.F	2006-05-19 18:56:50.000000000 +0900
+++ MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/example/pythiaMadGraph.F	2008-09-28 00:33:06.000000000 +0900
@@ -35,6 +35,9 @@
       integer lok,NEV,iev
 
       EXTERNAL PYDATA
+c>>>
+      call pydatadummysub(pydata)
+c>>>
 
 
 C...Switch process mode; agrees with IDWTUP code (+-1,+-2,+-3,+-4).
@@ -400,3 +403,6 @@
       RETURN
       END
 
+      subroutine pydatadummysub(a)
+      return
+      end
diff -ur orig/MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/cnv1998to2000.F MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/cnv1998to2000.F
--- orig/MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/cnv1998to2000.F	2006-05-19 18:56:51.000000000 +0900
+++ MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/cnv1998to2000.F	2008-09-06 00:20:40.000000000 +0900
@@ -58,14 +58,14 @@
       ida=iabs(id)
 
       if(ida.eq.0)then
-D        write(lnhout,*) ' CNV1998TO2000 1: particle id is zero'
+C        write(lnhout,*) ' CNV1998TO2000 1: particle id is zero'
       elseif(mconv.eq.1)then
         do i = 1,mxlist
            if(ida.eq.itab1998(i))then
               cnv1998to2000=isign(itab2000(i),id)
            endif
         enddo
-D        if(cnv1998to2000.eq.0 ) write(lnhout,1002) id
+C        if(cnv1998to2000.eq.0 ) write(lnhout,1002) id
       elseif(mconv.eq.2)then
         do i = 1,mxlist
            if(ida.eq.itab2000(i))then
@@ -76,11 +76,11 @@
 	      endif
            endif
         enddo
-D        if(cnv1998to2000.eq.0 ) write(lnhout,1001) id
+C        if(cnv1998to2000.eq.0 ) write(lnhout,1001) id
       endif
       return
-D 1001 format(' CNV1998TO2000 3: ID ',i7,
-D     1            ' is not a defined PDG 1998 state')
-D 1002 format(' CNV1998TO2000 4: ID ',i7,
-D     1            ' is not a defined PDG 2000 state')
+C 1001 format(' CNV1998TO2000 3: ID ',i7,
+C     1            ' is not a defined PDG 1998 state')
+C 1002 format(' CNV1998TO2000 4: ID ',i7,
+C     1            ' is not a defined PDG 2000 state')
       end
diff -ur orig/MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/cnv2000to2002.F MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/cnv2000to2002.F
--- orig/MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/cnv2000to2002.F	2006-05-19 18:56:51.000000000 +0900
+++ MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/cnv2000to2002.F	2008-09-06 00:20:40.000000000 +0900
@@ -80,14 +80,14 @@
       ida=iabs(id)
 
       if(ida.eq.0)then
-D        write(lnhout,1001) 
+C        write(lnhout,1001) 
       elseif(mconv.eq.1)then
         do i = 1,mxlist
            if(ida.eq.itab2000(i))then
               cnv2000to2002=isign(itab2002(i),id)
            endif
         enddo
-D        if(cnv2000to2002.eq.0 ) write(lnhout,1002) id
+C        if(cnv2000to2002.eq.0 ) write(lnhout,1002) id
       elseif(mconv.eq.2)then
         do i = 1,mxlist
            if(ida.eq.itab2002(i))then
@@ -98,12 +98,12 @@
 	      endif
            endif
         enddo
-D        if(cnv2000to2002.eq.0 ) write(lnhout,1003) id
+C        if(cnv2000to2002.eq.0 ) write(lnhout,1003) id
       endif
       return
-D 1001 format(' CNV2000TO2002 1: particle id is zero')
-D 1002 format(' CNV2000TO2002 4: ID ',i7,
-D     1            ' is not a defined PDG 2002 state')
-D 1003 format(' CNV2000TO2002 3: ID ',i7,
-D     1            ' is not a defined PDG 2000 state')
+C 1001 format(' CNV2000TO2002 1: particle id is zero')
+C 1002 format(' CNV2000TO2002 4: ID ',i7,
+C     1            ' is not a defined PDG 2002 state')
+C 1003 format(' CNV2000TO2002 3: ID ',i7,
+C     1            ' is not a defined PDG 2000 state')
       end
diff -ur orig/MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/cnv2000to2004.F MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/cnv2000to2004.F
--- orig/MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/cnv2000to2004.F	2006-05-19 18:56:51.000000000 +0900
+++ MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/cnv2000to2004.F	2008-09-06 00:20:40.000000000 +0900
@@ -153,14 +153,14 @@
       ida=iabs(id)
 
       if(ida.eq.0)then
-D        write(lnhout,1001) 
+C        write(lnhout,1001) 
       elseif(mconv.eq.1)then
         do i = 1,mxlist
            if(ida.eq.itab2000(i))then
               cnv2000to2004=isign(itab2004(i),id)
            endif
         enddo
-D        if(cnv2000to2004.eq.0 ) write(lnhout,1002) id
+C        if(cnv2000to2004.eq.0 ) write(lnhout,1002) id
       elseif(mconv.eq.2)then
         do i = 1,mxlist
            if(ida.eq.itab2004(i))then
@@ -171,12 +171,12 @@
 	      endif
            endif
         enddo
-D        if(cnv2000to2004.eq.0 ) write(lnhout,1003) id
+C        if(cnv2000to2004.eq.0 ) write(lnhout,1003) id
       endif
       return
-D 1001 format(' cnv2000to2004 1: particle id is zero')
-D 1002 format(' cnv2000to2004 4: ID ',i7,
-D     1            ' is not a defined PDG 2004 state')
-D 1003 format(' cnv2000to2004 3: ID ',i7,
-D     1            ' is not a defined PDG 2000 state')
+C 1001 format(' cnv2000to2004 1: particle id is zero')
+C 1002 format(' cnv2000to2004 4: ID ',i7,
+C     1            ' is not a defined PDG 2004 state')
+C 1003 format(' cnv2000to2004 3: ID ',i7,
+C     1            ' is not a defined PDG 2000 state')
       end
diff -ur orig/MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/stdsort.F MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/stdsort.F
--- orig/MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/stdsort.F	2006-05-19 18:56:51.000000000 +0900
+++ MG_ME_V4.4.3/pythia-pgs/libraries/stdhep/src/stdhep/stdsort.F	2008-09-06 00:20:40.000000000 +0900
@@ -86,7 +86,7 @@
 C...did we miss anything?
       do I=1,NHEP
         if(LIST(I).EQ.0)then
-D         write(lnhout,1002) I
+C         write(lnhout,1002) I
           IN = IN+1
           LIST(I) = IN
           IREV(IN) = I
diff -ur orig/MG_ME_V4.4.3/pythia-pgs/src/ME2pythia.f MG_ME_V4.4.3/pythia-pgs/src/ME2pythia.f
--- orig/MG_ME_V4.4.3/pythia-pgs/src/ME2pythia.f	2008-07-11 03:12:08.000000000 +0900
+++ MG_ME_V4.4.3/pythia-pgs/src/ME2pythia.f	2008-09-06 00:20:40.000000000 +0900
@@ -2252,8 +2252,8 @@
       DATA ktsche,maxjets,minjets,nexcres/0,-1,-1,0/
       DATA nqmatch/5/
       DATA nexcproc/0/
-      DATA iexcproc/(MAXPUP)*-1/
-      DATA iexcval/(MAXPUP)*-2/
+      DATA iexcproc/MAXPUP*-1/
+      DATA iexcval/MAXPUP*-2/
       DATA nosingrad,showerkt,jetprocs/.false.,.false.,.false./
 
       DATA NCY,NCPHI/50,60/
diff -ur orig/MG_ME_V4.4.3/pythia-pgs/src/hep2lhe.f MG_ME_V4.4.3/pythia-pgs/src/hep2lhe.f
--- orig/MG_ME_V4.4.3/pythia-pgs/src/hep2lhe.f	2007-10-11 08:23:21.000000000 +0900
+++ MG_ME_V4.4.3/pythia-pgs/src/hep2lhe.f	2008-09-28 13:59:23.000000000 +0900
@@ -110,6 +110,10 @@
 c      LOGICAL banner_open
       integer lok,istream,itype
 
+c>>>>
+      call pydatadummysub(pydata)
+c>>>>
+
 C...Set pythia input card and STDHEP output file
       pythia_card='../Cards/pythia_card.dat'
 c      banner_file='banner.txt'
@@ -426,7 +430,10 @@
             DO J=1,4
               PUP(J,NUP)=PCJET(J,KSORTC(NCJET+1-I))
             ENDDO
-            PUP(5,NUP)=SQRT(MAX(0,PUP(4,NUP)**2-
+c>>>>>>
+*           PUP(5,NUP)=SQRT(MAX(0,PUP(4,NUP)**2-
+            PUP(5,NUP)=SQRT(MAX(0.,PUP(4,NUP)**2-
+c<<<<<<
      $         PUP(1,NUP)**2-PUP(2,NUP)**2-PUP(3,NUP)**2))
           ENDDO
         ELSE
@@ -443,7 +450,10 @@
             DO J=1,4
               PUP(J,NUP)=PJJET(J,KSORTJ(NJJET+1-I))
             ENDDO
-            PUP(5,NUP)=SQRT(MAX(0,PUP(4,NUP)**2-
+c>>>>>>
+*           PUP(5,NUP)=SQRT(MAX(0,PUP(4,NUP)**2-
+            PUP(5,NUP)=SQRT(MAX(0.,PUP(4,NUP)**2-
+c<<<<<<
      $         PUP(1,NUP)**2-PUP(2,NUP)**2-PUP(3,NUP)**2))
           ENDDO
         ENDIF
@@ -479,7 +489,10 @@
         DO I=1,NUP
           WRITE(20,'(I8,I3,2I3,2I2,5E16.8,2F3.0)')
      $       IDUP(I),ISTUP(I),MOTHUP(1,I),MOTHUP(2,I),0,0,
-     $       (PUP(J,I),J=1,5),0,0
+c>>>
+c    $       (PUP(J,I),J=1,5),0,0
+     $       (PUP(J,I),J=1,5),0.,0.
+c>>>
         ENDDO
         WRITE(20,'(a)') '</event>'
 
@@ -639,3 +652,7 @@
       return
 
       end
+
+      subroutine pydatadummysub(a)
+      return
+      end
diff -ur orig/MG_ME_V4.4.3/pythia-pgs/src/makefile MG_ME_V4.4.3/pythia-pgs/src/makefile
--- orig/MG_ME_V4.4.3/pythia-pgs/src/makefile	2008-04-18 14:19:59.000000000 +0900
+++ MG_ME_V4.4.3/pythia-pgs/src/makefile	2008-09-06 00:20:40.000000000 +0900
@@ -17,7 +17,9 @@
 endif
 
 FF = g77
-FFLAGS = -g -ffortran-bounds-check -fno-automatic -I${STDHEP_DIR}/src/inc \
+#FFLAGS = -g -ffortran-bounds-check -fno-automatic -I${STDHEP_DIR}/src/inc \
+#	 -I${PGS}/src
+FFLAGS = -g -fno-automatic -I${STDHEP_DIR}/src/inc \
 	 -I${PGS}/src
 
 LDIRS = -L${STDHEP_DIR}/lib -L${CRNLIB}/lib -L${LUND_DIR}/lib -L${PGS}/lib \
diff -ur orig/MG_ME_V4.4.3/pythia-pgs/src/pythia.f MG_ME_V4.4.3/pythia-pgs/src/pythia.f
--- orig/MG_ME_V4.4.3/pythia-pgs/src/pythia.f	2008-07-11 03:12:08.000000000 +0900
+++ MG_ME_V4.4.3/pythia-pgs/src/pythia.f	2008-09-28 00:39:17.000000000 +0900
@@ -139,6 +139,9 @@
       LOGICAL internal
       DATA internal/.false./
 
+c>>>
+      call pydatadummysub(pydata)
+c>>>
 C...Set pythia input card and STDHEP output file
       pythia_card='../Cards/pythia_card.dat'
       output_file='pythia_events.hep'
@@ -615,3 +618,7 @@
 
       return
       end
+
+      subroutine pydatadummysub(a)
+      return
+      end
