 function wetlandM_Cs(Par_fix,Par,S,STrVol,forcing,Temp,WE,landscape_per)
     # Par=ParWetland
     # S=S_wet
     # forcing=forcing[i,:]
     # Temp=Temp[i,:]
     # Age=Age_wet;
     # C=C_wet;
     # ti=i
     # WE=WEWetland
     # landscape_per=landscape_per[3]

     Tt=Par[1]
     Cmelt=Par[2]
     Ca=Par[3]
     Ks=Par[4]
     Ss_p=Par_fix
    Sumax=Par[16]
    beta=Par[17]
    Crmax=Par[18]
    #Kf=Par[4]
    P=forcing[1]#check
    Ep=forcing[2]#check
     # O18_pre=forcing[3]#check
     H3_pre=forcing[3]#check
    Su=S[1]
    #Sf=S[2]
    Ssnow=S[2]
    Ss=S[3]
    Sesnow=S[4:13]'
    SuTrVol=STrVol[1]
    SsnowTrVol=STrVol[2]
    SsTrVol=STrVol[3]
    SesnowTrVol=STrVol[4:13]'

    Mesnow=zeros(1,Emax)
    Pesnow=zeros(1,Emax)
    Con_Mesnow=zeros(1,Emax)

        for j in 1:Emax
            if Temp[j]>Tt
                Pesnow[j]=0.0
                Sesnow_mix=Sesnow[j]
                # output
                Mesnow[j]=min(Cmelt*(Temp[j]-Tt),Sesnow_mix)
                Sesnow[j]=Sesnow_mix-Mesnow[j]
            else
                Pesnow[j]=P
                Sesnow_mix=Sesnow[j]+Pesnow[j]
                Mesnow[j]=0.0
                Sesnow[j]=Sesnow_mix
            end
            # tracer snow
            SesnowTrVol_mix=SesnowTrVol[j]+Pesnow[j]*H3_pre;
            if Sesnow_mix>0.0
                Con_Mesnow[j]=SesnowTrVol_mix/Sesnow_mix
            else
                Con_Mesnow[j]=0.0
            end
            SesnowTrVol[j]=SesnowTrVol_mix-Con_Mesnow[j]*Mesnow[j]
        end
    Ssnow=sum(Sesnow*WE)
    Msnow=sum(Mesnow*WE)
    Psnow=sum(Pesnow*WE)
    Prain=P-Psnow;
    Pe=Prain+Msnow
    SsnowTrVol=sum(SesnowTrVol*WE)
    Su=min(Su,Sumax);
    Su_mix=Su+Pe
    Suu=(1.0+beta)*Sumax*(1.0-(1.0-Su/Sumax)^(1.0/(1.0+beta)))
    index=min((Pe+Suu)/((1.0+beta)*Sumax),1.0)
    Ru=Pe-Sumax+Su+Sumax*((1-index)^(1.0+beta))
    Ru=max(0.0,Ru)
    Rsu=Pe-Ru
    Su=Su+Rsu

    if Pe>0.0

        Con_Pe=(sum(Con_Mesnow.*Mesnow*WE)+Prain*H3_pre)/Pe
    else

        Con_Pe=0.0
    end
    # Tracer Unsaturated Reservoir
    SuTrVol_mix=SuTrVol+Pe*Con_Pe;
    if Su_mix>0.0
        Con_Ru=SuTrVol_mix/Su_mix
    else
        Con_Ru=0.0
    end
    SuTrVol=SuTrVol_mix-Con_Ru*Ru
    #transporation
    Su_mix=Su
    Ea=min(Ep*min(Su/(Sumax*Ca),1.0),Su)
    Su=Su-Ea
    # Tracer Transpiration
    SuTrVol_mix=SuTrVol
    if Su_mix>0.0
        Con_Ea=SuTrVol_mix/Su_mix
    else
        Con_Ea=0.0
    end
    SuTrVol=SuTrVol_mix-Con_Ea*Ea
    # percolation
    #Su_mix=Su
    Rcap=Crmax*(1.0-Su/Sumax)
    Rcap=min(Rcap,Ss/landscape_per)
    if (Su+Rcap)>Sumax
        Rcap=Sumax-Su
    end
    Su=Su+Rcap
    #  Traecr percolation
    SsTrVol_mix=SsTrVol
    Con_Rcap=SuTrVol_mix/(Ss+Ss_p)
    SuTrVol=SuTrVol+Con_Rcap*Rcap
    SsTrVol=SsTrVol_mix-Con_Rcap*Rcap*landscape_per
    Ss=Ss-Rcap*landscape_per
     Qf=Ru
     Con_Qf=Con_Ru

 return  ([Su Ssnow Ss Sesnow],
 [SuTrVol SsnowTrVol SsTrVol SesnowTrVol],
 [Ea Qf Msnow],
 [Con_Ea Con_Qf])

end
