INTERFACE
SUBROUTINE SWNI&
 & ( KIDIA , KFDIA , KLON , KLEV , KAER , KNU,&
 & PAER , PAKI , PALBD , PALBP, PCG , PCLD, PCLEAR,&
 & PDSIG , POMEGA, POZ , PRMU , PSEC , PTAU,&
 & PUD , PWV , PQS,&
 & PFDOWN, PFUP , PCDOWN, PCUP , PSUDU2, PDIFF , PDIRF,&
 & LRDUST,PPIZA_DST,PCGA_DST,PTAUREL_DST ) 
USE PARKIND1 ,ONLY : JPIM ,JPRB
USE YOERAD , ONLY : NOVLP
! Temporary fix waiting for cleaner interface (or not)
USE clesphys_mod_h, ONLY: NSW
!!include "clesphys.h"
INTEGER(KIND=JPIM),INTENT(IN) :: KLON
INTEGER(KIND=JPIM),INTENT(IN) :: KLEV
INTEGER(KIND=JPIM),INTENT(IN) :: KIDIA
INTEGER(KIND=JPIM),INTENT(IN) :: KFDIA
INTEGER(KIND=JPIM),INTENT(IN) :: KAER
INTEGER(KIND=JPIM),INTENT(IN) :: KNU
REAL(KIND=JPRB) ,INTENT(IN) :: PAER(KLON,6,KLEV)
REAL(KIND=JPRB) ,INTENT(IN) :: PAKI(KLON,2,NSW)
REAL(KIND=JPRB) ,INTENT(IN) :: PALBD(KLON,NSW)
REAL(KIND=JPRB) ,INTENT(IN) :: PALBP(KLON,NSW)
REAL(KIND=JPRB) ,INTENT(IN) :: PCG(KLON,NSW,KLEV)
REAL(KIND=JPRB) ,INTENT(IN) :: PCLD(KLON,KLEV)
REAL(KIND=JPRB) ,INTENT(IN) :: PCLEAR(KLON)
REAL(KIND=JPRB) ,INTENT(IN) :: PDSIG(KLON,KLEV)
REAL(KIND=JPRB) ,INTENT(IN) :: POMEGA(KLON,NSW,KLEV)
REAL(KIND=JPRB) ,INTENT(IN) :: POZ(KLON,KLEV)
REAL(KIND=JPRB) ,INTENT(IN) :: PRMU(KLON)
REAL(KIND=JPRB) ,INTENT(IN) :: PSEC(KLON)
REAL(KIND=JPRB) ,INTENT(IN) :: PTAU(KLON,NSW,KLEV)
REAL(KIND=JPRB) ,INTENT(IN) :: PUD(KLON,5,KLEV+1)
REAL(KIND=JPRB) ,INTENT(IN) :: PWV(KLON,KLEV)
REAL(KIND=JPRB) ,INTENT(IN) :: PQS(KLON,KLEV)
LOGICAL ,INTENT(IN) :: LRDUST
REAL(KIND=JPRB) ,INTENT(IN) :: PPIZA_DST(KLON,KLEV)
REAL(KIND=JPRB) ,INTENT(IN) :: PCGA_DST(KLON,KLEV)
REAL(KIND=JPRB) ,INTENT(IN) :: PTAUREL_DST(KLON,KLEV)
REAL(KIND=JPRB) ,INTENT(OUT) :: PFDOWN(KLON,KLEV+1)
REAL(KIND=JPRB) ,INTENT(OUT) :: PFUP(KLON,KLEV+1)
REAL(KIND=JPRB) ,INTENT(OUT) :: PCDOWN(KLON,KLEV+1)
REAL(KIND=JPRB) ,INTENT(OUT) :: PCUP(KLON,KLEV+1)
REAL(KIND=JPRB) ,INTENT(OUT) :: PSUDU2(KLON)
REAL(KIND=JPRB) ,INTENT(OUT) :: PDIFF(KLON,KLEV)
REAL(KIND=JPRB) ,INTENT(OUT) :: PDIRF(KLON,KLEV)
END SUBROUTINE SWNI
END INTERFACE
