LCOV - code coverage report
Current view: top level - chemistry/pp_trop_strat_noaero - mo_prod_loss.F90 (source / functions) Hit Total Coverage
Test: coverage.info Lines: 411 411 100.0 %
Date: 2025-03-14 01:30:37 Functions: 2 2 100.0 %

          Line data    Source code
       1             :       module mo_prod_loss
       2             :       use shr_kind_mod, only : r8 => shr_kind_r8
       3             :       use chem_mods, only : veclen
       4             :       private
       5             :       public :: exp_prod_loss
       6             :       public :: imp_prod_loss
       7             :       contains
       8       72960 :       subroutine exp_prod_loss( ofl, ofu, prod, loss, y, &
       9       72960 :                                 rxt, het_rates, chnkpnts )
      10             :       use chem_mods, only : gas_pcnst,rxntot,clscnt1
      11             :       implicit none
      12             : !--------------------------------------------------------------------
      13             : ! ... dummy args
      14             : !--------------------------------------------------------------------
      15             :       integer, intent(in) :: ofl, ofu, chnkpnts
      16             :       real(r8), dimension(chnkpnts,max(1,clscnt1)), intent(out) :: &
      17             :             prod, &
      18             :             loss
      19             :       real(r8), intent(in) :: y(chnkpnts,gas_pcnst)
      20             :       real(r8), intent(in) :: rxt(chnkpnts,rxntot)
      21             :       real(r8), intent(in) :: het_rates(chnkpnts,gas_pcnst)
      22             : !--------------------------------------------------------------------
      23             : ! ... local variables
      24             : !--------------------------------------------------------------------
      25             :       integer :: k
      26             : !--------------------------------------------------------------------
      27             : ! ... loss and production for Explicit method
      28             : !--------------------------------------------------------------------
      29    33692928 :       do k = ofl,ofu
      30    33619968 :          loss(k,1) = ( + het_rates(k,3))* y(k,3)
      31    33619968 :          prod(k,1) = 0._r8
      32    33619968 :          loss(k,2) = ( + het_rates(k,19))* y(k,19)
      33    33619968 :          prod(k,2) = 0._r8
      34    33619968 :          loss(k,3) = (rxt(k,189)* y(k,189) + rxt(k,78) + het_rates(k,31))* y(k,31)
      35    33619968 :          prod(k,3) = 0._r8
      36    33619968 :          loss(k,4) = (rxt(k,190)* y(k,189) + rxt(k,79) + het_rates(k,32))* y(k,32)
      37    33619968 :          prod(k,4) = 0._r8
      38    33619968 :          loss(k,5) = (rxt(k,216)* y(k,189) + rxt(k,80) + het_rates(k,33))* y(k,33)
      39    33619968 :          prod(k,5) = 0._r8
      40    33619968 :          loss(k,6) = (rxt(k,191)* y(k,189) + rxt(k,81) + het_rates(k,34))* y(k,34)
      41    33619968 :          prod(k,6) = 0._r8
      42    33619968 :          loss(k,7) = (rxt(k,192)* y(k,189) + rxt(k,82) + het_rates(k,35))* y(k,35)
      43    33619968 :          prod(k,7) = 0._r8
      44    33619968 :          loss(k,8) = (rxt(k,193)* y(k,189) + rxt(k,83) + het_rates(k,36))* y(k,36)
      45    33619968 :          prod(k,8) = 0._r8
      46    33619968 :          loss(k,9) = (rxt(k,194)* y(k,189) + rxt(k,84) + het_rates(k,37))* y(k,37)
      47    33619968 :          prod(k,9) = 0._r8
      48    33619968 :          loss(k,10) = (rxt(k,195)* y(k,189) + rxt(k,85) + het_rates(k,38))* y(k,38)
      49    33619968 :          prod(k,10) = 0._r8
      50             :          loss(k,11) = (rxt(k,227)* y(k,54) +rxt(k,239)* y(k,189) +rxt(k,228)* y(k,190) &
      51    33619968 :                   + rxt(k,86) + het_rates(k,39))* y(k,39)
      52    33619968 :          prod(k,11) = 0._r8
      53             :          loss(k,12) = (rxt(k,229)* y(k,54) +rxt(k,240)* y(k,189) +rxt(k,230)* y(k,190) &
      54    33619968 :                   + rxt(k,87) + het_rates(k,41))* y(k,41)
      55    33619968 :          prod(k,12) = 0._r8
      56    33619968 :          loss(k,13) = (rxt(k,231)* y(k,190) + rxt(k,88) + het_rates(k,42))* y(k,42)
      57    33619968 :          prod(k,13) = 0._r8
      58             :          loss(k,14) = (rxt(k,232)* y(k,54) +rxt(k,233)* y(k,190) + rxt(k,89) &
      59    33619968 :                   + het_rates(k,44))* y(k,44)
      60    33619968 :          prod(k,14) = 0._r8
      61             :          loss(k,15) = (rxt(k,165)* y(k,54) +rxt(k,221)* y(k,68) + (rxt(k,261) + &
      62             :                  rxt(k,262) +rxt(k,263))* y(k,189) +rxt(k,254)* y(k,190) + rxt(k,39) &
      63    33619968 :                   + rxt(k,40) + het_rates(k,52))* y(k,52)
      64    33619968 :          prod(k,15) = 0._r8
      65             :          loss(k,16) = (rxt(k,234)* y(k,54) +rxt(k,217)* y(k,189) +rxt(k,235)* y(k,190) &
      66    33619968 :                   + rxt(k,90) + het_rates(k,53))* y(k,53)
      67    33619968 :          prod(k,16) = 0._r8
      68    33619968 :          loss(k,17) = ( + het_rates(k,59))* y(k,59)
      69    33619968 :          prod(k,17) = 0._r8
      70    33619968 :          loss(k,18) = ( + rxt(k,41) + het_rates(k,61))* y(k,61)
      71    33619968 :          prod(k,18) =.440_r8*rxt(k,40)*y(k,52)
      72    33619968 :          loss(k,19) = ( + rxt(k,529) + het_rates(k,66))* y(k,66)
      73    33619968 :          prod(k,19) = 0._r8
      74    33619968 :          loss(k,20) = (rxt(k,218)* y(k,189) + rxt(k,98) + het_rates(k,73))* y(k,73)
      75    33619968 :          prod(k,20) = 0._r8
      76             :          loss(k,21) = (rxt(k,241)* y(k,189) +rxt(k,236)* y(k,190) + rxt(k,100) &
      77    33619968 :                   + het_rates(k,77))* y(k,77)
      78    33619968 :          prod(k,21) = 0._r8
      79             :          loss(k,22) = (rxt(k,242)* y(k,189) +rxt(k,237)* y(k,190) + rxt(k,101) &
      80    33619968 :                   + het_rates(k,78))* y(k,78)
      81    33619968 :          prod(k,22) = 0._r8
      82             :          loss(k,23) = (rxt(k,243)* y(k,189) +rxt(k,238)* y(k,190) + rxt(k,102) &
      83    33619968 :                   + het_rates(k,79))* y(k,79)
      84    33619968 :          prod(k,23) = 0._r8
      85             :          loss(k,24) = ((rxt(k,156) +rxt(k,157))* y(k,189) + rxt(k,12) &
      86    33619968 :                   + het_rates(k,108))* y(k,108)
      87    33619968 :          prod(k,24) = 0._r8
      88    33619968 :          loss(k,25) = ( + rxt(k,531) + het_rates(k,114))* y(k,114)
      89    33619968 :          prod(k,25) = 0._r8
      90    33619968 :          loss(k,26) = ( + rxt(k,530) + het_rates(k,115))* y(k,115)
      91    33619968 :          prod(k,26) = 0._r8
      92    33619968 :          loss(k,27) = ( + het_rates(k,123))* y(k,123)
      93    33619968 :          prod(k,27) = 0._r8
      94    33619968 :          loss(k,28) = ( + rxt(k,108) + het_rates(k,135))* y(k,135)
      95    33619968 :          prod(k,28) = 0._r8
      96    33619968 :          loss(k,29) = ( + rxt(k,532) + het_rates(k,144))* y(k,144)
      97    33619968 :          prod(k,29) = 0._r8
      98    33619968 :          loss(k,30) = ( + het_rates(k,159))* y(k,159)
      99    33619968 :          prod(k,30) = 0._r8
     100    33619968 :          loss(k,31) = ( + het_rates(k,160))* y(k,160)
     101    33692928 :          prod(k,31) = 0._r8
     102             :       end do
     103       72960 :       end subroutine exp_prod_loss
     104     4409738 :       subroutine imp_prod_loss( avec_len, prod, loss, y, &
     105             :                                 rxt, het_rates )
     106             :       use chem_mods, only : gas_pcnst,rxntot,clscnt4
     107             :       implicit none
     108             : !--------------------------------------------------------------------
     109             : ! ... dummy args
     110             : !--------------------------------------------------------------------
     111             :       integer, intent(in) :: avec_len
     112             :       real(r8), dimension(veclen,clscnt4), intent(out) :: &
     113             :             prod, &
     114             :             loss
     115             :       real(r8), intent(in) :: y(veclen,gas_pcnst)
     116             :       real(r8), intent(in) :: rxt(veclen,rxntot)
     117             :       real(r8), intent(in) :: het_rates(veclen,gas_pcnst)
     118             : !--------------------------------------------------------------------
     119             : ! ... local variables
     120             : !--------------------------------------------------------------------
     121             :       integer :: k
     122             : !--------------------------------------------------------------------
     123             : ! ... loss and production for Implicit method
     124             : !--------------------------------------------------------------------
     125   145521354 :       do k = 1,avec_len
     126   141111616 :          loss(k,101) = (rxt(k,346)* y(k,190) + rxt(k,19) + het_rates(k,1))* y(k,1)
     127   141111616 :          prod(k,101) =rxt(k,349)*y(k,162)*y(k,116)
     128   141111616 :          loss(k,100) = (rxt(k,350)* y(k,190) + rxt(k,20) + het_rates(k,2))* y(k,2)
     129   141111616 :          prod(k,100) =rxt(k,347)*y(k,176)*y(k,162)
     130             :          loss(k,124) = (rxt(k,429)* y(k,118) +rxt(k,430)* y(k,122) +rxt(k,431) &
     131   141111616 :                  * y(k,190) + het_rates(k,4))* y(k,4)
     132   141111616 :          prod(k,124) = 0._r8
     133   141111616 :          loss(k,26) = (rxt(k,388)* y(k,190) + het_rates(k,5))* y(k,5)
     134   141111616 :          prod(k,26) = 0._r8
     135   141111616 :          loss(k,70) = (rxt(k,391)* y(k,190) + rxt(k,21) + het_rates(k,6))* y(k,6)
     136   141111616 :          prod(k,70) =rxt(k,389)*y(k,176)*y(k,164)
     137   141111616 :          loss(k,27) = ( + rxt(k,22) + het_rates(k,7))* y(k,7)
     138   141111616 :          prod(k,27) =.120_r8*rxt(k,388)*y(k,190)*y(k,5)
     139   141111616 :          loss(k,71) = ( + rxt(k,23) + het_rates(k,8))* y(k,8)
     140             :          prod(k,71) = (.100_r8*rxt(k,430)*y(k,4) +.100_r8*rxt(k,433)*y(k,105)) &
     141   141111616 :                  *y(k,122)
     142   141111616 :          loss(k,76) = ( + rxt(k,24) + het_rates(k,9))* y(k,9)
     143             :          prod(k,76) = (.500_r8*rxt(k,390)*y(k,164) +.200_r8*rxt(k,417)*y(k,196) + &
     144             :                  .060_r8*rxt(k,423)*y(k,199))*y(k,116) +.500_r8*rxt(k,21)*y(k,6) &
     145             :                   +rxt(k,22)*y(k,7) +.200_r8*rxt(k,70)*y(k,152) +.060_r8*rxt(k,72) &
     146   141111616 :                  *y(k,156)
     147   141111616 :          loss(k,51) = ( + rxt(k,25) + het_rates(k,10))* y(k,10)
     148             :          prod(k,51) = (.200_r8*rxt(k,417)*y(k,196) +.200_r8*rxt(k,423)*y(k,199)) &
     149   141111616 :                  *y(k,116) +.200_r8*rxt(k,70)*y(k,152) +.200_r8*rxt(k,72)*y(k,156)
     150   141111616 :          loss(k,97) = ( + rxt(k,26) + het_rates(k,11))* y(k,11)
     151             :          prod(k,97) = (.200_r8*rxt(k,417)*y(k,196) +.150_r8*rxt(k,423)*y(k,199)) &
     152             :                  *y(k,116) +rxt(k,46)*y(k,89) +rxt(k,56)*y(k,111) +.200_r8*rxt(k,70) &
     153   141111616 :                  *y(k,152) +.150_r8*rxt(k,72)*y(k,156)
     154   141111616 :          loss(k,59) = ( + rxt(k,27) + het_rates(k,12))* y(k,12)
     155   141111616 :          prod(k,59) =.210_r8*rxt(k,423)*y(k,199)*y(k,116) +.210_r8*rxt(k,72)*y(k,156)
     156   141111616 :          loss(k,39) = (rxt(k,351)* y(k,190) + het_rates(k,13))* y(k,13)
     157             :          prod(k,39) = (.050_r8*rxt(k,430)*y(k,4) +.050_r8*rxt(k,433)*y(k,105)) &
     158   141111616 :                  *y(k,122)
     159             :          loss(k,61) = (rxt(k,317)* y(k,118) +rxt(k,318)* y(k,190) + het_rates(k,14)) &
     160   141111616 :                  * y(k,14)
     161   141111616 :          prod(k,61) = 0._r8
     162             :          loss(k,154) = (rxt(k,200)* y(k,40) +rxt(k,202)* y(k,122) +rxt(k,201) &
     163   141111616 :                  * y(k,176) + het_rates(k,15))* y(k,15)
     164             :          prod(k,154) = (rxt(k,75) +2.000_r8*rxt(k,203)*y(k,17) +rxt(k,204)*y(k,57) + &
     165             :                  rxt(k,205)*y(k,57) +rxt(k,208)*y(k,116) +rxt(k,211)*y(k,121) + &
     166             :                  rxt(k,212)*y(k,190) +rxt(k,458)*y(k,136))*y(k,17) &
     167             :                   + (rxt(k,190)*y(k,32) +rxt(k,216)*y(k,33) + &
     168             :                  3.000_r8*rxt(k,217)*y(k,53) +2.000_r8*rxt(k,218)*y(k,73) + &
     169             :                  2.000_r8*rxt(k,239)*y(k,39) +rxt(k,240)*y(k,41) +rxt(k,219)*y(k,76)) &
     170             :                  *y(k,189) + (2.000_r8*rxt(k,228)*y(k,39) +rxt(k,230)*y(k,41) + &
     171             :                  3.000_r8*rxt(k,235)*y(k,53) +rxt(k,214)*y(k,76))*y(k,190) &
     172             :                   + (2.000_r8*rxt(k,227)*y(k,39) +rxt(k,229)*y(k,41) + &
     173             :                  3.000_r8*rxt(k,234)*y(k,53))*y(k,54) + (rxt(k,99) + &
     174             :                  rxt(k,213)*y(k,121))*y(k,76) +rxt(k,74)*y(k,16) +rxt(k,77)*y(k,18) &
     175   141111616 :                   +rxt(k,105)*y(k,86)
     176   141111616 :          loss(k,42) = ( + rxt(k,74) + het_rates(k,16))* y(k,16)
     177             :          prod(k,42) = (rxt(k,520)*y(k,86) +rxt(k,525)*y(k,86))*y(k,80) &
     178   141111616 :                   +rxt(k,206)*y(k,57)*y(k,17)
     179             :          loss(k,160) = (2._r8*rxt(k,203)* y(k,17) + (rxt(k,204) +rxt(k,205) + &
     180             :                  rxt(k,206))* y(k,57) +rxt(k,208)* y(k,116) +rxt(k,209)* y(k,117) &
     181             :                   +rxt(k,211)* y(k,121) +rxt(k,458)* y(k,136) +rxt(k,207)* y(k,176) &
     182   141111616 :                   +rxt(k,212)* y(k,190) + rxt(k,75) + het_rates(k,17))* y(k,17)
     183             :          prod(k,160) = (rxt(k,76) +rxt(k,210)*y(k,121))*y(k,18) +rxt(k,202)*y(k,122) &
     184   141111616 :                  *y(k,15) +rxt(k,220)*y(k,189)*y(k,76) +rxt(k,215)*y(k,121)*y(k,86)
     185             :          loss(k,86) = (rxt(k,210)* y(k,121) + rxt(k,76) + rxt(k,77) + rxt(k,514) &
     186   141111616 :                   + rxt(k,517) + rxt(k,522) + het_rates(k,18))* y(k,18)
     187   141111616 :          prod(k,86) =rxt(k,209)*y(k,117)*y(k,17)
     188   141111616 :          loss(k,40) = (rxt(k,392)* y(k,190) + het_rates(k,20))* y(k,20)
     189   141111616 :          prod(k,40) =rxt(k,28)*y(k,21) +rxt(k,395)*y(k,166)*y(k,116)
     190   141111616 :          loss(k,58) = (rxt(k,394)* y(k,190) + rxt(k,28) + het_rates(k,21))* y(k,21)
     191   141111616 :          prod(k,58) =rxt(k,393)*y(k,176)*y(k,166)
     192             :          loss(k,50) = (rxt(k,266)* y(k,54) +rxt(k,267)* y(k,190) + het_rates(k,22)) &
     193   141111616 :                  * y(k,22)
     194   141111616 :          prod(k,50) = 0._r8
     195             :          loss(k,90) = (rxt(k,268)* y(k,54) +rxt(k,269)* y(k,122) +rxt(k,294)* y(k,190) &
     196   141111616 :                   + het_rates(k,23))* y(k,23)
     197   141111616 :          prod(k,90) = 0._r8
     198   141111616 :          loss(k,43) = (rxt(k,274)* y(k,190) + het_rates(k,24))* y(k,24)
     199             :          prod(k,43) = (.400_r8*rxt(k,270)*y(k,167) +.200_r8*rxt(k,271)*y(k,171)) &
     200   141111616 :                  *y(k,167)
     201   141111616 :          loss(k,53) = (rxt(k,275)* y(k,190) + rxt(k,29) + het_rates(k,25))* y(k,25)
     202   141111616 :          prod(k,53) =rxt(k,272)*y(k,176)*y(k,167)
     203             :          loss(k,49) = (rxt(k,276)* y(k,54) +rxt(k,277)* y(k,190) + het_rates(k,26)) &
     204   141111616 :                  * y(k,26)
     205   141111616 :          prod(k,49) = 0._r8
     206             :          loss(k,129) = (rxt(k,297)* y(k,118) +rxt(k,298)* y(k,122) +rxt(k,315) &
     207   141111616 :                  * y(k,190) + het_rates(k,27))* y(k,27)
     208   141111616 :          prod(k,129) =.130_r8*rxt(k,375)*y(k,122)*y(k,93) +.700_r8*rxt(k,55)*y(k,106)
     209   141111616 :          loss(k,69) = (rxt(k,302)* y(k,190) + rxt(k,30) + het_rates(k,28))* y(k,28)
     210   141111616 :          prod(k,69) =rxt(k,300)*y(k,176)*y(k,168)
     211   141111616 :          loss(k,19) = (rxt(k,303)* y(k,190) + het_rates(k,29))* y(k,29)
     212   141111616 :          prod(k,19) = 0._r8
     213   141111616 :          loss(k,44) = (rxt(k,398)* y(k,190) + rxt(k,31) + het_rates(k,30))* y(k,30)
     214   141111616 :          prod(k,44) =rxt(k,396)*y(k,176)*y(k,169)
     215             :          loss(k,161) = (rxt(k,200)* y(k,15) +rxt(k,164)* y(k,54) +rxt(k,245)* y(k,118) &
     216             :                   +rxt(k,246)* y(k,121) +rxt(k,244)* y(k,176) +rxt(k,247)* y(k,190) &
     217   141111616 :                   + rxt(k,32) + rxt(k,33) + het_rates(k,40))* y(k,40)
     218             :          prod(k,161) = (rxt(k,171)*y(k,57) +2.000_r8*rxt(k,248)*y(k,171) + &
     219             :                  rxt(k,249)*y(k,171) +rxt(k,251)*y(k,116) + &
     220             :                  .700_r8*rxt(k,271)*y(k,167) +rxt(k,282)*y(k,170) + &
     221             :                  rxt(k,299)*y(k,168) +.800_r8*rxt(k,311)*y(k,193) + &
     222             :                  .880_r8*rxt(k,323)*y(k,182) +2.000_r8*rxt(k,332)*y(k,184) + &
     223             :                  1.500_r8*rxt(k,356)*y(k,178) +.750_r8*rxt(k,361)*y(k,179) + &
     224             :                  .800_r8*rxt(k,370)*y(k,96) +.800_r8*rxt(k,381)*y(k,198) + &
     225             :                  .750_r8*rxt(k,435)*y(k,188) +.930_r8*rxt(k,440)*y(k,194) + &
     226             :                  .950_r8*rxt(k,445)*y(k,195))*y(k,171) &
     227             :                   + (.500_r8*rxt(k,288)*y(k,175) +rxt(k,309)*y(k,192) + &
     228             :                  rxt(k,313)*y(k,193) +.500_r8*rxt(k,319)*y(k,173) + &
     229             :                  .250_r8*rxt(k,326)*y(k,182) +rxt(k,335)*y(k,184) + &
     230             :                  .100_r8*rxt(k,348)*y(k,162) +.920_r8*rxt(k,358)*y(k,178) + &
     231             :                  .250_r8*rxt(k,383)*y(k,198) +.340_r8*rxt(k,442)*y(k,194) + &
     232             :                  .320_r8*rxt(k,447)*y(k,195))*y(k,116) + (rxt(k,252)*y(k,50) + &
     233             :                  .300_r8*rxt(k,253)*y(k,51) +.500_r8*rxt(k,286)*y(k,49) + &
     234             :                  .800_r8*rxt(k,291)*y(k,69) +rxt(k,293)*y(k,127) + &
     235             :                  .500_r8*rxt(k,341)*y(k,104) +.400_r8*rxt(k,346)*y(k,1) + &
     236             :                  .300_r8*rxt(k,366)*y(k,94) +.680_r8*rxt(k,451)*y(k,151))*y(k,190) &
     237             :                   + (rxt(k,269)*y(k,23) +.500_r8*rxt(k,298)*y(k,27) + &
     238             :                  .120_r8*rxt(k,328)*y(k,100) +.600_r8*rxt(k,342)*y(k,106) + &
     239             :                  .910_r8*rxt(k,375)*y(k,93) +.340_r8*rxt(k,430)*y(k,4) + &
     240             :                  .340_r8*rxt(k,433)*y(k,105))*y(k,122) + (.500_r8*rxt(k,317)*y(k,14) + &
     241             :                  .250_r8*rxt(k,325)*y(k,182) +rxt(k,336)*y(k,184) + &
     242             :                  rxt(k,359)*y(k,178))*y(k,118) + (.250_r8*rxt(k,322)*y(k,182) + &
     243             :                  rxt(k,331)*y(k,184) +rxt(k,355)*y(k,178) + &
     244             :                  .250_r8*rxt(k,380)*y(k,198))*y(k,170) + (rxt(k,262)*y(k,189) + &
     245             :                  rxt(k,263)*y(k,189))*y(k,52) + (.150_r8*rxt(k,312)*y(k,193) + &
     246             :                  .450_r8*rxt(k,333)*y(k,184))*y(k,176) +.100_r8*rxt(k,19)*y(k,1) &
     247             :                   +.100_r8*rxt(k,20)*y(k,2) +rxt(k,38)*y(k,51) +rxt(k,43)*y(k,69) &
     248             :                   +.330_r8*rxt(k,45)*y(k,88) +rxt(k,47)*y(k,90) +.690_r8*rxt(k,49) &
     249             :                  *y(k,98) +1.340_r8*rxt(k,50)*y(k,100) +rxt(k,57)*y(k,119) +rxt(k,62) &
     250             :                  *y(k,132) +rxt(k,63)*y(k,133) +.375_r8*rxt(k,65)*y(k,147) &
     251             :                   +.400_r8*rxt(k,67)*y(k,149) +.680_r8*rxt(k,69)*y(k,151) &
     252             :                   +2.000_r8*rxt(k,289)*y(k,174) +rxt(k,259)*y(k,177) &
     253   141111616 :                   +2.000_r8*rxt(k,334)*y(k,184)*y(k,184)
     254             :          loss(k,134) = (rxt(k,278)* y(k,118) +rxt(k,279)* y(k,190) + rxt(k,34) &
     255   141111616 :                   + het_rates(k,43))* y(k,43)
     256             :          prod(k,134) = (rxt(k,273)*y(k,167) +.270_r8*rxt(k,301)*y(k,168) + &
     257             :                  rxt(k,309)*y(k,192) +rxt(k,319)*y(k,173) +rxt(k,338)*y(k,186) + &
     258             :                  .400_r8*rxt(k,348)*y(k,162))*y(k,116) + (rxt(k,274)*y(k,24) + &
     259             :                  .500_r8*rxt(k,275)*y(k,25) +.800_r8*rxt(k,346)*y(k,1))*y(k,190) &
     260             :                   + (.500_r8*rxt(k,298)*y(k,27) +.100_r8*rxt(k,342)*y(k,106))*y(k,122) &
     261             :                   + (1.600_r8*rxt(k,270)*y(k,167) +.800_r8*rxt(k,271)*y(k,171)) &
     262             :                  *y(k,167) +.400_r8*rxt(k,19)*y(k,1) +.400_r8*rxt(k,20)*y(k,2) &
     263             :                   +rxt(k,317)*y(k,118)*y(k,14) +rxt(k,29)*y(k,25) +.330_r8*rxt(k,45) &
     264             :                  *y(k,88) +rxt(k,53)*y(k,103) +rxt(k,62)*y(k,132) &
     265   141111616 :                   +.200_r8*rxt(k,337)*y(k,186)*y(k,176)
     266   141111616 :          loss(k,16) = (rxt(k,280)* y(k,190) + het_rates(k,45))* y(k,45)
     267   141111616 :          prod(k,16) = 0._r8
     268   141111616 :          loss(k,127) = (rxt(k,316)* y(k,190) + rxt(k,35) + het_rates(k,46))* y(k,46)
     269             :          prod(k,127) = (.820_r8*rxt(k,301)*y(k,168) +.500_r8*rxt(k,319)*y(k,173) + &
     270             :                  .250_r8*rxt(k,348)*y(k,162) +.270_r8*rxt(k,442)*y(k,194) + &
     271             :                  .040_r8*rxt(k,447)*y(k,195))*y(k,116) &
     272             :                   + (.820_r8*rxt(k,299)*y(k,168) +.150_r8*rxt(k,440)*y(k,194) + &
     273             :                  .025_r8*rxt(k,445)*y(k,195))*y(k,171) + (.250_r8*rxt(k,19) + &
     274             :                  .800_r8*rxt(k,346)*y(k,190))*y(k,1) + (.520_r8*rxt(k,430)*y(k,4) + &
     275             :                  .520_r8*rxt(k,433)*y(k,105))*y(k,122) + (.500_r8*rxt(k,69) + &
     276             :                  .500_r8*rxt(k,451)*y(k,190))*y(k,151) +.250_r8*rxt(k,20)*y(k,2) &
     277             :                   +.500_r8*rxt(k,317)*y(k,118)*y(k,14) +.820_r8*rxt(k,30)*y(k,28) &
     278             :                   +.170_r8*rxt(k,45)*y(k,88) +.300_r8*rxt(k,65)*y(k,147) &
     279   141111616 :                   +.050_r8*rxt(k,67)*y(k,149)
     280             :          loss(k,146) = (rxt(k,304)* y(k,118) +rxt(k,305)* y(k,190) + rxt(k,36) &
     281   141111616 :                   + het_rates(k,47))* y(k,47)
     282             :          prod(k,146) = (.250_r8*rxt(k,326)*y(k,182) +.050_r8*rxt(k,364)*y(k,179) + &
     283             :                  .250_r8*rxt(k,383)*y(k,198) +.170_r8*rxt(k,401)*y(k,172) + &
     284             :                  .170_r8*rxt(k,407)*y(k,185) +.400_r8*rxt(k,417)*y(k,196) + &
     285             :                  .540_r8*rxt(k,423)*y(k,199) +.510_r8*rxt(k,426)*y(k,201))*y(k,116) &
     286             :                   + (.250_r8*rxt(k,325)*y(k,182) +.050_r8*rxt(k,365)*y(k,179) + &
     287             :                  .250_r8*rxt(k,384)*y(k,198))*y(k,118) &
     288             :                   + (.500_r8*rxt(k,311)*y(k,193) +.240_r8*rxt(k,323)*y(k,182) + &
     289             :                  .100_r8*rxt(k,381)*y(k,198))*y(k,171) &
     290             :                   + (.880_r8*rxt(k,328)*y(k,100) +.500_r8*rxt(k,342)*y(k,106)) &
     291             :                  *y(k,122) + (.250_r8*rxt(k,322)*y(k,182) + &
     292             :                  .250_r8*rxt(k,380)*y(k,198))*y(k,170) &
     293             :                   + (.070_r8*rxt(k,400)*y(k,172) +.070_r8*rxt(k,406)*y(k,185)) &
     294             :                  *y(k,176) + (rxt(k,306)*y(k,90) +rxt(k,307)*y(k,119))*y(k,190) &
     295             :                   +.180_r8*rxt(k,23)*y(k,8) +rxt(k,27)*y(k,12) +.400_r8*rxt(k,70) &
     296   141111616 :                  *y(k,152) +.540_r8*rxt(k,72)*y(k,156) +.510_r8*rxt(k,73)*y(k,158)
     297   141111616 :          loss(k,88) = (rxt(k,285)* y(k,190) + het_rates(k,48))* y(k,48)
     298             :          prod(k,88) = (.100_r8*rxt(k,282)*y(k,171) +.150_r8*rxt(k,283)*y(k,176)) &
     299             :                  *y(k,170) +.120_r8*rxt(k,298)*y(k,122)*y(k,27) &
     300   141111616 :                   +.150_r8*rxt(k,333)*y(k,184)*y(k,176)
     301   141111616 :          loss(k,84) = (rxt(k,286)* y(k,190) + rxt(k,37) + het_rates(k,49))* y(k,49)
     302             :          prod(k,84) = (.400_r8*rxt(k,283)*y(k,170) +.400_r8*rxt(k,333)*y(k,184)) &
     303   141111616 :                  *y(k,176)
     304   141111616 :          loss(k,113) = (rxt(k,252)* y(k,190) + het_rates(k,50))* y(k,50)
     305             :          prod(k,113) = (rxt(k,249)*y(k,171) +.300_r8*rxt(k,271)*y(k,167) + &
     306             :                  .500_r8*rxt(k,311)*y(k,193) +.250_r8*rxt(k,323)*y(k,182) + &
     307             :                  .250_r8*rxt(k,356)*y(k,178) +.250_r8*rxt(k,361)*y(k,179) + &
     308             :                  .200_r8*rxt(k,370)*y(k,96) +.300_r8*rxt(k,381)*y(k,198) + &
     309             :                  .250_r8*rxt(k,435)*y(k,188) +.250_r8*rxt(k,440)*y(k,194) + &
     310   141111616 :                  .250_r8*rxt(k,445)*y(k,195))*y(k,171)
     311   141111616 :          loss(k,67) = (rxt(k,253)* y(k,190) + rxt(k,38) + het_rates(k,51))* y(k,51)
     312   141111616 :          prod(k,67) =rxt(k,250)*y(k,176)*y(k,171)
     313             :          loss(k,169) = (rxt(k,276)* y(k,26) +rxt(k,227)* y(k,39) +rxt(k,164)* y(k,40) &
     314             :                   +rxt(k,229)* y(k,41) +rxt(k,232)* y(k,44) +rxt(k,165)* y(k,52) &
     315             :                   +rxt(k,234)* y(k,53) +rxt(k,177)* y(k,58) +rxt(k,166)* y(k,72) &
     316             :                   +rxt(k,167)* y(k,74) +rxt(k,186)* y(k,87) +rxt(k,170)* y(k,122) &
     317   141111616 :                   + (rxt(k,168) +rxt(k,169))* y(k,176) + het_rates(k,54))* y(k,54)
     318             :          prod(k,169) = (4.000_r8*rxt(k,189)*y(k,31) +rxt(k,190)*y(k,32) + &
     319             :                  2.000_r8*rxt(k,191)*y(k,34) +2.000_r8*rxt(k,192)*y(k,35) + &
     320             :                  2.000_r8*rxt(k,193)*y(k,36) +rxt(k,194)*y(k,37) + &
     321             :                  2.000_r8*rxt(k,195)*y(k,38) +rxt(k,241)*y(k,77) +rxt(k,242)*y(k,78) + &
     322             :                  rxt(k,243)*y(k,79) +rxt(k,196)*y(k,80) +rxt(k,226)*y(k,63))*y(k,189) &
     323             :                   + (rxt(k,93) +rxt(k,171)*y(k,171) +2.000_r8*rxt(k,172)*y(k,57) + &
     324             :                  rxt(k,174)*y(k,57) +rxt(k,176)*y(k,116) +rxt(k,181)*y(k,121) + &
     325             :                  rxt(k,182)*y(k,190) +rxt(k,205)*y(k,17) +rxt(k,459)*y(k,136))*y(k,57) &
     326             :                   + (3.000_r8*rxt(k,231)*y(k,42) +rxt(k,233)*y(k,44) + &
     327             :                  rxt(k,236)*y(k,77) +rxt(k,237)*y(k,78) +rxt(k,238)*y(k,79) + &
     328             :                  rxt(k,185)*y(k,80))*y(k,190) + (rxt(k,103) +rxt(k,184)*y(k,121)) &
     329             :                  *y(k,80) +rxt(k,74)*y(k,16) +2.000_r8*rxt(k,91)*y(k,55) &
     330             :                   +2.000_r8*rxt(k,92)*y(k,56) +rxt(k,94)*y(k,58) +rxt(k,97)*y(k,63) &
     331   141111616 :                   +rxt(k,106)*y(k,87)
     332   141111616 :          loss(k,25) = ( + rxt(k,91) + het_rates(k,55))* y(k,55)
     333             :          prod(k,25) = (rxt(k,513)*y(k,87) +rxt(k,518)*y(k,58) +rxt(k,519)*y(k,87) + &
     334             :                  rxt(k,523)*y(k,58) +rxt(k,524)*y(k,87) +rxt(k,528)*y(k,58))*y(k,80) &
     335   141111616 :                   +rxt(k,177)*y(k,58)*y(k,54) +rxt(k,173)*y(k,57)*y(k,57)
     336   141111616 :          loss(k,17) = ( + rxt(k,92) + rxt(k,199) + het_rates(k,56))* y(k,56)
     337   141111616 :          prod(k,17) =rxt(k,198)*y(k,57)*y(k,57)
     338             :          loss(k,164) = ((rxt(k,204) +rxt(k,205) +rxt(k,206))* y(k,17) &
     339             :                   + 2._r8*(rxt(k,172) +rxt(k,173) +rxt(k,174) +rxt(k,198))* y(k,57) &
     340             :                   +rxt(k,176)* y(k,116) +rxt(k,178)* y(k,117) +rxt(k,181)* y(k,121) &
     341             :                   +rxt(k,459)* y(k,136) +rxt(k,171)* y(k,171) +rxt(k,175)* y(k,176) &
     342             :                   + (rxt(k,182) +rxt(k,183))* y(k,190) + rxt(k,93) + het_rates(k,57)) &
     343   141111616 :                  * y(k,57)
     344             :          prod(k,164) = (rxt(k,169)*y(k,176) +rxt(k,170)*y(k,122) +rxt(k,186)*y(k,87)) &
     345             :                  *y(k,54) + (rxt(k,95) +rxt(k,179)*y(k,121))*y(k,58) &
     346             :                   + (rxt(k,187)*y(k,121) +rxt(k,188)*y(k,190))*y(k,87) + (rxt(k,107) + &
     347             :                  rxt(k,464)*y(k,136))*y(k,124) +2.000_r8*rxt(k,199)*y(k,56) &
     348   141111616 :                   +rxt(k,197)*y(k,189)*y(k,80)
     349             :          loss(k,128) = (rxt(k,177)* y(k,54) + (rxt(k,518) +rxt(k,523) +rxt(k,528)) &
     350             :                  * y(k,80) +rxt(k,179)* y(k,121) +rxt(k,180)* y(k,190) + rxt(k,94) &
     351             :                   + rxt(k,95) + rxt(k,516) + rxt(k,521) + rxt(k,527) &
     352   141111616 :                   + het_rates(k,58))* y(k,58)
     353   141111616 :          prod(k,128) =rxt(k,178)*y(k,117)*y(k,57)
     354   141111616 :          loss(k,135) = ((rxt(k,255) +rxt(k,265))* y(k,190) + het_rates(k,60))* y(k,60)
     355             :          prod(k,135) = (rxt(k,32) +rxt(k,33) +rxt(k,164)*y(k,54) +rxt(k,200)*y(k,15) + &
     356             :                  rxt(k,245)*y(k,118) +rxt(k,246)*y(k,121) +rxt(k,247)*y(k,190)) &
     357             :                  *y(k,40) + (.630_r8*rxt(k,269)*y(k,23) +.560_r8*rxt(k,298)*y(k,27) + &
     358             :                  .650_r8*rxt(k,328)*y(k,100) +.560_r8*rxt(k,342)*y(k,106) + &
     359             :                  .620_r8*rxt(k,375)*y(k,93) +.230_r8*rxt(k,430)*y(k,4) + &
     360             :                  .230_r8*rxt(k,433)*y(k,105))*y(k,122) &
     361             :                   + (.220_r8*rxt(k,326)*y(k,182) +.250_r8*rxt(k,383)*y(k,198) + &
     362             :                  .170_r8*rxt(k,401)*y(k,172) +.400_r8*rxt(k,404)*y(k,183) + &
     363             :                  .350_r8*rxt(k,407)*y(k,185) +.225_r8*rxt(k,442)*y(k,194))*y(k,116) &
     364             :                   + (.350_r8*rxt(k,267)*y(k,22) +rxt(k,292)*y(k,70) + &
     365             :                  rxt(k,305)*y(k,47) +.700_r8*rxt(k,451)*y(k,151) +rxt(k,455)*y(k,125)) &
     366             :                  *y(k,190) + (rxt(k,304)*y(k,47) +.220_r8*rxt(k,325)*y(k,182) + &
     367             :                  .500_r8*rxt(k,384)*y(k,198))*y(k,118) &
     368             :                   + (.110_r8*rxt(k,323)*y(k,182) +.200_r8*rxt(k,381)*y(k,198) + &
     369             :                  .125_r8*rxt(k,440)*y(k,194))*y(k,171) &
     370             :                   + (.070_r8*rxt(k,400)*y(k,172) +.160_r8*rxt(k,403)*y(k,183) + &
     371             :                  .140_r8*rxt(k,406)*y(k,185))*y(k,176) + (rxt(k,110) + &
     372             :                  rxt(k,454)*y(k,121))*y(k,125) + (.220_r8*rxt(k,322)*y(k,182) + &
     373             :                  .250_r8*rxt(k,380)*y(k,198))*y(k,170) +1.500_r8*rxt(k,22)*y(k,7) &
     374             :                   +.450_r8*rxt(k,23)*y(k,8) +.600_r8*rxt(k,26)*y(k,11) +rxt(k,27) &
     375             :                  *y(k,12) +rxt(k,34)*y(k,43) +rxt(k,232)*y(k,54)*y(k,44) +rxt(k,36) &
     376             :                  *y(k,47) +rxt(k,43)*y(k,69) +2.000_r8*rxt(k,44)*y(k,70) &
     377             :                   +.330_r8*rxt(k,45)*y(k,88) +1.340_r8*rxt(k,51)*y(k,100) &
     378             :                   +.700_r8*rxt(k,55)*y(k,106) +1.500_r8*rxt(k,64)*y(k,146) &
     379             :                   +.250_r8*rxt(k,65)*y(k,147) +rxt(k,68)*y(k,150) +1.700_r8*rxt(k,69) &
     380   141111616 :                  *y(k,151)
     381   141111616 :          loss(k,20) = (rxt(k,225)* y(k,189) + rxt(k,96) + het_rates(k,62))* y(k,62)
     382             :          prod(k,20) = (rxt(k,190)*y(k,32) +rxt(k,192)*y(k,35) + &
     383             :                  2.000_r8*rxt(k,193)*y(k,36) +2.000_r8*rxt(k,194)*y(k,37) + &
     384             :                  rxt(k,195)*y(k,38) +rxt(k,216)*y(k,33) +2.000_r8*rxt(k,218)*y(k,73) + &
     385             :                  rxt(k,242)*y(k,78) +rxt(k,243)*y(k,79))*y(k,189) &
     386   141111616 :                   + (rxt(k,237)*y(k,78) +rxt(k,238)*y(k,79))*y(k,190)
     387   141111616 :          loss(k,29) = (rxt(k,226)* y(k,189) + rxt(k,97) + het_rates(k,63))* y(k,63)
     388             :          prod(k,29) = (rxt(k,191)*y(k,34) +rxt(k,192)*y(k,35) +rxt(k,241)*y(k,77)) &
     389   141111616 :                  *y(k,189) +rxt(k,236)*y(k,190)*y(k,77)
     390   141111616 :          loss(k,32) = (rxt(k,399)* y(k,190) + het_rates(k,64))* y(k,64)
     391   141111616 :          prod(k,32) =.180_r8*rxt(k,419)*y(k,190)*y(k,153)
     392             :          loss(k,47) = (rxt(k,452)* y(k,118) + (rxt(k,453) +rxt(k,466))* y(k,190) &
     393   141111616 :                   + het_rates(k,65))* y(k,65)
     394   141111616 :          prod(k,47) = 0._r8
     395   141111616 :          loss(k,21) = ( + rxt(k,42) + het_rates(k,67))* y(k,67)
     396   141111616 :          prod(k,21) =rxt(k,287)*y(k,176)*y(k,175)
     397             :          loss(k,111) = (rxt(k,221)* y(k,52) +rxt(k,222)* y(k,72) +rxt(k,224)* y(k,84) &
     398   141111616 :                   +rxt(k,223)* y(k,202) + het_rates(k,68))* y(k,68)
     399             :          prod(k,111) = (rxt(k,194)*y(k,37) +rxt(k,216)*y(k,33) + &
     400             :                  2.000_r8*rxt(k,225)*y(k,62) +rxt(k,226)*y(k,63))*y(k,189) &
     401   141111616 :                   +2.000_r8*rxt(k,96)*y(k,62) +rxt(k,97)*y(k,63) +rxt(k,104)*y(k,83)
     402   141111616 :          loss(k,131) = (rxt(k,291)* y(k,190) + rxt(k,43) + het_rates(k,69))* y(k,69)
     403             :          prod(k,131) = (.530_r8*rxt(k,326)*y(k,182) +.050_r8*rxt(k,364)*y(k,179) + &
     404             :                  .250_r8*rxt(k,383)*y(k,198) +.225_r8*rxt(k,442)*y(k,194))*y(k,116) &
     405             :                   + (.530_r8*rxt(k,325)*y(k,182) +.050_r8*rxt(k,365)*y(k,179) + &
     406             :                  .250_r8*rxt(k,384)*y(k,198))*y(k,118) &
     407             :                   + (.260_r8*rxt(k,323)*y(k,182) +.100_r8*rxt(k,381)*y(k,198) + &
     408             :                  .125_r8*rxt(k,440)*y(k,194))*y(k,171) + (.700_r8*rxt(k,366)*y(k,94) + &
     409             :                  .500_r8*rxt(k,367)*y(k,95) +rxt(k,378)*y(k,110))*y(k,190) &
     410             :                   + (.530_r8*rxt(k,322)*y(k,182) +.250_r8*rxt(k,380)*y(k,198)) &
     411             :                  *y(k,170) +.330_r8*rxt(k,45)*y(k,88) +.250_r8*rxt(k,65)*y(k,147) &
     412   141111616 :                   +rxt(k,290)*y(k,174)
     413             :          loss(k,122) = (rxt(k,292)* y(k,190) + rxt(k,44) + rxt(k,470) &
     414   141111616 :                   + het_rates(k,70))* y(k,70)
     415             :          prod(k,122) = (.050_r8*rxt(k,364)*y(k,179) +.250_r8*rxt(k,383)*y(k,198) + &
     416             :                  rxt(k,390)*y(k,164) +.400_r8*rxt(k,404)*y(k,183) + &
     417             :                  .170_r8*rxt(k,407)*y(k,185) +.700_r8*rxt(k,410)*y(k,191) + &
     418             :                  .600_r8*rxt(k,417)*y(k,196) +.340_r8*rxt(k,423)*y(k,199) + &
     419             :                  .170_r8*rxt(k,426)*y(k,201))*y(k,116) + (.650_r8*rxt(k,267)*y(k,22) + &
     420             :                  .200_r8*rxt(k,291)*y(k,69) +rxt(k,379)*y(k,111))*y(k,190) &
     421             :                   + (.250_r8*rxt(k,380)*y(k,170) +.100_r8*rxt(k,381)*y(k,171) + &
     422             :                  .250_r8*rxt(k,384)*y(k,118))*y(k,198) &
     423             :                   + (.160_r8*rxt(k,403)*y(k,183) +.070_r8*rxt(k,406)*y(k,185)) &
     424             :                  *y(k,176) +rxt(k,21)*y(k,6) +.130_r8*rxt(k,23)*y(k,8) &
     425             :                   +.050_r8*rxt(k,365)*y(k,179)*y(k,118) +.700_r8*rxt(k,61)*y(k,131) &
     426             :                   +.600_r8*rxt(k,70)*y(k,152) +.340_r8*rxt(k,72)*y(k,156) &
     427   141111616 :                   +.170_r8*rxt(k,73)*y(k,158)
     428             :          loss(k,156) = (rxt(k,130)* y(k,122) + (rxt(k,124) +rxt(k,125) +rxt(k,126)) &
     429   141111616 :                  * y(k,176) + rxt(k,127) + het_rates(k,71))* y(k,71)
     430             :          prod(k,156) = (rxt(k,131)*y(k,72) +rxt(k,134)*y(k,121) +rxt(k,152)*y(k,107) + &
     431             :                  rxt(k,247)*y(k,40) +rxt(k,265)*y(k,60) +rxt(k,455)*y(k,125) + &
     432             :                  rxt(k,460)*y(k,134) +rxt(k,465)*y(k,136))*y(k,190) &
     433             :                   + (rxt(k,114)*y(k,189) +rxt(k,122)*y(k,121) +rxt(k,166)*y(k,54) + &
     434             :                  rxt(k,222)*y(k,68))*y(k,72) + (rxt(k,262)*y(k,52) + &
     435             :                  rxt(k,197)*y(k,80) +rxt(k,220)*y(k,76))*y(k,189) + (rxt(k,2) + &
     436             :                  2.000_r8*rxt(k,3))*y(k,202) +2.000_r8*rxt(k,32)*y(k,40) +rxt(k,38) &
     437   141111616 :                  *y(k,51) +rxt(k,99)*y(k,76) +rxt(k,103)*y(k,80) +rxt(k,104)*y(k,83)
     438             :          loss(k,143) = (rxt(k,166)* y(k,54) +rxt(k,222)* y(k,68) +rxt(k,122)* y(k,121) &
     439             :                   +rxt(k,114)* y(k,189) +rxt(k,131)* y(k,190) + het_rates(k,72)) &
     440   141111616 :                  * y(k,72)
     441             :          prod(k,143) =rxt(k,33)*y(k,40) +rxt(k,263)*y(k,189)*y(k,52) &
     442   141111616 :                   +rxt(k,124)*y(k,176)*y(k,71) +rxt(k,1)*y(k,202)
     443             :          loss(k,93) = (rxt(k,167)* y(k,54) +rxt(k,123)* y(k,121) +rxt(k,132)* y(k,190) &
     444   141111616 :                   + rxt(k,4) + het_rates(k,74))* y(k,74)
     445   141111616 :          prod(k,93) =rxt(k,138)*y(k,176)*y(k,176) +rxt(k,137)*y(k,190)*y(k,190)
     446   141111616 :          loss(k,22) = ( + rxt(k,109) + het_rates(k,75))* y(k,75)
     447   141111616 :          prod(k,22) =rxt(k,468)*y(k,202)*y(k,138)
     448             :          loss(k,118) = (rxt(k,213)* y(k,121) + (rxt(k,219) +rxt(k,220))* y(k,189) &
     449   141111616 :                   +rxt(k,214)* y(k,190) + rxt(k,99) + het_rates(k,76))* y(k,76)
     450   141111616 :          prod(k,118) = (rxt(k,200)*y(k,40) +rxt(k,201)*y(k,176))*y(k,15)
     451             :          loss(k,168) = ((rxt(k,518) +rxt(k,523) +rxt(k,528))* y(k,58) + (rxt(k,520) + &
     452             :                  rxt(k,525))* y(k,86) + (rxt(k,513) +rxt(k,519) +rxt(k,524))* y(k,87) &
     453             :                   +rxt(k,184)* y(k,121) + (rxt(k,196) +rxt(k,197))* y(k,189) &
     454   141111616 :                   +rxt(k,185)* y(k,190) + rxt(k,103) + het_rates(k,80))* y(k,80)
     455             :          prod(k,168) = (rxt(k,165)*y(k,52) +rxt(k,227)*y(k,39) +rxt(k,229)*y(k,41) + &
     456             :                  2.000_r8*rxt(k,232)*y(k,44) +rxt(k,234)*y(k,53) +rxt(k,164)*y(k,40) + &
     457             :                  rxt(k,166)*y(k,72) +rxt(k,167)*y(k,74) +rxt(k,168)*y(k,176) + &
     458             :                  rxt(k,186)*y(k,87) +rxt(k,276)*y(k,26))*y(k,54) +rxt(k,183)*y(k,190) &
     459   141111616 :                  *y(k,57)
     460             :          loss(k,30) = (rxt(k,264)* y(k,189) +rxt(k,256)* y(k,190) + het_rates(k,81)) &
     461   141111616 :                  * y(k,81)
     462   141111616 :          prod(k,30) = 0._r8
     463   141111616 :          loss(k,115) = (rxt(k,257)* y(k,190) + het_rates(k,82))* y(k,82)
     464             :          prod(k,115) = (.370_r8*rxt(k,269)*y(k,23) +.120_r8*rxt(k,298)*y(k,27) + &
     465             :                  .330_r8*rxt(k,328)*y(k,100) +.120_r8*rxt(k,342)*y(k,106) + &
     466             :                  .110_r8*rxt(k,375)*y(k,93) +.050_r8*rxt(k,430)*y(k,4) + &
     467             :                  .050_r8*rxt(k,433)*y(k,105))*y(k,122) + (rxt(k,258)*y(k,176) + &
     468   141111616 :                  rxt(k,260)*y(k,116))*y(k,177) +.350_r8*rxt(k,267)*y(k,190)*y(k,22)
     469   141111616 :          loss(k,37) = ( + rxt(k,104) + het_rates(k,83))* y(k,83)
     470             :          prod(k,37) = (rxt(k,221)*y(k,52) +rxt(k,222)*y(k,72) +rxt(k,223)*y(k,202) + &
     471   141111616 :                  rxt(k,224)*y(k,84))*y(k,68)
     472             :          loss(k,155) = (rxt(k,224)* y(k,68) +rxt(k,161)* y(k,190) + rxt(k,9) &
     473   141111616 :                   + het_rates(k,84))* y(k,84)
     474             :          prod(k,155) = (rxt(k,516) +rxt(k,521) +rxt(k,527) +rxt(k,518)*y(k,80) + &
     475             :                  rxt(k,523)*y(k,80) +rxt(k,528)*y(k,80))*y(k,58) + (rxt(k,480) + &
     476             :                  rxt(k,245)*y(k,40) +rxt(k,278)*y(k,43) +rxt(k,304)*y(k,47) + &
     477             :                  rxt(k,452)*y(k,65))*y(k,118) + (2.000_r8*rxt(k,475) + &
     478             :                  2.000_r8*rxt(k,512) +2.000_r8*rxt(k,515) +2.000_r8*rxt(k,526)) &
     479             :                  *y(k,109) + (rxt(k,514) +rxt(k,517) +rxt(k,522))*y(k,18) &
     480             :                   + (.500_r8*rxt(k,479) +rxt(k,160)*y(k,190))*y(k,117) +rxt(k,472) &
     481             :                  *y(k,88) +rxt(k,473)*y(k,94) +rxt(k,474)*y(k,95) +rxt(k,476)*y(k,110) &
     482             :                   +rxt(k,477)*y(k,111) +rxt(k,481)*y(k,120) +rxt(k,482)*y(k,126) &
     483   141111616 :                   +rxt(k,483)*y(k,148)
     484             :          loss(k,62) = (rxt(k,139)* y(k,190) + rxt(k,10) + rxt(k,11) + rxt(k,162) &
     485   141111616 :                   + het_rates(k,85))* y(k,85)
     486   141111616 :          prod(k,62) =rxt(k,158)*y(k,176)*y(k,117)
     487             :          loss(k,112) = ((rxt(k,520) +rxt(k,525))* y(k,80) +rxt(k,215)* y(k,121) &
     488   141111616 :                   + rxt(k,105) + het_rates(k,86))* y(k,86)
     489             :          prod(k,112) = (rxt(k,514) +rxt(k,517) +rxt(k,522))*y(k,18) &
     490   141111616 :                   +rxt(k,207)*y(k,176)*y(k,17)
     491             :          loss(k,116) = (rxt(k,186)* y(k,54) + (rxt(k,513) +rxt(k,519) +rxt(k,524)) &
     492             :                  * y(k,80) +rxt(k,187)* y(k,121) +rxt(k,188)* y(k,190) + rxt(k,106) &
     493   141111616 :                   + het_rates(k,87))* y(k,87)
     494             :          prod(k,116) = (rxt(k,516) +rxt(k,521) +rxt(k,527) +rxt(k,180)*y(k,190)) &
     495   141111616 :                  *y(k,58) +rxt(k,175)*y(k,176)*y(k,57)
     496             :          loss(k,136) = (rxt(k,321)* y(k,190) + rxt(k,45) + rxt(k,472) &
     497   141111616 :                   + het_rates(k,88))* y(k,88)
     498             :          prod(k,136) = (rxt(k,320)*y(k,173) +rxt(k,327)*y(k,182))*y(k,116) &
     499   141111616 :                   + (.300_r8*rxt(k,366)*y(k,94) +.500_r8*rxt(k,367)*y(k,95))*y(k,190)
     500   141111616 :          loss(k,38) = (rxt(k,352)* y(k,190) + rxt(k,46) + het_rates(k,89))* y(k,89)
     501   141111616 :          prod(k,38) =rxt(k,363)*y(k,179)
     502   141111616 :          loss(k,137) = (rxt(k,306)* y(k,190) + rxt(k,47) + het_rates(k,90))* y(k,90)
     503             :          prod(k,137) = (.220_r8*rxt(k,322)*y(k,170) +.230_r8*rxt(k,323)*y(k,171) + &
     504             :                  .220_r8*rxt(k,325)*y(k,118) +.220_r8*rxt(k,326)*y(k,116))*y(k,182) &
     505             :                   + (.500_r8*rxt(k,310)*y(k,132) +.500_r8*rxt(k,341)*y(k,104) + &
     506             :                  .700_r8*rxt(k,366)*y(k,94) +.500_r8*rxt(k,367)*y(k,95))*y(k,190) &
     507             :                   + (.250_r8*rxt(k,380)*y(k,170) +.100_r8*rxt(k,381)*y(k,171) + &
     508             :                  .250_r8*rxt(k,383)*y(k,116) +.250_r8*rxt(k,384)*y(k,118))*y(k,198) &
     509             :                   + (.050_r8*rxt(k,364)*y(k,116) +.050_r8*rxt(k,365)*y(k,118)) &
     510             :                  *y(k,179) +.170_r8*rxt(k,45)*y(k,88) +.200_r8*rxt(k,311)*y(k,193) &
     511   141111616 :                  *y(k,171)
     512   141111616 :          loss(k,52) = (rxt(k,353)* y(k,190) + het_rates(k,91))* y(k,91)
     513             :          prod(k,52) = (rxt(k,360)*y(k,170) +.750_r8*rxt(k,361)*y(k,171) + &
     514   141111616 :                  .870_r8*rxt(k,364)*y(k,116) +.950_r8*rxt(k,365)*y(k,118))*y(k,179)
     515   141111616 :          loss(k,23) = (rxt(k,354)* y(k,190) + het_rates(k,92))* y(k,92)
     516   141111616 :          prod(k,23) =.600_r8*rxt(k,377)*y(k,190)*y(k,98)
     517             :          loss(k,119) = (rxt(k,368)* y(k,118) +rxt(k,375)* y(k,122) +rxt(k,376) &
     518   141111616 :                  * y(k,190) + het_rates(k,93))* y(k,93)
     519   141111616 :          prod(k,119) = 0._r8
     520   141111616 :          loss(k,94) = (rxt(k,366)* y(k,190) + rxt(k,473) + het_rates(k,94))* y(k,94)
     521   141111616 :          prod(k,94) =.080_r8*rxt(k,358)*y(k,178)*y(k,116)
     522   141111616 :          loss(k,89) = (rxt(k,367)* y(k,190) + rxt(k,474) + het_rates(k,95))* y(k,95)
     523   141111616 :          prod(k,89) =.080_r8*rxt(k,364)*y(k,179)*y(k,116)
     524             :          loss(k,144) = (rxt(k,372)* y(k,116) +rxt(k,373)* y(k,118) +rxt(k,369) &
     525             :                  * y(k,170) +rxt(k,370)* y(k,171) +rxt(k,371)* y(k,176) &
     526   141111616 :                   + het_rates(k,96))* y(k,96)
     527   141111616 :          prod(k,144) =rxt(k,368)*y(k,118)*y(k,93)
     528   141111616 :          loss(k,63) = (rxt(k,374)* y(k,190) + rxt(k,48) + het_rates(k,97))* y(k,97)
     529   141111616 :          prod(k,63) =rxt(k,371)*y(k,176)*y(k,96)
     530   141111616 :          loss(k,107) = (rxt(k,377)* y(k,190) + rxt(k,49) + het_rates(k,98))* y(k,98)
     531             :          prod(k,107) = (rxt(k,357)*y(k,178) +rxt(k,362)*y(k,179))*y(k,176) +rxt(k,48) &
     532   141111616 :                  *y(k,97)
     533   141111616 :          loss(k,12) = (rxt(k,499)* y(k,190) + het_rates(k,99))* y(k,99)
     534   141111616 :          prod(k,12) = 0._r8
     535             :          loss(k,145) = (rxt(k,328)* y(k,122) +rxt(k,329)* y(k,190) + rxt(k,50) &
     536   141111616 :                   + rxt(k,51) + het_rates(k,100))* y(k,100)
     537             :          prod(k,145) = (.390_r8*rxt(k,355)*y(k,170) +.310_r8*rxt(k,356)*y(k,171) + &
     538             :                  .360_r8*rxt(k,358)*y(k,116) +.400_r8*rxt(k,359)*y(k,118))*y(k,178) &
     539   141111616 :                   +.300_r8*rxt(k,375)*y(k,122)*y(k,93) +.288_r8*rxt(k,49)*y(k,98)
     540   141111616 :          loss(k,54) = (rxt(k,330)* y(k,190) + het_rates(k,101))* y(k,101)
     541   141111616 :          prod(k,54) =rxt(k,324)*y(k,182)*y(k,176)
     542   141111616 :          loss(k,83) = (rxt(k,339)* y(k,190) + rxt(k,52) + het_rates(k,102))* y(k,102)
     543             :          prod(k,83) =.800_r8*rxt(k,19)*y(k,1) +.800_r8*rxt(k,20)*y(k,2) &
     544   141111616 :                   +.800_r8*rxt(k,348)*y(k,162)*y(k,116)
     545   141111616 :          loss(k,55) = (rxt(k,340)* y(k,190) + rxt(k,53) + het_rates(k,103))* y(k,103)
     546   141111616 :          prod(k,55) =.800_r8*rxt(k,337)*y(k,186)*y(k,176)
     547             :          loss(k,92) = (rxt(k,341)* y(k,190) + rxt(k,54) + rxt(k,345) &
     548   141111616 :                   + het_rates(k,104))* y(k,104)
     549   141111616 :          prod(k,92) =rxt(k,344)*y(k,184)*y(k,117)
     550             :          loss(k,125) = (rxt(k,432)* y(k,118) +rxt(k,433)* y(k,122) +rxt(k,434) &
     551   141111616 :                  * y(k,190) + het_rates(k,105))* y(k,105)
     552   141111616 :          prod(k,125) = 0._r8
     553             :          loss(k,149) = (rxt(k,342)* y(k,122) +rxt(k,343)* y(k,190) + rxt(k,55) &
     554   141111616 :                   + het_rates(k,106))* y(k,106)
     555             :          prod(k,149) = (.610_r8*rxt(k,355)*y(k,170) +.440_r8*rxt(k,356)*y(k,171) + &
     556             :                  .560_r8*rxt(k,358)*y(k,116) +.600_r8*rxt(k,359)*y(k,118))*y(k,178) &
     557   141111616 :                   +.200_r8*rxt(k,375)*y(k,122)*y(k,93) +.402_r8*rxt(k,49)*y(k,98)
     558             :          loss(k,64) = (rxt(k,140)* y(k,116) + (rxt(k,141) +rxt(k,142) +rxt(k,143)) &
     559             :                  * y(k,117) +rxt(k,152)* y(k,190) + rxt(k,144) + het_rates(k,107)) &
     560   141111616 :                  * y(k,107)
     561   141111616 :          prod(k,64) =rxt(k,15)*y(k,116)
     562             :          loss(k,48) = ( + rxt(k,13) + rxt(k,14) + rxt(k,163) + rxt(k,475) + rxt(k,512) &
     563   141111616 :                   + rxt(k,515) + rxt(k,526) + het_rates(k,109))* y(k,109)
     564   141111616 :          prod(k,48) =rxt(k,159)*y(k,118)*y(k,117)
     565   141111616 :          loss(k,65) = (rxt(k,378)* y(k,190) + rxt(k,476) + het_rates(k,110))* y(k,110)
     566   141111616 :          prod(k,65) =.200_r8*rxt(k,370)*y(k,171)*y(k,96)
     567             :          loss(k,132) = (rxt(k,379)* y(k,190) + rxt(k,56) + rxt(k,477) &
     568   141111616 :                   + het_rates(k,111))* y(k,111)
     569             :          prod(k,132) = (rxt(k,369)*y(k,170) +.800_r8*rxt(k,370)*y(k,171) + &
     570   141111616 :                  rxt(k,372)*y(k,116) +rxt(k,373)*y(k,118))*y(k,96)
     571   141111616 :          loss(k,18) = (rxt(k,469)* y(k,190) + het_rates(k,112))* y(k,112)
     572   141111616 :          prod(k,18) = 0._r8
     573   141111616 :          loss(k,1) = ( + rxt(k,478) + het_rates(k,113))* y(k,113)
     574   141111616 :          prod(k,1) = 0._r8
     575             :          loss(k,165) = (rxt(k,208)* y(k,17) +rxt(k,176)* y(k,57) +rxt(k,372)* y(k,96) &
     576             :                   +rxt(k,140)* y(k,107) +rxt(k,149)* y(k,118) +rxt(k,155)* y(k,121) &
     577             :                   +rxt(k,154)* y(k,122) +rxt(k,387)* y(k,161) + (rxt(k,348) + &
     578             :                  rxt(k,349))* y(k,162) +rxt(k,390)* y(k,164) +rxt(k,395)* y(k,166) &
     579             :                   +rxt(k,273)* y(k,167) +rxt(k,301)* y(k,168) +rxt(k,397)* y(k,169) &
     580             :                   +rxt(k,284)* y(k,170) +rxt(k,251)* y(k,171) +rxt(k,401)* y(k,172) &
     581             :                   + (rxt(k,319) +rxt(k,320))* y(k,173) +rxt(k,288)* y(k,175) &
     582             :                   +rxt(k,153)* y(k,176) +rxt(k,260)* y(k,177) +rxt(k,358)* y(k,178) &
     583             :                   +rxt(k,364)* y(k,179) + (rxt(k,326) +rxt(k,327))* y(k,182) &
     584             :                   +rxt(k,404)* y(k,183) +rxt(k,335)* y(k,184) +rxt(k,407)* y(k,185) &
     585             :                   +rxt(k,338)* y(k,186) +rxt(k,437)* y(k,188) +rxt(k,410)* y(k,191) &
     586             :                   +rxt(k,309)* y(k,192) +rxt(k,313)* y(k,193) +rxt(k,442)* y(k,194) &
     587             :                   +rxt(k,447)* y(k,195) +rxt(k,417)* y(k,196) +rxt(k,383)* y(k,198) &
     588             :                   +rxt(k,423)* y(k,199) +rxt(k,426)* y(k,201) + rxt(k,15) &
     589   141111616 :                   + het_rates(k,116))* y(k,116)
     590             :          prod(k,165) = (rxt(k,16) +.500_r8*rxt(k,479) +2.000_r8*rxt(k,142)*y(k,107) + &
     591             :                  rxt(k,145)*y(k,121) +rxt(k,461)*y(k,136))*y(k,117) + (rxt(k,144) + &
     592             :                  rxt(k,152)*y(k,190))*y(k,107) +2.000_r8*rxt(k,156)*y(k,189)*y(k,108) &
     593   141111616 :                   +rxt(k,14)*y(k,109) +rxt(k,17)*y(k,118)
     594             :          loss(k,167) = (rxt(k,209)* y(k,17) +rxt(k,178)* y(k,57) + (rxt(k,141) + &
     595             :                  rxt(k,142) +rxt(k,143))* y(k,107) +rxt(k,159)* y(k,118) &
     596             :                   + (rxt(k,145) +rxt(k,147))* y(k,121) +rxt(k,146)* y(k,122) &
     597             :                   +rxt(k,412)* y(k,129) +rxt(k,461)* y(k,136) +rxt(k,415)* y(k,161) &
     598             :                   +rxt(k,295)* y(k,170) +rxt(k,402)* y(k,172) +rxt(k,158)* y(k,176) &
     599             :                   +rxt(k,405)* y(k,183) +rxt(k,344)* y(k,184) +rxt(k,408)* y(k,185) &
     600             :                   +rxt(k,160)* y(k,190) + rxt(k,16) + rxt(k,479) + het_rates(k,117)) &
     601   141111616 :                  * y(k,117)
     602             :          prod(k,167) = (2.000_r8*rxt(k,149)*y(k,118) +rxt(k,153)*y(k,176) + &
     603             :                  rxt(k,154)*y(k,122) +rxt(k,155)*y(k,121) +rxt(k,176)*y(k,57) + &
     604             :                  rxt(k,208)*y(k,17) +rxt(k,251)*y(k,171) +rxt(k,260)*y(k,177) + &
     605             :                  rxt(k,273)*y(k,167) +rxt(k,284)*y(k,170) +rxt(k,288)*y(k,175) + &
     606             :                  rxt(k,301)*y(k,168) +rxt(k,309)*y(k,192) +rxt(k,313)*y(k,193) + &
     607             :                  rxt(k,319)*y(k,173) +rxt(k,326)*y(k,182) +rxt(k,335)*y(k,184) + &
     608             :                  rxt(k,338)*y(k,186) +rxt(k,348)*y(k,162) + &
     609             :                  .920_r8*rxt(k,358)*y(k,178) +.920_r8*rxt(k,364)*y(k,179) + &
     610             :                  rxt(k,372)*y(k,96) +rxt(k,383)*y(k,198) +rxt(k,387)*y(k,161) + &
     611             :                  rxt(k,390)*y(k,164) +rxt(k,395)*y(k,166) +rxt(k,397)*y(k,169) + &
     612             :                  rxt(k,401)*y(k,172) +rxt(k,404)*y(k,183) +rxt(k,407)*y(k,185) + &
     613             :                  rxt(k,410)*y(k,191) +rxt(k,417)*y(k,196) +rxt(k,423)*y(k,199) + &
     614             :                  rxt(k,426)*y(k,201) +1.600_r8*rxt(k,437)*y(k,188) + &
     615             :                  .900_r8*rxt(k,442)*y(k,194) +.800_r8*rxt(k,447)*y(k,195))*y(k,116) &
     616             :                   + (rxt(k,18) +rxt(k,148)*y(k,176) +rxt(k,150)*y(k,121) + &
     617             :                  rxt(k,151)*y(k,190) +rxt(k,317)*y(k,14) +rxt(k,325)*y(k,182) + &
     618             :                  rxt(k,336)*y(k,184) +rxt(k,359)*y(k,178) +rxt(k,365)*y(k,179) + &
     619             :                  rxt(k,373)*y(k,96) +rxt(k,384)*y(k,198) + &
     620             :                  2.000_r8*rxt(k,438)*y(k,188))*y(k,118) + (rxt(k,139)*y(k,85) + &
     621             :                  rxt(k,307)*y(k,119) +rxt(k,346)*y(k,1) +.700_r8*rxt(k,366)*y(k,94) + &
     622             :                  rxt(k,444)*y(k,148))*y(k,190) + (rxt(k,11) +rxt(k,162))*y(k,85) &
     623             :                   + (rxt(k,54) +rxt(k,345))*y(k,104) + (rxt(k,13) +rxt(k,163)) &
     624             :                  *y(k,109) + (.600_r8*rxt(k,60) +rxt(k,296))*y(k,127) +rxt(k,19) &
     625             :                  *y(k,1) +rxt(k,76)*y(k,18) +rxt(k,95)*y(k,58) +rxt(k,9)*y(k,84) &
     626             :                   +rxt(k,45)*y(k,88) +rxt(k,48)*y(k,97) +rxt(k,56)*y(k,111) +rxt(k,57) &
     627             :                  *y(k,119) +rxt(k,58)*y(k,120) +rxt(k,59)*y(k,126) +rxt(k,420) &
     628   141111616 :                  *y(k,128) +rxt(k,66)*y(k,148) +.500_r8*rxt(k,435)*y(k,188)*y(k,171)
     629             :          loss(k,170) = (rxt(k,429)* y(k,4) +rxt(k,317)* y(k,14) +rxt(k,297)* y(k,27) &
     630             :                   +rxt(k,245)* y(k,40) +rxt(k,278)* y(k,43) +rxt(k,304)* y(k,47) &
     631             :                   +rxt(k,452)* y(k,65) +rxt(k,368)* y(k,93) +rxt(k,373)* y(k,96) &
     632             :                   +rxt(k,432)* y(k,105) +rxt(k,149)* y(k,116) +rxt(k,159)* y(k,117) &
     633             :                   +rxt(k,150)* y(k,121) +rxt(k,449)* y(k,150) +rxt(k,148)* y(k,176) &
     634             :                   +rxt(k,359)* y(k,178) +rxt(k,365)* y(k,179) +rxt(k,325)* y(k,182) &
     635             :                   +rxt(k,336)* y(k,184) +rxt(k,438)* y(k,188) +rxt(k,151)* y(k,190) &
     636             :                   +rxt(k,384)* y(k,198) + rxt(k,17) + rxt(k,18) + rxt(k,480) &
     637   141111616 :                   + het_rates(k,118))* y(k,118)
     638             :          prod(k,170) = (rxt(k,94) +rxt(k,177)*y(k,54) +rxt(k,179)*y(k,121) + &
     639             :                  rxt(k,180)*y(k,190))*y(k,58) + (rxt(k,13) +rxt(k,14) +rxt(k,163)) &
     640             :                  *y(k,109) + (rxt(k,161)*y(k,84) +rxt(k,293)*y(k,127) + &
     641             :                  .500_r8*rxt(k,341)*y(k,104))*y(k,190) + (rxt(k,77) + &
     642             :                  rxt(k,210)*y(k,121))*y(k,18) + (rxt(k,146)*y(k,122) + &
     643             :                  rxt(k,147)*y(k,121))*y(k,117) +rxt(k,224)*y(k,84)*y(k,68) +rxt(k,10) &
     644   141111616 :                  *y(k,85) +.400_r8*rxt(k,60)*y(k,127)
     645   141111616 :          loss(k,121) = (rxt(k,307)* y(k,190) + rxt(k,57) + het_rates(k,119))* y(k,119)
     646             :          prod(k,121) = (.500_r8*rxt(k,367)*y(k,95) +rxt(k,374)*y(k,97) + &
     647             :                  rxt(k,378)*y(k,110) +rxt(k,379)*y(k,111))*y(k,190) &
     648   141111616 :                   +rxt(k,297)*y(k,118)*y(k,27)
     649             :          loss(k,66) = (rxt(k,439)* y(k,190) + rxt(k,58) + rxt(k,481) &
     650   141111616 :                   + het_rates(k,120))* y(k,120)
     651   141111616 :          prod(k,66) =rxt(k,436)*y(k,188)*y(k,176)
     652             :          loss(k,162) = (rxt(k,211)* y(k,17) +rxt(k,210)* y(k,18) +rxt(k,246)* y(k,40) &
     653             :                   +rxt(k,181)* y(k,57) +rxt(k,179)* y(k,58) +rxt(k,122)* y(k,72) &
     654             :                   +rxt(k,123)* y(k,74) +rxt(k,213)* y(k,76) +rxt(k,184)* y(k,80) &
     655             :                   +rxt(k,215)* y(k,86) +rxt(k,187)* y(k,87) +rxt(k,155)* y(k,116) &
     656             :                   + (rxt(k,145) +rxt(k,147))* y(k,117) +rxt(k,150)* y(k,118) &
     657             :                   + 2._r8*rxt(k,120)* y(k,121) +rxt(k,119)* y(k,122) +rxt(k,454) &
     658             :                  * y(k,125) +rxt(k,128)* y(k,176) +rxt(k,134)* y(k,190) + rxt(k,121) &
     659   141111616 :                   + het_rates(k,121))* y(k,121)
     660             :          prod(k,162) = (rxt(k,144) +rxt(k,140)*y(k,116) +rxt(k,141)*y(k,117))*y(k,107) &
     661             :                   + (rxt(k,111) +rxt(k,462))*y(k,136) + (rxt(k,116) +rxt(k,117)) &
     662             :                  *y(k,189) +rxt(k,75)*y(k,17) +rxt(k,93)*y(k,57) +rxt(k,126)*y(k,176) &
     663             :                  *y(k,71) +rxt(k,14)*y(k,109) +rxt(k,15)*y(k,116) +rxt(k,16)*y(k,117) &
     664             :                   +rxt(k,18)*y(k,118) +rxt(k,8)*y(k,122) +rxt(k,107)*y(k,124) &
     665             :                   +rxt(k,456)*y(k,134) +rxt(k,112)*y(k,137) +rxt(k,113)*y(k,138) &
     666   141111616 :                   +rxt(k,136)*y(k,190)*y(k,190) +rxt(k,3)*y(k,202)
     667             :          loss(k,166) = (rxt(k,430)* y(k,4) +rxt(k,202)* y(k,15) +rxt(k,269)* y(k,23) &
     668             :                   +rxt(k,298)* y(k,27) +rxt(k,170)* y(k,54) +rxt(k,130)* y(k,71) &
     669             :                   +rxt(k,375)* y(k,93) +rxt(k,328)* y(k,100) +rxt(k,433)* y(k,105) &
     670             :                   +rxt(k,342)* y(k,106) +rxt(k,154)* y(k,116) +rxt(k,146)* y(k,117) &
     671             :                   +rxt(k,119)* y(k,121) +rxt(k,413)* y(k,129) +rxt(k,457)* y(k,134) &
     672             :                   +rxt(k,463)* y(k,136) +rxt(k,129)* y(k,176) +rxt(k,118)* y(k,189) &
     673             :                   +rxt(k,135)* y(k,190) + rxt(k,7) + rxt(k,8) + het_rates(k,122)) &
     674   141111616 :                  * y(k,122)
     675             :          prod(k,166) = (.150_r8*rxt(k,283)*y(k,170) +.150_r8*rxt(k,333)*y(k,184)) &
     676   141111616 :                  *y(k,176) +rxt(k,121)*y(k,121)
     677   141111616 :          loss(k,56) = (rxt(k,464)* y(k,136) + rxt(k,107) + het_rates(k,124))* y(k,124)
     678   141111616 :          prod(k,56) = (rxt(k,174)*y(k,57) +rxt(k,204)*y(k,17))*y(k,57)
     679             :          loss(k,60) = (rxt(k,454)* y(k,121) +rxt(k,455)* y(k,190) + rxt(k,110) &
     680   141111616 :                   + het_rates(k,125))* y(k,125)
     681   141111616 :          prod(k,60) = 0._r8
     682   141111616 :          loss(k,41) = ( + rxt(k,59) + rxt(k,482) + het_rates(k,126))* y(k,126)
     683   141111616 :          prod(k,41) =rxt(k,321)*y(k,190)*y(k,88) +.100_r8*rxt(k,442)*y(k,194)*y(k,116)
     684             :          loss(k,77) = (rxt(k,293)* y(k,190) + rxt(k,60) + rxt(k,296) &
     685   141111616 :                   + het_rates(k,127))* y(k,127)
     686   141111616 :          prod(k,77) =rxt(k,295)*y(k,170)*y(k,117)
     687   141111616 :          loss(k,24) = ( + rxt(k,420) + het_rates(k,128))* y(k,128)
     688   141111616 :          prod(k,24) =rxt(k,415)*y(k,161)*y(k,117)
     689             :          loss(k,78) = (rxt(k,412)* y(k,117) +rxt(k,413)* y(k,122) + het_rates(k,129)) &
     690   141111616 :                  * y(k,129)
     691             :          prod(k,78) = (.070_r8*rxt(k,399)*y(k,64) +.060_r8*rxt(k,411)*y(k,130) + &
     692             :                  .070_r8*rxt(k,427)*y(k,157))*y(k,190) +rxt(k,31)*y(k,30) &
     693   141111616 :                   +rxt(k,397)*y(k,169)*y(k,116)
     694   141111616 :          loss(k,28) = (rxt(k,411)* y(k,190) + het_rates(k,130))* y(k,130)
     695   141111616 :          prod(k,28) =.530_r8*rxt(k,388)*y(k,190)*y(k,5)
     696   141111616 :          loss(k,57) = (rxt(k,414)* y(k,190) + rxt(k,61) + het_rates(k,131))* y(k,131)
     697   141111616 :          prod(k,57) =rxt(k,409)*y(k,191)*y(k,176)
     698   141111616 :          loss(k,87) = (rxt(k,310)* y(k,190) + rxt(k,62) + het_rates(k,132))* y(k,132)
     699   141111616 :          prod(k,87) =rxt(k,308)*y(k,192)*y(k,176)
     700   141111616 :          loss(k,68) = (rxt(k,314)* y(k,190) + rxt(k,63) + het_rates(k,133))* y(k,133)
     701   141111616 :          prod(k,68) =.850_r8*rxt(k,312)*y(k,193)*y(k,176)
     702             :          loss(k,82) = (rxt(k,457)* y(k,122) +rxt(k,460)* y(k,190) + rxt(k,456) &
     703   141111616 :                   + het_rates(k,134))* y(k,134)
     704   141111616 :          prod(k,82) =rxt(k,110)*y(k,125) +rxt(k,111)*y(k,136)
     705             :          loss(k,147) = (rxt(k,458)* y(k,17) +rxt(k,459)* y(k,57) +rxt(k,461)* y(k,117) &
     706             :                   +rxt(k,463)* y(k,122) +rxt(k,464)* y(k,124) +rxt(k,465)* y(k,190) &
     707   141111616 :                   + rxt(k,111) + rxt(k,462) + het_rates(k,136))* y(k,136)
     708             :          prod(k,147) = (rxt(k,456) +rxt(k,457)*y(k,122) +rxt(k,460)*y(k,190))*y(k,134) &
     709   141111616 :                   +rxt(k,454)*y(k,125)*y(k,121) +rxt(k,112)*y(k,137)
     710             :          loss(k,120) = (rxt(k,467)* y(k,190) + rxt(k,112) + het_rates(k,137)) &
     711   141111616 :                  * y(k,137)
     712             :          prod(k,120) = (rxt(k,462) +rxt(k,458)*y(k,17) +rxt(k,459)*y(k,57) + &
     713             :                  rxt(k,461)*y(k,117) +rxt(k,463)*y(k,122) +rxt(k,464)*y(k,124) + &
     714             :                  rxt(k,465)*y(k,190))*y(k,136) + (rxt(k,452)*y(k,118) + &
     715             :                  rxt(k,453)*y(k,190) +.500_r8*rxt(k,466)*y(k,190))*y(k,65) &
     716   141111616 :                   +rxt(k,455)*y(k,190)*y(k,125) +rxt(k,113)*y(k,138)
     717   141111616 :          loss(k,45) = (rxt(k,468)* y(k,202) + rxt(k,113) + het_rates(k,138))* y(k,138)
     718   141111616 :          prod(k,45) =rxt(k,109)*y(k,75) +rxt(k,467)*y(k,190)*y(k,137)
     719   141111616 :          loss(k,2) = ( + het_rates(k,139))* y(k,139)
     720             :          prod(k,2) = (.1279005_r8*rxt(k,486)*y(k,163) + &
     721             :                  .0097005_r8*rxt(k,491)*y(k,165) +.0003005_r8*rxt(k,494)*y(k,180) + &
     722             :                  .1056005_r8*rxt(k,498)*y(k,181) +.0245005_r8*rxt(k,502)*y(k,187) + &
     723             :                  .0154005_r8*rxt(k,508)*y(k,197) +.0063005_r8*rxt(k,511)*y(k,200)) &
     724             :                  *y(k,116) + (.2202005_r8*rxt(k,485)*y(k,163) + &
     725             :                  .0023005_r8*rxt(k,490)*y(k,165) +.0031005_r8*rxt(k,493)*y(k,180) + &
     726             :                  .2381005_r8*rxt(k,497)*y(k,181) +.0508005_r8*rxt(k,501)*y(k,187) + &
     727             :                  .1364005_r8*rxt(k,507)*y(k,197) +.1677005_r8*rxt(k,510)*y(k,200)) &
     728             :                  *y(k,176) + (.2202005_r8*rxt(k,487)*y(k,4) + &
     729             :                  .0508005_r8*rxt(k,503)*y(k,105))*y(k,122) +rxt(k,470)*y(k,70) &
     730   141111616 :                   +.5931005_r8*rxt(k,505)*y(k,190)*y(k,145)
     731   141111616 :          loss(k,3) = ( + het_rates(k,140))* y(k,140)
     732             :          prod(k,3) = (.1792005_r8*rxt(k,486)*y(k,163) + &
     733             :                  .0034005_r8*rxt(k,491)*y(k,165) +.0003005_r8*rxt(k,494)*y(k,180) + &
     734             :                  .1026005_r8*rxt(k,498)*y(k,181) +.0082005_r8*rxt(k,502)*y(k,187) + &
     735             :                  .0452005_r8*rxt(k,508)*y(k,197) +.0237005_r8*rxt(k,511)*y(k,200)) &
     736             :                  *y(k,116) + (.2067005_r8*rxt(k,485)*y(k,163) + &
     737             :                  .0008005_r8*rxt(k,490)*y(k,165) +.0035005_r8*rxt(k,493)*y(k,180) + &
     738             :                  .1308005_r8*rxt(k,497)*y(k,181) +.1149005_r8*rxt(k,501)*y(k,187) + &
     739             :                  .0101005_r8*rxt(k,507)*y(k,197) +.0174005_r8*rxt(k,510)*y(k,200)) &
     740             :                  *y(k,176) + (.2067005_r8*rxt(k,487)*y(k,4) + &
     741             :                  .1149005_r8*rxt(k,503)*y(k,105))*y(k,122) &
     742   141111616 :                   +.1534005_r8*rxt(k,505)*y(k,190)*y(k,145)
     743   141111616 :          loss(k,4) = ( + het_rates(k,141))* y(k,141)
     744             :          prod(k,4) = (.0676005_r8*rxt(k,486)*y(k,163) + &
     745             :                  .1579005_r8*rxt(k,491)*y(k,165) +.0073005_r8*rxt(k,494)*y(k,180) + &
     746             :                  .0521005_r8*rxt(k,498)*y(k,181) +.0772005_r8*rxt(k,502)*y(k,187) + &
     747             :                  .0966005_r8*rxt(k,508)*y(k,197) +.0025005_r8*rxt(k,511)*y(k,200)) &
     748             :                  *y(k,116) + (.0653005_r8*rxt(k,485)*y(k,163) + &
     749             :                  .0843005_r8*rxt(k,490)*y(k,165) +.0003005_r8*rxt(k,493)*y(k,180) + &
     750             :                  .0348005_r8*rxt(k,497)*y(k,181) +.0348005_r8*rxt(k,501)*y(k,187) + &
     751             :                  .0763005_r8*rxt(k,507)*y(k,197) +.086_r8*rxt(k,510)*y(k,200)) &
     752             :                  *y(k,176) + (.0653005_r8*rxt(k,487)*y(k,4) + &
     753             :                  .0348005_r8*rxt(k,503)*y(k,105))*y(k,122) &
     754   141111616 :                   +.0459005_r8*rxt(k,505)*y(k,190)*y(k,145)
     755   141111616 :          loss(k,5) = ( + het_rates(k,142))* y(k,142)
     756             :          prod(k,5) = (.079_r8*rxt(k,486)*y(k,163) +.0059005_r8*rxt(k,491)*y(k,165) + &
     757             :                  .0057005_r8*rxt(k,494)*y(k,180) +.0143005_r8*rxt(k,498)*y(k,181) + &
     758             :                  .0332005_r8*rxt(k,502)*y(k,187) +.0073005_r8*rxt(k,508)*y(k,197) + &
     759             :                  .011_r8*rxt(k,511)*y(k,200))*y(k,116) &
     760             :                   + (.1284005_r8*rxt(k,485)*y(k,163) + &
     761             :                  .0443005_r8*rxt(k,490)*y(k,165) +.0271005_r8*rxt(k,493)*y(k,180) + &
     762             :                  .0076005_r8*rxt(k,497)*y(k,181) +.0554005_r8*rxt(k,501)*y(k,187) + &
     763             :                  .2157005_r8*rxt(k,507)*y(k,197) +.0512005_r8*rxt(k,510)*y(k,200)) &
     764             :                  *y(k,176) + (.1749305_r8*rxt(k,484)*y(k,4) + &
     765             :                  .0590245_r8*rxt(k,492)*y(k,93) +.1749305_r8*rxt(k,500)*y(k,105)) &
     766             :                  *y(k,118) + (.1284005_r8*rxt(k,487)*y(k,4) + &
     767             :                  .0033005_r8*rxt(k,495)*y(k,93) +.0554005_r8*rxt(k,503)*y(k,105)) &
     768   141111616 :                  *y(k,122) +.0085005_r8*rxt(k,505)*y(k,190)*y(k,145)
     769   141111616 :          loss(k,6) = ( + het_rates(k,143))* y(k,143)
     770             :          prod(k,6) = (.1254005_r8*rxt(k,486)*y(k,163) + &
     771             :                  .0536005_r8*rxt(k,491)*y(k,165) +.0623005_r8*rxt(k,494)*y(k,180) + &
     772             :                  .0166005_r8*rxt(k,498)*y(k,181) +.130_r8*rxt(k,502)*y(k,187) + &
     773             :                  .238_r8*rxt(k,508)*y(k,197) +.1185005_r8*rxt(k,511)*y(k,200)) &
     774             :                  *y(k,116) + (.114_r8*rxt(k,485)*y(k,163) + &
     775             :                  .1621005_r8*rxt(k,490)*y(k,165) +.0474005_r8*rxt(k,493)*y(k,180) + &
     776             :                  .0113005_r8*rxt(k,497)*y(k,181) +.1278005_r8*rxt(k,501)*y(k,187) + &
     777             :                  .0738005_r8*rxt(k,507)*y(k,197) +.1598005_r8*rxt(k,510)*y(k,200)) &
     778             :                  *y(k,176) + (.5901905_r8*rxt(k,484)*y(k,4) + &
     779             :                  .0250245_r8*rxt(k,492)*y(k,93) +.5901905_r8*rxt(k,500)*y(k,105)) &
     780             :                  *y(k,118) + (.114_r8*rxt(k,487)*y(k,4) + &
     781             :                  .1278005_r8*rxt(k,503)*y(k,105))*y(k,122) &
     782   141111616 :                   +.0128005_r8*rxt(k,505)*y(k,190)*y(k,145)
     783   141111616 :          loss(k,7) = (rxt(k,505)* y(k,190) + het_rates(k,145))* y(k,145)
     784   141111616 :          prod(k,7) = 0._r8
     785   141111616 :          loss(k,33) = ( + rxt(k,64) + het_rates(k,146))* y(k,146)
     786             :          prod(k,33) = (.100_r8*rxt(k,419)*y(k,153) +.230_r8*rxt(k,421)*y(k,155)) &
     787   141111616 :                  *y(k,190)
     788   141111616 :          loss(k,95) = (rxt(k,443)* y(k,190) + rxt(k,65) + het_rates(k,147))* y(k,147)
     789   141111616 :          prod(k,95) =rxt(k,441)*y(k,194)*y(k,176)
     790             :          loss(k,98) = (rxt(k,444)* y(k,190) + rxt(k,66) + rxt(k,483) &
     791   141111616 :                   + het_rates(k,148))* y(k,148)
     792             :          prod(k,98) = (.200_r8*rxt(k,437)*y(k,188) +.200_r8*rxt(k,447)*y(k,195)) &
     793   141111616 :                  *y(k,116) +.500_r8*rxt(k,435)*y(k,188)*y(k,171)
     794   141111616 :          loss(k,79) = (rxt(k,448)* y(k,190) + rxt(k,67) + het_rates(k,149))* y(k,149)
     795   141111616 :          prod(k,79) =rxt(k,446)*y(k,195)*y(k,176)
     796             :          loss(k,130) = (rxt(k,449)* y(k,118) +rxt(k,450)* y(k,190) + rxt(k,68) &
     797   141111616 :                   + het_rates(k,150))* y(k,150)
     798             :          prod(k,130) = (.500_r8*rxt(k,435)*y(k,171) +.800_r8*rxt(k,437)*y(k,116) + &
     799             :                  rxt(k,438)*y(k,118))*y(k,188) + (.330_r8*rxt(k,430)*y(k,4) + &
     800             :                  .330_r8*rxt(k,433)*y(k,105))*y(k,122) + (rxt(k,66) + &
     801             :                  rxt(k,444)*y(k,190))*y(k,148) + (rxt(k,445)*y(k,171) + &
     802             :                  .800_r8*rxt(k,447)*y(k,116))*y(k,195) +rxt(k,58)*y(k,120) +rxt(k,67) &
     803   141111616 :                  *y(k,149)
     804   141111616 :          loss(k,133) = (rxt(k,451)* y(k,190) + rxt(k,69) + het_rates(k,151))* y(k,151)
     805             :          prod(k,133) = (.300_r8*rxt(k,430)*y(k,4) +.300_r8*rxt(k,433)*y(k,105)) &
     806             :                  *y(k,122) + (rxt(k,440)*y(k,171) +.900_r8*rxt(k,442)*y(k,116)) &
     807   141111616 :                  *y(k,194) +rxt(k,65)*y(k,147) +rxt(k,68)*y(k,150)
     808   141111616 :          loss(k,96) = (rxt(k,418)* y(k,190) + rxt(k,70) + het_rates(k,152))* y(k,152)
     809   141111616 :          prod(k,96) =rxt(k,416)*y(k,196)*y(k,176)
     810   141111616 :          loss(k,31) = (rxt(k,419)* y(k,190) + het_rates(k,153))* y(k,153)
     811   141111616 :          prod(k,31) = 0._r8
     812   141111616 :          loss(k,34) = (rxt(k,385)* y(k,190) + rxt(k,71) + het_rates(k,154))* y(k,154)
     813   141111616 :          prod(k,34) =rxt(k,382)*y(k,198)*y(k,176)
     814   141111616 :          loss(k,35) = (rxt(k,421)* y(k,190) + het_rates(k,155))* y(k,155)
     815   141111616 :          prod(k,35) = 0._r8
     816   141111616 :          loss(k,103) = (rxt(k,424)* y(k,190) + rxt(k,72) + het_rates(k,156))* y(k,156)
     817   141111616 :          prod(k,103) =rxt(k,422)*y(k,199)*y(k,176)
     818   141111616 :          loss(k,36) = (rxt(k,427)* y(k,190) + het_rates(k,157))* y(k,157)
     819   141111616 :          prod(k,36) =.150_r8*rxt(k,421)*y(k,190)*y(k,155)
     820   141111616 :          loss(k,72) = (rxt(k,428)* y(k,190) + rxt(k,73) + het_rates(k,158))* y(k,158)
     821   141111616 :          prod(k,72) =rxt(k,425)*y(k,201)*y(k,176)
     822             :          loss(k,85) = (rxt(k,387)* y(k,116) +rxt(k,415)* y(k,117) +rxt(k,386) &
     823   141111616 :                  * y(k,176) + het_rates(k,161))* y(k,161)
     824   141111616 :          prod(k,85) =rxt(k,392)*y(k,190)*y(k,20) +rxt(k,420)*y(k,128)
     825             :          loss(k,126) = ((rxt(k,348) +rxt(k,349))* y(k,116) +rxt(k,347)* y(k,176) &
     826   141111616 :                   + het_rates(k,162))* y(k,162)
     827   141111616 :          prod(k,126) = (rxt(k,350)*y(k,2) +rxt(k,351)*y(k,13))*y(k,190)
     828             :          loss(k,8) = (rxt(k,486)* y(k,116) +rxt(k,485)* y(k,176) + het_rates(k,163)) &
     829   141111616 :                  * y(k,163)
     830   141111616 :          prod(k,8) =rxt(k,488)*y(k,190)*y(k,4)
     831             :          loss(k,80) = (rxt(k,390)* y(k,116) +rxt(k,389)* y(k,176) + het_rates(k,164)) &
     832   141111616 :                  * y(k,164)
     833   141111616 :          prod(k,80) = (.350_r8*rxt(k,388)*y(k,5) +rxt(k,391)*y(k,6))*y(k,190)
     834             :          loss(k,9) = (rxt(k,491)* y(k,116) +rxt(k,490)* y(k,176) + het_rates(k,165)) &
     835   141111616 :                  * y(k,165)
     836   141111616 :          prod(k,9) =rxt(k,489)*y(k,190)*y(k,5)
     837             :          loss(k,73) = (rxt(k,395)* y(k,116) +rxt(k,393)* y(k,176) + het_rates(k,166)) &
     838   141111616 :                  * y(k,166)
     839             :          prod(k,73) = (rxt(k,394)*y(k,21) +.070_r8*rxt(k,419)*y(k,153) + &
     840   141111616 :                  .060_r8*rxt(k,421)*y(k,155))*y(k,190)
     841             :          loss(k,117) = (rxt(k,273)* y(k,116) + 2._r8*rxt(k,270)* y(k,167) +rxt(k,271) &
     842   141111616 :                  * y(k,171) +rxt(k,272)* y(k,176) + het_rates(k,167))* y(k,167)
     843             :          prod(k,117) = (rxt(k,276)*y(k,54) +rxt(k,277)*y(k,190))*y(k,26) &
     844   141111616 :                   +.500_r8*rxt(k,275)*y(k,190)*y(k,25) +rxt(k,52)*y(k,102)
     845             :          loss(k,114) = (rxt(k,301)* y(k,116) +rxt(k,299)* y(k,171) +rxt(k,300) &
     846   141111616 :                  * y(k,176) + het_rates(k,168))* y(k,168)
     847   141111616 :          prod(k,114) = (rxt(k,302)*y(k,28) +rxt(k,303)*y(k,29))*y(k,190)
     848             :          loss(k,99) = (rxt(k,397)* y(k,116) +rxt(k,396)* y(k,176) + het_rates(k,169)) &
     849   141111616 :                  * y(k,169)
     850             :          prod(k,99) = (.400_r8*rxt(k,386)*y(k,176) +rxt(k,387)*y(k,116))*y(k,161) &
     851   141111616 :                   +rxt(k,398)*y(k,190)*y(k,30) +rxt(k,413)*y(k,129)*y(k,122)
     852             :          loss(k,153) = (rxt(k,369)* y(k,96) +rxt(k,284)* y(k,116) +rxt(k,295) &
     853             :                  * y(k,117) + 2._r8*rxt(k,281)* y(k,170) +rxt(k,282)* y(k,171) &
     854             :                   +rxt(k,283)* y(k,176) +rxt(k,355)* y(k,178) +rxt(k,360)* y(k,179) &
     855             :                   +rxt(k,322)* y(k,182) +rxt(k,380)* y(k,198) + het_rates(k,170)) &
     856   141111616 :                  * y(k,170)
     857             :          prod(k,153) = (.100_r8*rxt(k,328)*y(k,100) +.280_r8*rxt(k,342)*y(k,106) + &
     858             :                  .080_r8*rxt(k,375)*y(k,93) +.060_r8*rxt(k,430)*y(k,4) + &
     859             :                  .060_r8*rxt(k,433)*y(k,105))*y(k,122) + (rxt(k,332)*y(k,171) + &
     860             :                  .450_r8*rxt(k,333)*y(k,176) +2.000_r8*rxt(k,334)*y(k,184) + &
     861             :                  rxt(k,335)*y(k,116) +rxt(k,336)*y(k,118))*y(k,184) &
     862             :                   + (.530_r8*rxt(k,322)*y(k,170) +.260_r8*rxt(k,323)*y(k,171) + &
     863             :                  .530_r8*rxt(k,325)*y(k,118) +.530_r8*rxt(k,326)*y(k,116))*y(k,182) &
     864             :                   + (rxt(k,279)*y(k,43) +.500_r8*rxt(k,286)*y(k,49) + &
     865             :                  rxt(k,305)*y(k,47) +.650_r8*rxt(k,451)*y(k,151))*y(k,190) &
     866             :                   + (.300_r8*rxt(k,311)*y(k,171) +.150_r8*rxt(k,312)*y(k,176) + &
     867             :                  rxt(k,313)*y(k,116))*y(k,193) + (rxt(k,36) +rxt(k,304)*y(k,118)) &
     868             :                  *y(k,47) + (.600_r8*rxt(k,60) +rxt(k,296))*y(k,127) &
     869             :                   + (.200_r8*rxt(k,337)*y(k,176) +rxt(k,338)*y(k,116))*y(k,186) &
     870             :                   +.130_r8*rxt(k,23)*y(k,8) +rxt(k,27)*y(k,12) +rxt(k,278)*y(k,118) &
     871             :                  *y(k,43) +rxt(k,35)*y(k,46) +.330_r8*rxt(k,45)*y(k,88) +rxt(k,47) &
     872             :                  *y(k,90) +1.340_r8*rxt(k,50)*y(k,100) +rxt(k,52)*y(k,102) +rxt(k,53) &
     873             :                  *y(k,103) +.300_r8*rxt(k,55)*y(k,106) +rxt(k,57)*y(k,119) +rxt(k,63) &
     874   141111616 :                  *y(k,133) +.500_r8*rxt(k,64)*y(k,146) +.650_r8*rxt(k,69)*y(k,151)
     875             :          loss(k,157) = (rxt(k,171)* y(k,57) +rxt(k,370)* y(k,96) +rxt(k,251)* y(k,116) &
     876             :                   +rxt(k,271)* y(k,167) +rxt(k,299)* y(k,168) +rxt(k,282)* y(k,170) &
     877             :                   + 2._r8*(rxt(k,248) +rxt(k,249))* y(k,171) +rxt(k,250)* y(k,176) &
     878             :                   +rxt(k,356)* y(k,178) +rxt(k,361)* y(k,179) +rxt(k,323)* y(k,182) &
     879             :                   +rxt(k,332)* y(k,184) +rxt(k,435)* y(k,188) +rxt(k,311)* y(k,193) &
     880             :                   +rxt(k,440)* y(k,194) +rxt(k,445)* y(k,195) +rxt(k,381)* y(k,198) &
     881   141111616 :                   + het_rates(k,171))* y(k,171)
     882             :          prod(k,157) = (2.000_r8*rxt(k,281)*y(k,170) +.900_r8*rxt(k,282)*y(k,171) + &
     883             :                  .450_r8*rxt(k,283)*y(k,176) +rxt(k,284)*y(k,116) + &
     884             :                  rxt(k,322)*y(k,182) +rxt(k,331)*y(k,184) +rxt(k,355)*y(k,178) + &
     885             :                  rxt(k,360)*y(k,179) +rxt(k,369)*y(k,96) +rxt(k,380)*y(k,198)) &
     886             :                  *y(k,170) + (rxt(k,165)*y(k,54) +rxt(k,221)*y(k,68) + &
     887             :                  rxt(k,254)*y(k,190) +rxt(k,261)*y(k,189))*y(k,52) &
     888             :                   + (.830_r8*rxt(k,401)*y(k,172) +.170_r8*rxt(k,407)*y(k,185)) &
     889             :                  *y(k,116) + (.280_r8*rxt(k,298)*y(k,27) +.050_r8*rxt(k,375)*y(k,93)) &
     890             :                  *y(k,122) + (.330_r8*rxt(k,400)*y(k,172) + &
     891             :                  .070_r8*rxt(k,406)*y(k,185))*y(k,176) + (.700_r8*rxt(k,253)*y(k,51) + &
     892             :                  rxt(k,285)*y(k,48))*y(k,190) +rxt(k,34)*y(k,43) +rxt(k,35)*y(k,46) &
     893             :                   +rxt(k,37)*y(k,49) +.300_r8*rxt(k,55)*y(k,106) +.400_r8*rxt(k,60) &
     894   141111616 :                  *y(k,127)
     895             :          loss(k,109) = (rxt(k,401)* y(k,116) +rxt(k,402)* y(k,117) +rxt(k,400) &
     896   141111616 :                  * y(k,176) + het_rates(k,172))* y(k,172)
     897   141111616 :          prod(k,109) =.600_r8*rxt(k,25)*y(k,10)
     898             :          loss(k,91) = ((rxt(k,319) +rxt(k,320))* y(k,116) + het_rates(k,173)) &
     899   141111616 :                  * y(k,173)
     900   141111616 :          prod(k,91) =rxt(k,318)*y(k,190)*y(k,14)
     901   141111616 :          loss(k,46) = ( + rxt(k,289) + rxt(k,290) + het_rates(k,174))* y(k,174)
     902   141111616 :          prod(k,46) =rxt(k,42)*y(k,67) +.750_r8*rxt(k,288)*y(k,175)*y(k,116)
     903             :          loss(k,104) = (rxt(k,288)* y(k,116) +rxt(k,287)* y(k,176) + het_rates(k,175)) &
     904   141111616 :                  * y(k,175)
     905   141111616 :          prod(k,104) =rxt(k,294)*y(k,190)*y(k,23)
     906             :          loss(k,163) = (rxt(k,201)* y(k,15) +rxt(k,207)* y(k,17) +rxt(k,244)* y(k,40) &
     907             :                   + (rxt(k,168) +rxt(k,169))* y(k,54) +rxt(k,175)* y(k,57) &
     908             :                   + (rxt(k,124) +rxt(k,125) +rxt(k,126))* y(k,71) +rxt(k,371)* y(k,96) &
     909             :                   +rxt(k,153)* y(k,116) +rxt(k,158)* y(k,117) +rxt(k,148)* y(k,118) &
     910             :                   +rxt(k,128)* y(k,121) +rxt(k,129)* y(k,122) +rxt(k,386)* y(k,161) &
     911             :                   +rxt(k,347)* y(k,162) +rxt(k,389)* y(k,164) +rxt(k,393)* y(k,166) &
     912             :                   +rxt(k,272)* y(k,167) +rxt(k,300)* y(k,168) +rxt(k,396)* y(k,169) &
     913             :                   +rxt(k,283)* y(k,170) +rxt(k,250)* y(k,171) +rxt(k,400)* y(k,172) &
     914             :                   +rxt(k,287)* y(k,175) + 2._r8*rxt(k,138)* y(k,176) +rxt(k,258) &
     915             :                  * y(k,177) +rxt(k,357)* y(k,178) +rxt(k,362)* y(k,179) +rxt(k,324) &
     916             :                  * y(k,182) +rxt(k,403)* y(k,183) +rxt(k,333)* y(k,184) +rxt(k,406) &
     917             :                  * y(k,185) +rxt(k,337)* y(k,186) +rxt(k,436)* y(k,188) +rxt(k,133) &
     918             :                  * y(k,190) +rxt(k,409)* y(k,191) +rxt(k,308)* y(k,192) +rxt(k,312) &
     919             :                  * y(k,193) +rxt(k,441)* y(k,194) +rxt(k,446)* y(k,195) +rxt(k,416) &
     920             :                  * y(k,196) +rxt(k,382)* y(k,198) +rxt(k,422)* y(k,199) +rxt(k,425) &
     921   141111616 :                  * y(k,201) + rxt(k,471) + het_rates(k,176))* y(k,176)
     922             :          prod(k,163) = (rxt(k,230)*y(k,41) +rxt(k,233)*y(k,44) +rxt(k,132)*y(k,74) + &
     923             :                  rxt(k,135)*y(k,122) +rxt(k,151)*y(k,118) +rxt(k,182)*y(k,57) + &
     924             :                  rxt(k,212)*y(k,17) +rxt(k,252)*y(k,50) +rxt(k,255)*y(k,60) + &
     925             :                  rxt(k,256)*y(k,81) +rxt(k,257)*y(k,82) +.350_r8*rxt(k,267)*y(k,22) + &
     926             :                  rxt(k,274)*y(k,24) +rxt(k,280)*y(k,45) +rxt(k,291)*y(k,69) + &
     927             :                  rxt(k,292)*y(k,70) +rxt(k,306)*y(k,90) +rxt(k,321)*y(k,88) + &
     928             :                  .200_r8*rxt(k,330)*y(k,101) +.500_r8*rxt(k,341)*y(k,104) + &
     929             :                  .300_r8*rxt(k,366)*y(k,94) +rxt(k,367)*y(k,95) +rxt(k,374)*y(k,97) + &
     930             :                  rxt(k,378)*y(k,110) +rxt(k,379)*y(k,111) +.650_r8*rxt(k,388)*y(k,5) + &
     931             :                  .730_r8*rxt(k,399)*y(k,64) +.800_r8*rxt(k,411)*y(k,130) + &
     932             :                  .280_r8*rxt(k,419)*y(k,153) +.380_r8*rxt(k,421)*y(k,155) + &
     933             :                  .630_r8*rxt(k,427)*y(k,157) +.200_r8*rxt(k,451)*y(k,151) + &
     934             :                  .500_r8*rxt(k,466)*y(k,65) +rxt(k,467)*y(k,137))*y(k,190) &
     935             :                   + (rxt(k,251)*y(k,171) +rxt(k,260)*y(k,177) +rxt(k,273)*y(k,167) + &
     936             :                  .250_r8*rxt(k,288)*y(k,175) +rxt(k,301)*y(k,168) + &
     937             :                  rxt(k,309)*y(k,192) +rxt(k,319)*y(k,173) + &
     938             :                  .470_r8*rxt(k,326)*y(k,182) +rxt(k,348)*y(k,162) + &
     939             :                  .920_r8*rxt(k,358)*y(k,178) +.920_r8*rxt(k,364)*y(k,179) + &
     940             :                  rxt(k,372)*y(k,96) +rxt(k,383)*y(k,198) +rxt(k,390)*y(k,164) + &
     941             :                  rxt(k,395)*y(k,166) +.170_r8*rxt(k,401)*y(k,172) + &
     942             :                  .400_r8*rxt(k,404)*y(k,183) +.830_r8*rxt(k,407)*y(k,185) + &
     943             :                  rxt(k,410)*y(k,191) +rxt(k,417)*y(k,196) +rxt(k,423)*y(k,199) + &
     944             :                  rxt(k,426)*y(k,201) +.900_r8*rxt(k,442)*y(k,194) + &
     945             :                  .800_r8*rxt(k,447)*y(k,195))*y(k,116) + (rxt(k,171)*y(k,57) + &
     946             :                  2.000_r8*rxt(k,248)*y(k,171) +rxt(k,271)*y(k,167) + &
     947             :                  .900_r8*rxt(k,282)*y(k,170) +rxt(k,299)*y(k,168) + &
     948             :                  .300_r8*rxt(k,311)*y(k,193) +.730_r8*rxt(k,323)*y(k,182) + &
     949             :                  rxt(k,332)*y(k,184) +rxt(k,356)*y(k,178) +rxt(k,361)*y(k,179) + &
     950             :                  1.200_r8*rxt(k,370)*y(k,96) +.800_r8*rxt(k,381)*y(k,198) + &
     951             :                  .500_r8*rxt(k,435)*y(k,188) +rxt(k,440)*y(k,194) + &
     952             :                  rxt(k,445)*y(k,195))*y(k,171) + (.130_r8*rxt(k,269)*y(k,23) + &
     953             :                  .280_r8*rxt(k,298)*y(k,27) +.140_r8*rxt(k,328)*y(k,100) + &
     954             :                  .280_r8*rxt(k,342)*y(k,106) +.370_r8*rxt(k,375)*y(k,93) + &
     955             :                  .570_r8*rxt(k,430)*y(k,4) +.570_r8*rxt(k,433)*y(k,105))*y(k,122) &
     956             :                   + (rxt(k,245)*y(k,40) +.470_r8*rxt(k,325)*y(k,182) + &
     957             :                  rxt(k,359)*y(k,178) +rxt(k,365)*y(k,179) +rxt(k,373)*y(k,96) + &
     958             :                  rxt(k,384)*y(k,198))*y(k,118) + (.470_r8*rxt(k,322)*y(k,182) + &
     959             :                  rxt(k,355)*y(k,178) +rxt(k,360)*y(k,179) +rxt(k,369)*y(k,96) + &
     960             :                  rxt(k,380)*y(k,198))*y(k,170) + (rxt(k,229)*y(k,41) + &
     961             :                  rxt(k,232)*y(k,44) +rxt(k,164)*y(k,40) +rxt(k,167)*y(k,74))*y(k,54) &
     962             :                   + (.070_r8*rxt(k,400)*y(k,172) +.160_r8*rxt(k,403)*y(k,183) + &
     963             :                  .330_r8*rxt(k,406)*y(k,185))*y(k,176) + (rxt(k,200)*y(k,15) + &
     964             :                  rxt(k,246)*y(k,121))*y(k,40) + (rxt(k,11) +rxt(k,162))*y(k,85) &
     965             :                   + (1.340_r8*rxt(k,50) +.660_r8*rxt(k,51))*y(k,100) + (rxt(k,289) + &
     966             :                  rxt(k,290))*y(k,174) +rxt(k,19)*y(k,1) +.900_r8*rxt(k,20)*y(k,2) &
     967             :                   +rxt(k,21)*y(k,6) +1.500_r8*rxt(k,22)*y(k,7) +.560_r8*rxt(k,23) &
     968             :                  *y(k,8) +rxt(k,24)*y(k,9) +.600_r8*rxt(k,25)*y(k,10) &
     969             :                   +.600_r8*rxt(k,26)*y(k,11) +rxt(k,27)*y(k,12) +rxt(k,28)*y(k,21) &
     970             :                   +rxt(k,29)*y(k,25) +rxt(k,30)*y(k,28) +rxt(k,34)*y(k,43) +rxt(k,36) &
     971             :                  *y(k,47) +rxt(k,262)*y(k,189)*y(k,52) +2.000_r8*rxt(k,43)*y(k,69) &
     972             :                   +2.000_r8*rxt(k,44)*y(k,70) +rxt(k,127)*y(k,71) +rxt(k,123)*y(k,121) &
     973             :                  *y(k,74) +.670_r8*rxt(k,45)*y(k,88) +rxt(k,46)*y(k,89) +rxt(k,47) &
     974             :                  *y(k,90) +rxt(k,48)*y(k,97) +rxt(k,49)*y(k,98) +rxt(k,56)*y(k,111) &
     975             :                   +rxt(k,61)*y(k,131) +rxt(k,62)*y(k,132) +rxt(k,64)*y(k,146) &
     976             :                   +rxt(k,65)*y(k,147) +rxt(k,66)*y(k,148) +rxt(k,67)*y(k,149) &
     977             :                   +rxt(k,68)*y(k,150) +1.200_r8*rxt(k,69)*y(k,151) +rxt(k,70)*y(k,152) &
     978             :                   +rxt(k,72)*y(k,156) +rxt(k,73)*y(k,158) &
     979             :                   +1.200_r8*rxt(k,270)*y(k,167)*y(k,167) +rxt(k,259)*y(k,177) &
     980   141111616 :                   +rxt(k,363)*y(k,179)
     981             :          loss(k,74) = (rxt(k,260)* y(k,116) +rxt(k,258)* y(k,176) + rxt(k,259) &
     982   141111616 :                   + het_rates(k,177))* y(k,177)
     983   141111616 :          prod(k,74) =rxt(k,244)*y(k,176)*y(k,40)
     984             :          loss(k,151) = (rxt(k,358)* y(k,116) +rxt(k,359)* y(k,118) +rxt(k,355) &
     985             :                  * y(k,170) +rxt(k,356)* y(k,171) +rxt(k,357)* y(k,176) &
     986   141111616 :                   + het_rates(k,178))* y(k,178)
     987   141111616 :          prod(k,151) =.600_r8*rxt(k,376)*y(k,190)*y(k,93)
     988             :          loss(k,148) = (rxt(k,364)* y(k,116) +rxt(k,365)* y(k,118) +rxt(k,360) &
     989             :                  * y(k,170) +rxt(k,361)* y(k,171) +rxt(k,362)* y(k,176) + rxt(k,363) &
     990   141111616 :                   + het_rates(k,179))* y(k,179)
     991   141111616 :          prod(k,148) =.400_r8*rxt(k,376)*y(k,190)*y(k,93)
     992             :          loss(k,10) = (rxt(k,494)* y(k,116) +rxt(k,493)* y(k,176) + het_rates(k,180)) &
     993   141111616 :                  * y(k,180)
     994   141111616 :          prod(k,10) =rxt(k,496)*y(k,190)*y(k,93)
     995             :          loss(k,11) = (rxt(k,498)* y(k,116) +rxt(k,497)* y(k,176) + het_rates(k,181)) &
     996   141111616 :                  * y(k,181)
     997   141111616 :          prod(k,11) =rxt(k,499)*y(k,190)*y(k,99)
     998             :          loss(k,150) = ((rxt(k,326) +rxt(k,327))* y(k,116) +rxt(k,325)* y(k,118) &
     999             :                   +rxt(k,322)* y(k,170) +rxt(k,323)* y(k,171) +rxt(k,324)* y(k,176) &
    1000   141111616 :                   + het_rates(k,182))* y(k,182)
    1001             :          prod(k,150) = (.500_r8*rxt(k,329)*y(k,100) +.200_r8*rxt(k,330)*y(k,101) + &
    1002   141111616 :                  rxt(k,343)*y(k,106))*y(k,190)
    1003             :          loss(k,105) = (rxt(k,404)* y(k,116) +rxt(k,405)* y(k,117) +rxt(k,403) &
    1004   141111616 :                  * y(k,176) + het_rates(k,183))* y(k,183)
    1005   141111616 :          prod(k,105) =.600_r8*rxt(k,24)*y(k,9)
    1006             :          loss(k,152) = (rxt(k,335)* y(k,116) +rxt(k,344)* y(k,117) +rxt(k,336) &
    1007             :                  * y(k,118) +rxt(k,331)* y(k,170) +rxt(k,332)* y(k,171) +rxt(k,333) &
    1008   141111616 :                  * y(k,176) + 2._r8*rxt(k,334)* y(k,184) + het_rates(k,184))* y(k,184)
    1009             :          prod(k,152) = (.660_r8*rxt(k,50) +.500_r8*rxt(k,329)*y(k,190))*y(k,100) &
    1010             :                   + (rxt(k,54) +rxt(k,345))*y(k,104) +.500_r8*rxt(k,330)*y(k,190) &
    1011   141111616 :                  *y(k,101)
    1012             :          loss(k,123) = (rxt(k,407)* y(k,116) +rxt(k,408)* y(k,117) +rxt(k,406) &
    1013   141111616 :                  * y(k,176) + het_rates(k,185))* y(k,185)
    1014   141111616 :          prod(k,123) =.600_r8*rxt(k,26)*y(k,11)
    1015             :          loss(k,102) = (rxt(k,338)* y(k,116) +rxt(k,337)* y(k,176) + het_rates(k,186)) &
    1016   141111616 :                  * y(k,186)
    1017   141111616 :          prod(k,102) = (rxt(k,339)*y(k,102) +rxt(k,340)*y(k,103))*y(k,190)
    1018             :          loss(k,13) = (rxt(k,502)* y(k,116) +rxt(k,501)* y(k,176) + het_rates(k,187)) &
    1019   141111616 :                  * y(k,187)
    1020   141111616 :          prod(k,13) =rxt(k,504)*y(k,190)*y(k,105)
    1021             :          loss(k,140) = (rxt(k,437)* y(k,116) +rxt(k,438)* y(k,118) +rxt(k,435) &
    1022   141111616 :                  * y(k,171) +rxt(k,436)* y(k,176) + het_rates(k,188))* y(k,188)
    1023             :          prod(k,140) = (rxt(k,429)*y(k,4) +rxt(k,432)*y(k,105) + &
    1024   141111616 :                  .500_r8*rxt(k,449)*y(k,150))*y(k,118) +rxt(k,439)*y(k,190)*y(k,120)
    1025             :          loss(k,158) = (rxt(k,189)* y(k,31) +rxt(k,190)* y(k,32) +rxt(k,216)* y(k,33) &
    1026             :                   +rxt(k,191)* y(k,34) +rxt(k,192)* y(k,35) +rxt(k,193)* y(k,36) &
    1027             :                   +rxt(k,194)* y(k,37) +rxt(k,195)* y(k,38) +rxt(k,239)* y(k,39) &
    1028             :                   +rxt(k,240)* y(k,41) + (rxt(k,261) +rxt(k,262) +rxt(k,263))* y(k,52) &
    1029             :                   +rxt(k,217)* y(k,53) +rxt(k,225)* y(k,62) +rxt(k,226)* y(k,63) &
    1030             :                   +rxt(k,114)* y(k,72) +rxt(k,218)* y(k,73) + (rxt(k,219) +rxt(k,220)) &
    1031             :                  * y(k,76) +rxt(k,241)* y(k,77) +rxt(k,242)* y(k,78) +rxt(k,243) &
    1032             :                  * y(k,79) + (rxt(k,196) +rxt(k,197))* y(k,80) +rxt(k,264)* y(k,81) &
    1033             :                   + (rxt(k,156) +rxt(k,157))* y(k,108) +rxt(k,118)* y(k,122) &
    1034             :                   +rxt(k,115)* y(k,202) + rxt(k,116) + rxt(k,117) + het_rates(k,189)) &
    1035   141111616 :                  * y(k,189)
    1036   141111616 :          prod(k,158) =rxt(k,7)*y(k,122) +rxt(k,1)*y(k,202)
    1037             :          loss(k,159) = (rxt(k,346)* y(k,1) +rxt(k,350)* y(k,2) +rxt(k,431)* y(k,4) &
    1038             :                   +rxt(k,388)* y(k,5) +rxt(k,391)* y(k,6) +rxt(k,351)* y(k,13) &
    1039             :                   +rxt(k,318)* y(k,14) +rxt(k,212)* y(k,17) +rxt(k,392)* y(k,20) &
    1040             :                   +rxt(k,394)* y(k,21) +rxt(k,267)* y(k,22) +rxt(k,294)* y(k,23) &
    1041             :                   +rxt(k,274)* y(k,24) +rxt(k,275)* y(k,25) +rxt(k,277)* y(k,26) &
    1042             :                   +rxt(k,315)* y(k,27) +rxt(k,302)* y(k,28) +rxt(k,303)* y(k,29) &
    1043             :                   +rxt(k,398)* y(k,30) +rxt(k,228)* y(k,39) +rxt(k,247)* y(k,40) &
    1044             :                   +rxt(k,230)* y(k,41) +rxt(k,231)* y(k,42) +rxt(k,279)* y(k,43) &
    1045             :                   +rxt(k,233)* y(k,44) +rxt(k,280)* y(k,45) +rxt(k,316)* y(k,46) &
    1046             :                   +rxt(k,305)* y(k,47) +rxt(k,285)* y(k,48) +rxt(k,286)* y(k,49) &
    1047             :                   +rxt(k,252)* y(k,50) +rxt(k,253)* y(k,51) +rxt(k,254)* y(k,52) &
    1048             :                   +rxt(k,235)* y(k,53) + (rxt(k,182) +rxt(k,183))* y(k,57) +rxt(k,180) &
    1049             :                  * y(k,58) + (rxt(k,255) +rxt(k,265))* y(k,60) +rxt(k,399)* y(k,64) &
    1050             :                   + (rxt(k,453) +rxt(k,466))* y(k,65) +rxt(k,291)* y(k,69) +rxt(k,292) &
    1051             :                  * y(k,70) +rxt(k,131)* y(k,72) +rxt(k,132)* y(k,74) +rxt(k,214) &
    1052             :                  * y(k,76) +rxt(k,236)* y(k,77) +rxt(k,237)* y(k,78) +rxt(k,238) &
    1053             :                  * y(k,79) +rxt(k,185)* y(k,80) +rxt(k,256)* y(k,81) +rxt(k,257) &
    1054             :                  * y(k,82) +rxt(k,161)* y(k,84) +rxt(k,139)* y(k,85) +rxt(k,188) &
    1055             :                  * y(k,87) +rxt(k,321)* y(k,88) +rxt(k,352)* y(k,89) +rxt(k,306) &
    1056             :                  * y(k,90) +rxt(k,353)* y(k,91) +rxt(k,354)* y(k,92) +rxt(k,376) &
    1057             :                  * y(k,93) +rxt(k,366)* y(k,94) +rxt(k,367)* y(k,95) +rxt(k,374) &
    1058             :                  * y(k,97) +rxt(k,377)* y(k,98) +rxt(k,329)* y(k,100) +rxt(k,330) &
    1059             :                  * y(k,101) +rxt(k,339)* y(k,102) +rxt(k,340)* y(k,103) +rxt(k,341) &
    1060             :                  * y(k,104) +rxt(k,434)* y(k,105) +rxt(k,343)* y(k,106) +rxt(k,152) &
    1061             :                  * y(k,107) +rxt(k,378)* y(k,110) +rxt(k,379)* y(k,111) +rxt(k,469) &
    1062             :                  * y(k,112) +rxt(k,160)* y(k,117) +rxt(k,151)* y(k,118) +rxt(k,307) &
    1063             :                  * y(k,119) +rxt(k,439)* y(k,120) +rxt(k,134)* y(k,121) +rxt(k,135) &
    1064             :                  * y(k,122) +rxt(k,455)* y(k,125) +rxt(k,293)* y(k,127) +rxt(k,411) &
    1065             :                  * y(k,130) +rxt(k,414)* y(k,131) +rxt(k,310)* y(k,132) +rxt(k,314) &
    1066             :                  * y(k,133) +rxt(k,460)* y(k,134) +rxt(k,465)* y(k,136) +rxt(k,467) &
    1067             :                  * y(k,137) +rxt(k,443)* y(k,147) +rxt(k,444)* y(k,148) +rxt(k,448) &
    1068             :                  * y(k,149) +rxt(k,450)* y(k,150) +rxt(k,451)* y(k,151) +rxt(k,418) &
    1069             :                  * y(k,152) +rxt(k,419)* y(k,153) +rxt(k,385)* y(k,154) +rxt(k,421) &
    1070             :                  * y(k,155) +rxt(k,424)* y(k,156) +rxt(k,427)* y(k,157) +rxt(k,428) &
    1071             :                  * y(k,158) +rxt(k,133)* y(k,176) + 2._r8*(rxt(k,136) +rxt(k,137)) &
    1072   141111616 :                  * y(k,190) + het_rates(k,190))* y(k,190)
    1073             :          prod(k,159) = (2.000_r8*rxt(k,125)*y(k,71) +rxt(k,128)*y(k,121) + &
    1074             :                  rxt(k,129)*y(k,122) +rxt(k,148)*y(k,118) +rxt(k,153)*y(k,116) + &
    1075             :                  rxt(k,169)*y(k,54) +.450_r8*rxt(k,283)*y(k,170) + &
    1076             :                  .150_r8*rxt(k,312)*y(k,193) +.450_r8*rxt(k,333)*y(k,184) + &
    1077             :                  .200_r8*rxt(k,337)*y(k,186) +.400_r8*rxt(k,386)*y(k,161) + &
    1078             :                  .400_r8*rxt(k,400)*y(k,172) +.400_r8*rxt(k,406)*y(k,185))*y(k,176) &
    1079             :                   + (rxt(k,130)*y(k,71) +.130_r8*rxt(k,269)*y(k,23) + &
    1080             :                  .360_r8*rxt(k,298)*y(k,27) +.240_r8*rxt(k,328)*y(k,100) + &
    1081             :                  .360_r8*rxt(k,342)*y(k,106) +.320_r8*rxt(k,375)*y(k,93) + &
    1082             :                  .630_r8*rxt(k,430)*y(k,4) +.630_r8*rxt(k,433)*y(k,105))*y(k,122) &
    1083             :                   + (rxt(k,122)*y(k,72) +rxt(k,123)*y(k,74) +rxt(k,184)*y(k,80) + &
    1084             :                  rxt(k,187)*y(k,87) +rxt(k,213)*y(k,76) +rxt(k,215)*y(k,86) + &
    1085             :                  rxt(k,246)*y(k,40))*y(k,121) + (.300_r8*rxt(k,253)*y(k,51) + &
    1086             :                  .650_r8*rxt(k,267)*y(k,22) +.500_r8*rxt(k,275)*y(k,25) + &
    1087             :                  .500_r8*rxt(k,310)*y(k,132) +.100_r8*rxt(k,330)*y(k,101) + &
    1088             :                  .600_r8*rxt(k,377)*y(k,98) +.500_r8*rxt(k,385)*y(k,154))*y(k,190) &
    1089             :                   + (rxt(k,261)*y(k,52) +rxt(k,114)*y(k,72) + &
    1090             :                  2.000_r8*rxt(k,115)*y(k,202) +rxt(k,196)*y(k,80) + &
    1091             :                  rxt(k,219)*y(k,76) +rxt(k,264)*y(k,81))*y(k,189) + (rxt(k,2) + &
    1092             :                  rxt(k,223)*y(k,68))*y(k,202) +rxt(k,20)*y(k,2) +rxt(k,21)*y(k,6) &
    1093             :                   +rxt(k,28)*y(k,21) +rxt(k,29)*y(k,25) +rxt(k,30)*y(k,28) +rxt(k,31) &
    1094             :                  *y(k,30) +rxt(k,37)*y(k,49) +rxt(k,38)*y(k,51) +rxt(k,42)*y(k,67) &
    1095             :                   +2.000_r8*rxt(k,4)*y(k,74) +rxt(k,9)*y(k,84) +rxt(k,10)*y(k,85) &
    1096             :                   +rxt(k,105)*y(k,86) +rxt(k,106)*y(k,87) +rxt(k,46)*y(k,89) &
    1097             :                   +rxt(k,53)*y(k,103) +.500_r8*rxt(k,479)*y(k,117) +rxt(k,58)*y(k,120) &
    1098             :                   +rxt(k,61)*y(k,131) +rxt(k,62)*y(k,132) +rxt(k,63)*y(k,133) &
    1099             :                   +rxt(k,65)*y(k,147) +rxt(k,67)*y(k,149) +rxt(k,70)*y(k,152) &
    1100   141111616 :                   +rxt(k,71)*y(k,154) +rxt(k,72)*y(k,156) +rxt(k,73)*y(k,158)
    1101             :          loss(k,75) = (rxt(k,410)* y(k,116) +rxt(k,409)* y(k,176) + het_rates(k,191)) &
    1102   141111616 :                  * y(k,191)
    1103             :          prod(k,75) = (.200_r8*rxt(k,399)*y(k,64) +.140_r8*rxt(k,411)*y(k,130) + &
    1104   141111616 :                  rxt(k,414)*y(k,131))*y(k,190)
    1105             :          loss(k,110) = (rxt(k,309)* y(k,116) +rxt(k,308)* y(k,176) + het_rates(k,192)) &
    1106   141111616 :                  * y(k,192)
    1107   141111616 :          prod(k,110) = (.500_r8*rxt(k,310)*y(k,132) +rxt(k,315)*y(k,27))*y(k,190)
    1108             :          loss(k,141) = (rxt(k,313)* y(k,116) +rxt(k,311)* y(k,171) +rxt(k,312) &
    1109   141111616 :                  * y(k,176) + het_rates(k,193))* y(k,193)
    1110             :          prod(k,141) = (rxt(k,314)*y(k,133) +rxt(k,316)*y(k,46) + &
    1111             :                  .150_r8*rxt(k,451)*y(k,151))*y(k,190) + (.060_r8*rxt(k,430)*y(k,4) + &
    1112   141111616 :                  .060_r8*rxt(k,433)*y(k,105))*y(k,122) +.150_r8*rxt(k,69)*y(k,151)
    1113             :          loss(k,139) = (rxt(k,442)* y(k,116) +rxt(k,440)* y(k,171) +rxt(k,441) &
    1114   141111616 :                  * y(k,176) + het_rates(k,194))* y(k,194)
    1115             :          prod(k,139) = (.500_r8*rxt(k,449)*y(k,118) +rxt(k,450)*y(k,190))*y(k,150) &
    1116   141111616 :                   +rxt(k,443)*y(k,190)*y(k,147)
    1117             :          loss(k,138) = (rxt(k,447)* y(k,116) +rxt(k,445)* y(k,171) +rxt(k,446) &
    1118   141111616 :                  * y(k,176) + het_rates(k,195))* y(k,195)
    1119             :          prod(k,138) = (rxt(k,431)*y(k,4) +rxt(k,434)*y(k,105) +rxt(k,448)*y(k,149)) &
    1120   141111616 :                  *y(k,190)
    1121             :          loss(k,106) = (rxt(k,417)* y(k,116) +rxt(k,416)* y(k,176) + het_rates(k,196)) &
    1122   141111616 :                  * y(k,196)
    1123   141111616 :          prod(k,106) = (rxt(k,418)*y(k,152) +.650_r8*rxt(k,419)*y(k,153))*y(k,190)
    1124             :          loss(k,14) = (rxt(k,508)* y(k,116) +rxt(k,507)* y(k,176) + het_rates(k,197)) &
    1125   141111616 :                  * y(k,197)
    1126   141111616 :          prod(k,14) =rxt(k,506)*y(k,190)*y(k,153)
    1127             :          loss(k,142) = (rxt(k,383)* y(k,116) +rxt(k,384)* y(k,118) +rxt(k,380) &
    1128             :                  * y(k,170) +rxt(k,381)* y(k,171) +rxt(k,382)* y(k,176) &
    1129   141111616 :                   + het_rates(k,198))* y(k,198)
    1130             :          prod(k,142) = (rxt(k,352)*y(k,89) +rxt(k,353)*y(k,91) +rxt(k,354)*y(k,92) + &
    1131   141111616 :                  .400_r8*rxt(k,377)*y(k,98) +.500_r8*rxt(k,385)*y(k,154))*y(k,190)
    1132             :          loss(k,108) = (rxt(k,423)* y(k,116) +rxt(k,422)* y(k,176) + het_rates(k,199)) &
    1133   141111616 :                  * y(k,199)
    1134   141111616 :          prod(k,108) = (.560_r8*rxt(k,421)*y(k,155) +rxt(k,424)*y(k,156))*y(k,190)
    1135             :          loss(k,15) = (rxt(k,511)* y(k,116) +rxt(k,510)* y(k,176) + het_rates(k,200)) &
    1136   141111616 :                  * y(k,200)
    1137   141111616 :          prod(k,15) =rxt(k,509)*y(k,190)*y(k,155)
    1138             :          loss(k,81) = (rxt(k,426)* y(k,116) +rxt(k,425)* y(k,176) + het_rates(k,201)) &
    1139   141111616 :                  * y(k,201)
    1140   141111616 :          prod(k,81) = (.300_r8*rxt(k,427)*y(k,157) +rxt(k,428)*y(k,158))*y(k,190)
    1141             :          loss(k,171) = (rxt(k,223)* y(k,68) +rxt(k,468)* y(k,138) +rxt(k,115) &
    1142             :                  * y(k,189) + rxt(k,1) + rxt(k,2) + rxt(k,3) + het_rates(k,202)) &
    1143   141111616 :                  * y(k,202)
    1144             :          prod(k,171) = (rxt(k,228)*y(k,39) +rxt(k,230)*y(k,41) +rxt(k,231)*y(k,42) + &
    1145             :                  rxt(k,233)*y(k,44) +rxt(k,238)*y(k,79) +rxt(k,254)*y(k,52) + &
    1146             :                  rxt(k,131)*y(k,72) +rxt(k,132)*y(k,74) +rxt(k,133)*y(k,176) + &
    1147             :                  rxt(k,136)*y(k,190) +rxt(k,139)*y(k,85) +rxt(k,161)*y(k,84) + &
    1148             :                  rxt(k,185)*y(k,80) +rxt(k,188)*y(k,87) +rxt(k,214)*y(k,76) + &
    1149             :                  rxt(k,247)*y(k,40) +rxt(k,253)*y(k,51) +rxt(k,257)*y(k,82) + &
    1150             :                  rxt(k,277)*y(k,26) +rxt(k,279)*y(k,43) +rxt(k,285)*y(k,48) + &
    1151             :                  rxt(k,286)*y(k,49) +rxt(k,302)*y(k,28) +rxt(k,303)*y(k,29) + &
    1152             :                  rxt(k,305)*y(k,47) +rxt(k,310)*y(k,132) +rxt(k,314)*y(k,133) + &
    1153             :                  rxt(k,316)*y(k,46) +.500_r8*rxt(k,329)*y(k,100) +rxt(k,469)*y(k,112)) &
    1154             :                  *y(k,190) + (rxt(k,513)*y(k,87) +rxt(k,519)*y(k,87) + &
    1155             :                  rxt(k,520)*y(k,86) +rxt(k,524)*y(k,87) +rxt(k,525)*y(k,86))*y(k,80) &
    1156   145521354 :                   + (rxt(k,471) +rxt(k,126)*y(k,71))*y(k,176) +rxt(k,109)*y(k,75)
    1157             :       end do
    1158     4409738 :       end subroutine imp_prod_loss
    1159             :       end module mo_prod_loss

Generated by: LCOV version 1.14