      SUBROUTINE INTTEMI2(SAIRROW,SAIRROL,SSFCROW,SSFCROL,SBIOROW,
     1                    SBIOROL,SSHIROW,SSHIROL,SSTKROW,SSTKROL,
     2                    SFIRROW,SFIRROL,OAIRROW,OAIRROL,OSFCROW,
     3                    OSFCROL,OBIOROW,OBIOROL,OSHIROW,OSHIROL,
     4                    OSTKROW,OSTKROL,OFIRROW,OFIRROL,BAIRROW,
     5                    BAIRROL,BSFCROW,BSFCROL,BBIOROW,BBIOROL,
     6                    BSHIROW,BSHIROL,BSTKROW,BSTKROL,BFIRROW,
     7                    BFIRROL,ILG,IL1,IL2,DELT,GMT,IDAY,MDAY)
C
C     * JUN 18/2013 - K.VONSALZEN. NEW VERSION FOR GCM17+:
C     *                            - ADD {SBIO,SSHI,OBIO,OSHI,BBIO,BSHI}.  
C     * APR 20/2010 - K.VONSALZEN. PREVIOUS VERSION INTTEMI FOR GCM15I+.
C
C     * INTERPOLATE TRANSIENT EMISSION DATA.
C
      IMPLICIT REAL (A-H,O-Z),
     +INTEGER (I-N) 
C
      REAL, DIMENSION(ILG) :: SAIRROW,SAIRROL,SSFCROW,SSFCROL,SBIOROW,
     1                        SBIOROL,SSHIROW,SSHIROL,SSTKROW,SSTKROL,
     2                        SFIRROW,SFIRROL,OAIRROW,OAIRROL,OSFCROW,
     3                        OSFCROL,OBIOROW,OBIOROL,OSHIROW,OSHIROL,
     4                        OSTKROW,OSTKROL,OFIRROW,OFIRROL,BAIRROW,
     5                        BAIRROL,BSFCROW,BSFCROL,BBIOROW,BBIOROL,
     6                        BSHIROW,BSHIROL,BSTKROW,BSTKROL,BFIRROW,
     7                        BFIRROL
C---------------------------------------------------------------------
C     * COMPUTE THE NUMBER OF TIMESTEPS FROM HERE TO MDAY.
C
      SEC0=REAL(IDAY)*86400. + GMT
C
      FMSEC=REAL(MDAY)*86400.
      IF(FMSEC.LT.SEC0) FMSEC=FMSEC+365.*86400.
C
      SECSM=FMSEC-SEC0
C
C     * GENERAL INTERPOLATION.
C
      DO I=IL1,IL2
        SAIRROW(I)=((SECSM-DELT)*SAIRROW(I)+DELT*SAIRROL(I))/SECSM
        SSFCROW(I)=((SECSM-DELT)*SSFCROW(I)+DELT*SSFCROL(I))/SECSM
        SBIOROW(I)=((SECSM-DELT)*SBIOROW(I)+DELT*SBIOROL(I))/SECSM
        SSHIROW(I)=((SECSM-DELT)*SSHIROW(I)+DELT*SSHIROL(I))/SECSM
        SSTKROW(I)=((SECSM-DELT)*SSTKROW(I)+DELT*SSTKROL(I))/SECSM
        SFIRROW(I)=((SECSM-DELT)*SFIRROW(I)+DELT*SFIRROL(I))/SECSM
        OAIRROW(I)=((SECSM-DELT)*OAIRROW(I)+DELT*OAIRROL(I))/SECSM
        OSFCROW(I)=((SECSM-DELT)*OSFCROW(I)+DELT*OSFCROL(I))/SECSM
        OBIOROW(I)=((SECSM-DELT)*OBIOROW(I)+DELT*OBIOROL(I))/SECSM
        OSHIROW(I)=((SECSM-DELT)*OSHIROW(I)+DELT*OSHIROL(I))/SECSM
        OSTKROW(I)=((SECSM-DELT)*OSTKROW(I)+DELT*OSTKROL(I))/SECSM
        OFIRROW(I)=((SECSM-DELT)*OFIRROW(I)+DELT*OFIRROL(I))/SECSM
        BAIRROW(I)=((SECSM-DELT)*BAIRROW(I)+DELT*BAIRROL(I))/SECSM
        BSFCROW(I)=((SECSM-DELT)*BSFCROW(I)+DELT*BSFCROL(I))/SECSM
        BBIOROW(I)=((SECSM-DELT)*BBIOROW(I)+DELT*BBIOROL(I))/SECSM
        BSHIROW(I)=((SECSM-DELT)*BSHIROW(I)+DELT*BSHIROL(I))/SECSM
        BSTKROW(I)=((SECSM-DELT)*BSTKROW(I)+DELT*BSTKROL(I))/SECSM
        BFIRROW(I)=((SECSM-DELT)*BFIRROW(I)+DELT*BFIRROL(I))/SECSM
      ENDDO
C
      RETURN
      END 
