Generated Code

The following is python code generated by the CellML API from this CellML file. (Back to language selection)

The raw code is available.

# Size of variable arrays:
sizeAlgebraic = 207
sizeStates = 60
sizeConstants = 388
from math import *
from numpy import *

def createLegends():
    legend_states = [""] * sizeStates
    legend_rates = [""] * sizeStates
    legend_algebraic = [""] * sizeAlgebraic
    legend_voi = ""
    legend_constants = [""] * sizeConstants
    legend_voi = "time in component Environment (second)"
    legend_constants[0] = "ExpType in component Environment (dimensionless)"
    legend_constants[1] = "StateType in component Environment (dimensionless)"
    legend_constants[2] = "F in component parameters (kilojoule_per_mole_per_millivolt)"
    legend_constants[323] = "V_cyto in component parameters (cyto_per_cell)"
    legend_constants[307] = "V_mito in component parameters (mito_per_cell)"
    legend_constants[3] = "W_x in component parameters (l_water_per_l_mito)"
    legend_constants[4] = "W_i in component parameters (l_water_per_l_mito)"
    legend_constants[286] = "W_c in component parameters (l_water_per_l_cyto)"
    legend_constants[5] = "gamma in component parameters (per_micrometer)"
    legend_constants[6] = "rho_m in component parameters (mg_per_mitochondria)"
    legend_constants[7] = "n_A in component parameters (dimensionless)"
    legend_constants[8] = "p_PI in component parameters (micrometer_per_second)"
    legend_constants[9] = "p_A in component parameters (micrometer_per_second)"
    legend_constants[10] = "p_TI in component parameters (micrometer_per_second)"
    legend_constants[11] = "k_mADP in component parameters (molar)"
    legend_constants[12] = "theta in component parameters (dimensionless)"
    legend_constants[13] = "k_O2 in component parameters (molar)"
    legend_constants[14] = "NAD_tot in component parameters (molar)"
    legend_constants[15] = "Q_tot in component parameters (molar)"
    legend_constants[16] = "cytC_tot in component parameters (molar)"
    legend_constants[17] = "A_tot in component parameters (molar)"
    legend_constants[18] = "CR_tot in component parameters (molar)"
    legend_constants[19] = "CO2_tot_x in component parameters (molar)"
    legend_constants[20] = "FAD_tot in component parameters (molar)"
    legend_constants[21] = "C_IM in component parameters (mole_per_l_mito_volume_per_mv)"
    legend_constants[22] = "X_pdh in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[23] = "X_cits in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[24] = "X_acon in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[25] = "X_isod in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[26] = "X_akgd in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[27] = "K_ir_akgd in component parameters (molar)"
    legend_constants[28] = "X_scoas in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[29] = "X_sdh in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[30] = "X_fum in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[31] = "X_mdh in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[32] = "X_ndk in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[33] = "X_got in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[34] = "X_PYRH in component parameters (mole_per_second_per_l_mito_volume_per_molar_per_molar)"
    legend_constants[35] = "X_GLUH in component parameters (mole_per_second_per_l_mito_volume_per_molar_per_molar)"
    legend_constants[36] = "X_CITMAL in component parameters (mole_per_second_per_l_mito_volume_per_molar_per_molar)"
    legend_constants[37] = "X_AKGMAL in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[38] = "X_SUCMAL in component parameters (mole_per_second_per_l_mito_volume_per_molar_per_molar)"
    legend_constants[39] = "X_MALPI in component parameters (mole_per_second_per_l_mito_volume_per_molar_per_molar)"
    legend_constants[40] = "X_ASPGLU in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[41] = "X_C1 in component parameters (mole_per_second_per_l_mito_volume_per_molar_per_molar)"
    legend_constants[42] = "X_C3 in component parameters (mole_per_second_per_l_mito_volume_per_molar_per_half_molar)"
    legend_constants[43] = "k_PI_1 in component parameters (molar)"
    legend_constants[44] = "k_PI_2 in component parameters (molar)"
    legend_constants[45] = "X_C4 in component parameters (mole_per_second_per_l_mito_volume_per_molar)"
    legend_constants[46] = "X_F1 in component parameters (mole_per_second_per_l_mito_volume_per_molar)"
    legend_constants[47] = "X_ANT in component parameters (mole_per_second_per_l_mito_volume)"
    legend_constants[48] = "X_PiHt in component parameters (mole_per_second_per_l_mito_volume_per_molar)"
    legend_constants[49] = "k_PiHt in component parameters (molar)"
    legend_constants[50] = "X_KH in component parameters (mole_per_second_per_l_mito_volume_per_molar_per_molar)"
    legend_constants[51] = "X_Hle in component parameters (mole_per_second_per_l_mito_volume_per_molar_per_mv)"
    legend_constants[273] = "X_HK in component parameters (mole_per_second_per_l_cyto_volume)"
    legend_constants[52] = "J_AtC in component parameters (mole_per_second_per_l_cyto_volume)"
    legend_constants[274] = "RT in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[53] = "dGf1_H2O in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[54] = "dGf1_O2 in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[55] = "dGf1_NADH in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[56] = "dGf1_NAD in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[57] = "dGf1_QH2 in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[58] = "dGf1_COQ in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[59] = "dGf1_ATP in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[60] = "dGf1_ADP in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[61] = "dGf1_AMP in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[62] = "dGf1_GTP in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[63] = "dGf1_GDP in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[64] = "dGf1_Cred in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[65] = "dGf1_Cox in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[66] = "dGf1_Pi in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[67] = "dGf1_PCr in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[68] = "dGf1_Cr in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[69] = "dGf1_FADH2 in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[70] = "dGf1_FAD in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[71] = "dGf1_COASH in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[72] = "dGf1_ACCOA in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[73] = "dGf1_OAA in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[74] = "dGf1_CIT in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[75] = "dGf1_ICIT in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[76] = "dGf1_AKG in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[77] = "dGf1_SCOA in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[78] = "dGf1_SUC in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[79] = "dGf1_FUM in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[80] = "dGf1_MAL in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[81] = "dGf1_ASP in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[82] = "dGf1_GLU in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[83] = "dGf1_CO2_tot in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[84] = "dGf1_PYR in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[85] = "dGf1_GLC in component thermodynamic_data (kilojoule_per_mole)"
    legend_constants[86] = "dGf1_G6P in component thermodynamic_data (kilojoule_per_mole)"
    legend_algebraic[0] = "P_ATP_x in component P_ATP (dimensionless)"
    legend_algebraic[163] = "P_ATP_i in component P_ATP (dimensionless)"
    legend_algebraic[17] = "P_ATP_c in component P_ATP (dimensionless)"
    legend_algebraic[18] = "uATP_x in component P_ATP (molar)"
    legend_algebraic[20] = "mATP_c in component P_ATP (molar)"
    legend_constants[296] = "K_H in component P_ATP (molar)"
    legend_constants[311] = "K_Mg in component P_ATP (molar)"
    legend_constants[325] = "K_K in component P_ATP (molar)"
    legend_states[0] = "ATP_x in component dATP_x_dt (molar)"
    legend_states[1] = "H_x in component dH_x_dt (molar)"
    legend_states[2] = "Mg_x in component dMg_x_dt (molar)"
    legend_states[3] = "K_x in component dK_x_dt (molar)"
    legend_algebraic[132] = "H_i in component dH_i_dt (molar)"
    legend_algebraic[149] = "Mg_i in component dMg_i_dt (molar)"
    legend_algebraic[162] = "K_i in component dK_i_dt (molar)"
    legend_states[4] = "ATP_c in component dATP_c_dt (molar)"
    legend_states[5] = "H_c in component dH_c_dt (molar)"
    legend_states[6] = "Mg_c in component dMg_c_dt (molar)"
    legend_states[7] = "K_c in component dK_c_dt (molar)"
    legend_algebraic[21] = "P_ADP_x in component P_ADP (dimensionless)"
    legend_algebraic[165] = "P_ADP_i in component P_ADP (dimensionless)"
    legend_algebraic[22] = "P_ADP_c in component P_ADP (dimensionless)"
    legend_algebraic[23] = "uADP_x in component P_ADP (molar)"
    legend_algebraic[25] = "mADP_c in component P_ADP (molar)"
    legend_constants[332] = "K_H in component P_ADP (molar)"
    legend_constants[336] = "K_Mg in component P_ADP (molar)"
    legend_constants[340] = "K_K in component P_ADP (molar)"
    legend_states[8] = "ADP_x in component dADP_x_dt (molar)"
    legend_states[9] = "ADP_c in component dADP_c_dt (molar)"
    legend_algebraic[26] = "P_AMP_x in component P_AMP (dimensionless)"
    legend_algebraic[167] = "P_AMP_i in component P_AMP (dimensionless)"
    legend_algebraic[27] = "P_AMP_c in component P_AMP (dimensionless)"
    legend_algebraic[28] = "uAMP_x in component P_AMP (molar)"
    legend_constants[344] = "K_H in component P_AMP (molar)"
    legend_constants[347] = "K_Mg in component P_AMP (molar)"
    legend_constants[349] = "K_K in component P_AMP (molar)"
    legend_states[10] = "AMP_x in component dAMP_x_dt (molar)"
    legend_algebraic[29] = "P_GTP_x in component P_GTP (dimensionless)"
    legend_algebraic[164] = "P_GTP_i in component P_GTP (dimensionless)"
    legend_algebraic[19] = "P_GTP_c in component P_GTP (dimensionless)"
    legend_algebraic[30] = "uGTP_x in component P_GTP (molar)"
    legend_constants[313] = "K_H in component P_GTP (molar)"
    legend_constants[326] = "K_Mg in component P_GTP (molar)"
    legend_constants[333] = "K_K in component P_GTP (molar)"
    legend_states[11] = "GTP_x in component dGTP_x_dt (molar)"
    legend_algebraic[31] = "P_GDP_x in component P_GDP (dimensionless)"
    legend_algebraic[166] = "P_GDP_i in component P_GDP (dimensionless)"
    legend_algebraic[24] = "P_GDP_c in component P_GDP (dimensionless)"
    legend_algebraic[32] = "uGDP_x in component P_GDP (molar)"
    legend_constants[337] = "K_H in component P_GDP (molar)"
    legend_constants[341] = "K_Mg in component P_GDP (molar)"
    legend_constants[345] = "K_K in component P_GDP (molar)"
    legend_states[12] = "GDP_x in component dGDP_x_dt (molar)"
    legend_algebraic[33] = "P_PI_x in component P_PI (dimensionless)"
    legend_algebraic[168] = "P_PI_i in component P_PI (dimensionless)"
    legend_algebraic[1] = "P_PI_c in component P_PI (dimensionless)"
    legend_algebraic[34] = "hPI_x in component P_PI (molar)"
    legend_algebraic[169] = "hPI_i in component P_PI (molar)"
    legend_states[13] = "PI_x in component dPI_x_dt (molar)"
    legend_states[14] = "PI_i in component dPI_i_dt (molar)"
    legend_constants[351] = "K_H in component P_PI (molar)"
    legend_constants[353] = "K_Mg in component P_PI (molar)"
    legend_constants[355] = "K_K in component P_PI (molar)"
    legend_algebraic[35] = "P_COASH_x in component P_COASH (dimensionless)"
    legend_algebraic[133] = "P_COASH_i in component P_COASH (dimensionless)"
    legend_algebraic[2] = "P_COASH_c in component P_COASH (dimensionless)"
    legend_constants[357] = "K_H in component P_COASH (molar)"
    legend_constants[87] = "K_Mg in component P_COASH (molar)"
    legend_constants[88] = "K_K in component P_COASH (molar)"
    legend_algebraic[36] = "P_OAA_x in component P_OAA (dimensionless)"
    legend_algebraic[150] = "P_OAA_i in component P_OAA (dimensionless)"
    legend_algebraic[3] = "P_OAA_c in component P_OAA (dimensionless)"
    legend_constants[359] = "K_Mg in component P_OAA (molar)"
    legend_constants[89] = "K_H in component P_OAA (molar)"
    legend_constants[90] = "K_K in component P_OAA (molar)"
    legend_algebraic[37] = "P_CIT_x in component P_CIT (dimensionless)"
    legend_algebraic[170] = "P_CIT_i in component P_CIT (dimensionless)"
    legend_algebraic[4] = "P_CIT_c in component P_CIT (dimensionless)"
    legend_algebraic[38] = "uCIT_x in component P_CIT (molar)"
    legend_algebraic[171] = "uCIT_i in component P_CIT (molar)"
    legend_algebraic[39] = "hCIT_x in component P_CIT (molar)"
    legend_algebraic[172] = "hCIT_i in component P_CIT (molar)"
    legend_states[15] = "CIT_x in component dCIT_x_dt (molar)"
    legend_states[16] = "CIT_i in component dCIT_i_dt (molar)"
    legend_constants[360] = "K_H in component P_CIT (molar)"
    legend_constants[361] = "K_Mg in component P_CIT (molar)"
    legend_constants[362] = "K_K in component P_CIT (molar)"
    legend_algebraic[40] = "P_ICIT_x in component P_ICIT (dimensionless)"
    legend_algebraic[151] = "P_ICIT_i in component P_ICIT (dimensionless)"
    legend_algebraic[5] = "P_ICIT_c in component P_ICIT (dimensionless)"
    legend_constants[363] = "K_H in component P_ICIT (molar)"
    legend_constants[364] = "K_Mg in component P_ICIT (molar)"
    legend_constants[91] = "K_K in component P_ICIT (molar)"
    legend_algebraic[41] = "P_SCOA_x in component P_SCOA (dimensionless)"
    legend_algebraic[134] = "P_SCOA_i in component P_SCOA (dimensionless)"
    legend_algebraic[6] = "P_SCOA_c in component P_SCOA (dimensionless)"
    legend_constants[365] = "K_H in component P_SCOA (molar)"
    legend_constants[92] = "K_Mg in component P_SCOA (molar)"
    legend_constants[93] = "K_K in component P_SCOA (molar)"
    legend_algebraic[42] = "P_SUC_x in component P_SUC (dimensionless)"
    legend_algebraic[173] = "P_SUC_i in component P_SUC (dimensionless)"
    legend_algebraic[7] = "P_SUC_c in component P_SUC (dimensionless)"
    legend_constants[366] = "K_H in component P_SUC (molar)"
    legend_constants[367] = "K_Mg in component P_SUC (molar)"
    legend_constants[368] = "K_K in component P_SUC (molar)"
    legend_algebraic[43] = "P_FUM_x in component P_FUM (dimensionless)"
    legend_algebraic[135] = "P_FUM_i in component P_FUM (dimensionless)"
    legend_algebraic[8] = "P_FUM_c in component P_FUM (dimensionless)"
    legend_constants[369] = "K_H in component P_FUM (molar)"
    legend_constants[94] = "K_Mg in component P_FUM (molar)"
    legend_constants[95] = "K_K in component P_FUM (molar)"
    legend_algebraic[44] = "P_MAL_x in component P_MAL (dimensionless)"
    legend_algebraic[174] = "P_MAL_i in component P_MAL (dimensionless)"
    legend_algebraic[9] = "P_MAL_c in component P_MAL (dimensionless)"
    legend_constants[370] = "K_H in component P_MAL (molar)"
    legend_constants[371] = "K_Mg in component P_MAL (molar)"
    legend_constants[372] = "K_K in component P_MAL (molar)"
    legend_algebraic[45] = "P_CO2_tot_x in component P_CO2_tot (dimensionless)"
    legend_algebraic[136] = "P_CO2_tot_i in component P_CO2_tot (dimensionless)"
    legend_algebraic[10] = "P_CO2_tot_c in component P_CO2_tot (dimensionless)"
    legend_constants[373] = "K_H in component P_CO2_tot (molar)"
    legend_constants[96] = "K_Mg in component P_CO2_tot (molar)"
    legend_constants[97] = "K_K in component P_CO2_tot (molar)"
    legend_algebraic[46] = "P_PYR_x in component P_PYR (dimensionless)"
    legend_algebraic[152] = "P_PYR_i in component P_PYR (dimensionless)"
    legend_algebraic[11] = "P_PYR_c in component P_PYR (dimensionless)"
    legend_constants[374] = "K_Mg in component P_PYR (molar)"
    legend_constants[98] = "K_H in component P_PYR (molar)"
    legend_constants[99] = "K_K in component P_PYR (molar)"
    legend_algebraic[12] = "P_G6P_x in component P_G6P (dimensionless)"
    legend_algebraic[137] = "P_G6P_i in component P_G6P (dimensionless)"
    legend_algebraic[47] = "P_G6P_c in component P_G6P (dimensionless)"
    legend_constants[375] = "K_H in component P_G6P (molar)"
    legend_constants[100] = "K_Mg in component P_G6P (molar)"
    legend_constants[101] = "K_K in component P_G6P (molar)"
    legend_algebraic[48] = "P_GLU_x in component P_GLU (dimensionless)"
    legend_algebraic[153] = "P_GLU_i in component P_GLU (dimensionless)"
    legend_algebraic[13] = "P_GLU_c in component P_GLU (dimensionless)"
    legend_constants[376] = "K_H in component P_GLU (molar)"
    legend_constants[377] = "K_Mg in component P_GLU (molar)"
    legend_constants[102] = "K_K in component P_GLU (molar)"
    legend_algebraic[49] = "P_ASP_x in component P_ASP (dimensionless)"
    legend_algebraic[154] = "P_ASP_i in component P_ASP (dimensionless)"
    legend_algebraic[14] = "P_ASP_c in component P_ASP (dimensionless)"
    legend_constants[378] = "K_H in component P_ASP (molar)"
    legend_constants[379] = "K_Mg in component P_ASP (molar)"
    legend_constants[103] = "K_K in component P_ASP (molar)"
    legend_constants[275] = "P_GLC_c in component P_GLC (dimensionless)"
    legend_constants[104] = "K_H in component P_GLC (molar)"
    legend_constants[105] = "K_Mg in component P_GLC (molar)"
    legend_constants[106] = "K_K in component P_GLC (molar)"
    legend_constants[276] = "P_NAD_x in component P_NAD (dimensionless)"
    legend_constants[107] = "K_H in component P_NAD (molar)"
    legend_constants[108] = "K_Mg in component P_NAD (molar)"
    legend_constants[109] = "K_K in component P_NAD (molar)"
    legend_constants[277] = "P_NADH_x in component P_NADH (dimensionless)"
    legend_constants[110] = "K_H in component P_NADH (molar)"
    legend_constants[111] = "K_Mg in component P_NADH (molar)"
    legend_constants[112] = "K_K in component P_NADH (molar)"
    legend_constants[304] = "P_QH2_x in component P_QH2 (dimensionless)"
    legend_constants[113] = "K_H in component P_QH2 (molar)"
    legend_constants[114] = "K_Mg in component P_QH2 (molar)"
    legend_constants[115] = "K_K in component P_QH2 (molar)"
    legend_constants[320] = "P_COQ_x in component P_COQ (dimensionless)"
    legend_constants[116] = "K_H in component P_COQ (molar)"
    legend_constants[117] = "K_Mg in component P_COQ (molar)"
    legend_constants[118] = "K_K in component P_COQ (molar)"
    legend_constants[278] = "P_ACCOA_x in component P_ACCOA (dimensionless)"
    legend_constants[119] = "K_H in component P_ACCOA (molar)"
    legend_constants[120] = "K_Mg in component P_ACCOA (molar)"
    legend_constants[121] = "K_K in component P_ACCOA (molar)"
    legend_constants[306] = "P_AKG_x in component P_AKG (dimensionless)"
    legend_constants[122] = "K_H in component P_AKG (molar)"
    legend_constants[123] = "K_Mg in component P_AKG (molar)"
    legend_constants[124] = "K_K in component P_AKG (molar)"
    legend_constants[279] = "P_O2_x in component P_O2 (dimensionless)"
    legend_constants[125] = "K_H in component P_O2 (molar)"
    legend_constants[126] = "K_Mg in component P_O2 (molar)"
    legend_constants[127] = "K_K in component P_O2 (molar)"
    legend_constants[280] = "P_FADH2_x in component P_FADH2 (dimensionless)"
    legend_constants[128] = "K_H in component P_FADH2 (molar)"
    legend_constants[129] = "K_Mg in component P_FADH2 (molar)"
    legend_constants[130] = "K_K in component P_FADH2 (molar)"
    legend_constants[281] = "P_FAD_x in component P_FAD (dimensionless)"
    legend_constants[131] = "K_H in component P_FAD (molar)"
    legend_constants[132] = "K_Mg in component P_FAD (molar)"
    legend_constants[133] = "K_K in component P_FAD (molar)"
    legend_constants[282] = "P_H_x in component P_H (dimensionless)"
    legend_constants[134] = "K_H in component P_H (molar)"
    legend_constants[135] = "K_Mg in component P_H (molar)"
    legend_constants[136] = "K_K in component P_H (molar)"
    legend_constants[283] = "P_Mg_x in component P_Mg (dimensionless)"
    legend_constants[137] = "K_H in component P_Mg (molar)"
    legend_constants[138] = "K_Mg in component P_Mg (molar)"
    legend_constants[139] = "K_K in component P_Mg (molar)"
    legend_constants[284] = "P_K_x in component P_K (dimensionless)"
    legend_constants[140] = "K_H in component P_K (molar)"
    legend_constants[141] = "K_Mg in component P_K (molar)"
    legend_constants[142] = "K_K in component P_K (molar)"
    legend_algebraic[114] = "J_pdh in component J_pdh (mole_per_second_per_l_mito_volume)"
    legend_states[17] = "PYR_x in component dPYR_x_dt (molar)"
    legend_states[18] = "COASH_x in component dCOASH_x_dt (molar)"
    legend_algebraic[113] = "NAD_x in component dNAD_x_dt (molar)"
    legend_states[19] = "CO2_tot_x in component dCO2_tot_x_dt (molar)"
    legend_states[20] = "ACCOA_x in component dACCOA_x_dt (molar)"
    legend_states[21] = "NADH_x in component dNADH_x_dt (molar)"
    legend_algebraic[50] = "K_eq_pdh in component J_pdh (dimensionless)"
    legend_constants[314] = "K0_eq_pdh in component J_pdh (molar)"
    legend_constants[298] = "dGr0_pdh in component J_pdh (kilojoule_per_mole)"
    legend_constants[143] = "K_mA in component J_pdh (molar)"
    legend_constants[144] = "K_mB in component J_pdh (molar)"
    legend_constants[145] = "K_mC in component J_pdh (molar)"
    legend_algebraic[51] = "alpha_i1 in component J_pdh (dimensionless)"
    legend_algebraic[52] = "alpha_i2 in component J_pdh (dimensionless)"
    legend_constants[146] = "K_iACCOA in component J_pdh (molar)"
    legend_constants[147] = "K_iNADH in component J_pdh (molar)"
    legend_constants[148] = "minCon in component J_pdh (molar)"
    legend_algebraic[56] = "J_cits in component J_cits (mole_per_second_per_l_mito_volume)"
    legend_states[22] = "OAA_x in component dOAA_x_dt (molar)"
    legend_states[23] = "SCOA_x in component dSCOA_x_dt (molar)"
    legend_algebraic[53] = "K_eq_cits in component J_cits (dimensionless)"
    legend_constants[315] = "K0_eq_cits in component J_cits (molar_squared)"
    legend_constants[299] = "dGr0_cits in component J_cits (kilojoule_per_mole)"
    legend_constants[149] = "K_mA in component J_cits (molar)"
    legend_constants[150] = "K_mB in component J_cits (molar)"
    legend_constants[151] = "K_ia in component J_cits (molar)"
    legend_constants[152] = "K_iCIT in component J_cits (molar)"
    legend_constants[153] = "K_iATP in component J_cits (molar)"
    legend_constants[154] = "K_iADP in component J_cits (molar)"
    legend_constants[155] = "K_iAMP in component J_cits (molar)"
    legend_constants[156] = "K_iCOASH in component J_cits (molar)"
    legend_constants[157] = "K_iSCOA in component J_cits (molar)"
    legend_algebraic[54] = "alpha_i1 in component J_cits (dimensionless)"
    legend_algebraic[55] = "alpha_i2 in component J_cits (dimensionless)"
    legend_algebraic[59] = "J_acon in component J_acon (mole_per_second_per_l_mito_volume)"
    legend_states[24] = "ICIT_x in component dICIT_x_dt (molar)"
    legend_algebraic[58] = "V_mr in component J_acon (mole_per_second_per_l_mito_volume)"
    legend_algebraic[57] = "K_eq_acon in component J_acon (dimensionless)"
    legend_constants[316] = "K0_eq_acon in component J_acon (dimensionless)"
    legend_constants[300] = "dGr0_acon in component J_acon (kilojoule_per_mole)"
    legend_constants[158] = "K_mA in component J_acon (molar)"
    legend_constants[159] = "K_mP in component J_acon (molar)"
    legend_algebraic[115] = "J_isod in component J_isod (mole_per_second_per_l_mito_volume)"
    legend_states[25] = "AKG_x in component dAKG_x_dt (molar)"
    legend_algebraic[60] = "K_eq_isod in component J_isod (molar)"
    legend_constants[317] = "K0_eq_isod in component J_isod (molar_cubed)"
    legend_constants[301] = "dGr0_isod in component J_isod (kilojoule_per_mole)"
    legend_constants[160] = "K_mA in component J_isod (molar)"
    legend_constants[161] = "K_mB in component J_isod (molar)"
    legend_constants[162] = "K_ib in component J_isod (molar)"
    legend_constants[163] = "K_iq in component J_isod (molar)"
    legend_algebraic[61] = "alpha_i in component J_isod (dimensionless)"
    legend_constants[164] = "n_H in component J_isod (dimensionless)"
    legend_constants[165] = "K_iATP in component J_isod (molar)"
    legend_constants[166] = "K_aADP in component J_isod (molar)"
    legend_constants[167] = "minCon in component J_isod (molar)"
    legend_algebraic[116] = "J_akgd in component J_akgd (mole_per_second_per_l_mito_volume)"
    legend_algebraic[62] = "K_eq_akgd in component J_akgd (dimensionless)"
    legend_constants[318] = "K0_eq_akgd in component J_akgd (molar)"
    legend_constants[302] = "dGr0_akgd in component J_akgd (kilojoule_per_mole)"
    legend_constants[168] = "K_mA in component J_akgd (molar)"
    legend_constants[169] = "K_mB in component J_akgd (molar)"
    legend_constants[170] = "K_mC in component J_akgd (molar)"
    legend_constants[171] = "K_iq in component J_akgd (molar)"
    legend_constants[172] = "K_ir1 in component J_akgd (molar)"
    legend_constants[173] = "K_ir2 in component J_akgd (molar)"
    legend_constants[174] = "K_iATP in component J_akgd (molar)"
    legend_constants[175] = "K_aADP in component J_akgd (molar)"
    legend_algebraic[63] = "alpha_i in component J_akgd (dimensionless)"
    legend_constants[176] = "minCon in component J_akgd (molar)"
    legend_algebraic[66] = "J_scoas in component J_scoas (mole_per_second_per_l_mito_volume)"
    legend_states[26] = "SUC_x in component dSUC_x_dt (molar)"
    legend_algebraic[64] = "K_eq_scoas in component J_scoas (dimensionless)"
    legend_constants[319] = "K0_eq_scoas in component J_scoas (molar)"
    legend_constants[303] = "dGr0_scoas in component J_scoas (kilojoule_per_mole)"
    legend_algebraic[65] = "V_mr in component J_scoas (mole_per_second_per_l_mito_volume)"
    legend_constants[177] = "K_ia in component J_scoas (molar)"
    legend_constants[178] = "K_ib in component J_scoas (molar)"
    legend_constants[179] = "K_ic in component J_scoas (molar)"
    legend_constants[180] = "K_ip in component J_scoas (molar)"
    legend_constants[181] = "K_iq in component J_scoas (molar)"
    legend_constants[182] = "K_ir in component J_scoas (molar)"
    legend_constants[183] = "K_mA in component J_scoas (molar)"
    legend_constants[184] = "K_mB in component J_scoas (molar)"
    legend_constants[185] = "K_mC in component J_scoas (molar)"
    legend_constants[186] = "K_mP in component J_scoas (molar)"
    legend_constants[187] = "K_mQ in component J_scoas (molar)"
    legend_constants[188] = "K_mR in component J_scoas (molar)"
    legend_algebraic[119] = "J_sdh in component J_sdh (mole_per_second_per_l_mito_volume)"
    legend_algebraic[118] = "COQ_x in component dCOQ_x_dt (molar)"
    legend_states[27] = "QH2_x in component dQH2_x_dt (molar)"
    legend_states[28] = "FUM_x in component dFUM_x_dt (molar)"
    legend_algebraic[67] = "K_eq_sdh in component J_sdh (dimensionless)"
    legend_constants[334] = "K0_eq_sdh in component J_sdh (dimensionless)"
    legend_constants[327] = "dGr0_sdh in component J_sdh (kilojoule_per_mole)"
    legend_algebraic[68] = "V_mr in component J_sdh (mole_per_second_per_l_mito_volume)"
    legend_constants[189] = "K_ia in component J_sdh (molar)"
    legend_constants[190] = "K_iq in component J_sdh (molar)"
    legend_constants[191] = "K_mSUC in component J_sdh (molar)"
    legend_constants[192] = "K_mCOQ in component J_sdh (molar)"
    legend_constants[193] = "K_mQH2 in component J_sdh (molar)"
    legend_constants[194] = "K_mFUM in component J_sdh (molar)"
    legend_algebraic[69] = "alpha_i in component J_sdh (dimensionless)"
    legend_constants[195] = "K_iOAA in component J_sdh (molar)"
    legend_constants[196] = "K_aSUC in component J_sdh (molar)"
    legend_constants[197] = "K_aFUM in component J_sdh (molar)"
    legend_algebraic[73] = "J_fum in component J_fum (mole_per_second_per_l_mito_volume)"
    legend_states[29] = "MAL_x in component dMAL_x_dt (molar)"
    legend_algebraic[70] = "K_eq_fum in component J_fum (dimensionless)"
    legend_constants[342] = "K0_eq_fum in component J_fum (dimensionless)"
    legend_constants[338] = "dGr0_fum in component J_fum (kilojoule_per_mole)"
    legend_algebraic[71] = "V_mr in component J_fum (mole_per_second_per_l_mito_volume)"
    legend_constants[198] = "K_mFUM in component J_fum (molar)"
    legend_constants[199] = "K_mMAL in component J_fum (molar)"
    legend_algebraic[72] = "alpha_i in component J_fum (dimensionless)"
    legend_constants[200] = "K_iCIT in component J_fum (molar)"
    legend_constants[201] = "K_iATP in component J_fum (molar)"
    legend_constants[202] = "K_iADP in component J_fum (molar)"
    legend_constants[203] = "K_iGTP in component J_fum (molar)"
    legend_constants[204] = "K_iGDP in component J_fum (molar)"
    legend_algebraic[117] = "J_mdh in component J_mdh (mole_per_second_per_l_mito_volume)"
    legend_algebraic[74] = "K_eq_mdh in component J_mdh (dimensionless)"
    legend_constants[321] = "K0_eq_mdh in component J_mdh (molar)"
    legend_constants[305] = "dGr0_mdh in component J_mdh (kilojoule_per_mole)"
    legend_algebraic[75] = "V_mr in component J_mdh (mole_per_second_per_l_mito_volume)"
    legend_constants[205] = "K_ia in component J_mdh (molar)"
    legend_constants[206] = "K_ib in component J_mdh (molar)"
    legend_constants[207] = "K_ip in component J_mdh (molar)"
    legend_constants[208] = "K_iq in component J_mdh (molar)"
    legend_constants[209] = "K_mNAD in component J_mdh (molar)"
    legend_constants[210] = "K_mMAL in component J_mdh (molar)"
    legend_constants[211] = "K_mOAA in component J_mdh (molar)"
    legend_constants[212] = "K_mNADH in component J_mdh (molar)"
    legend_algebraic[76] = "alpha_i in component J_mdh (dimensionless)"
    legend_constants[213] = "K_iATP in component J_mdh (molar)"
    legend_constants[214] = "K_iADP in component J_mdh (molar)"
    legend_constants[215] = "K_iAMP in component J_mdh (molar)"
    legend_algebraic[80] = "J_ndk_f in component J_ndk (mole_per_second_per_l_mito_volume)"
    legend_algebraic[81] = "J_ndk in component J_ndk (mole_per_second_per_l_mito_volume)"
    legend_algebraic[77] = "K_eq_ndk in component J_ndk (dimensionless)"
    legend_constants[312] = "K0_eq_ndk in component J_ndk (dimensionless)"
    legend_constants[297] = "dGr0_ndk in component J_ndk (kilojoule_per_mole)"
    legend_algebraic[78] = "V_mr in component J_ndk (mole_per_second_per_l_mito_volume)"
    legend_constants[216] = "K_ia in component J_ndk (molar)"
    legend_constants[217] = "K_ib in component J_ndk (molar)"
    legend_constants[218] = "K_ip in component J_ndk (molar)"
    legend_constants[219] = "K_iq in component J_ndk (molar)"
    legend_constants[220] = "K_mA in component J_ndk (molar)"
    legend_constants[221] = "K_mB in component J_ndk (molar)"
    legend_constants[222] = "K_mP in component J_ndk (molar)"
    legend_constants[223] = "K_mQ in component J_ndk (molar)"
    legend_algebraic[79] = "alpha_i in component J_ndk (dimensionless)"
    legend_constants[224] = "K_iAMP in component J_ndk (molar)"
    legend_constants[225] = "minCon in component J_ndk (molar)"
    legend_algebraic[85] = "J_got_f in component J_got (mole_per_second_per_l_mito_volume)"
    legend_algebraic[86] = "J_got in component J_got (mole_per_second_per_l_mito_volume)"
    legend_states[30] = "ASP_x in component dASP_x_dt (molar)"
    legend_states[31] = "GLU_x in component dGLU_x_dt (molar)"
    legend_algebraic[82] = "K_eq_got in component J_got (dimensionless)"
    legend_constants[328] = "K0_eq_got in component J_got (dimensionless)"
    legend_constants[322] = "dGr0_got in component J_got (kilojoule_per_mole)"
    legend_algebraic[83] = "V_mr in component J_got (mole_per_second_per_l_mito_volume)"
    legend_constants[226] = "K_ia in component J_got (molar)"
    legend_constants[227] = "K_ib in component J_got (molar)"
    legend_constants[228] = "K_ip in component J_got (molar)"
    legend_constants[229] = "K_iq in component J_got (molar)"
    legend_constants[230] = "K_mA in component J_got (molar)"
    legend_constants[231] = "K_mB in component J_got (molar)"
    legend_constants[232] = "K_mP in component J_got (molar)"
    legend_constants[233] = "K_mQ in component J_got (molar)"
    legend_algebraic[84] = "alpha_i in component J_got (dimensionless)"
    legend_constants[234] = "K_iAKG in component J_got (molar)"
    legend_constants[235] = "minCon in component J_got (molar)"
    legend_algebraic[155] = "J_PYRH in component J_PYRH (mole_per_second_per_l_mito_volume)"
    legend_states[32] = "PYR_i in component dPYR_i_dt (molar)"
    legend_algebraic[156] = "J_GLUH in component J_GLUH (mole_per_second_per_l_mito_volume)"
    legend_states[33] = "GLU_i in component dGLU_i_dt (molar)"
    legend_algebraic[175] = "J_CITMAL in component J_CITMAL (mole_per_second_per_l_mito_volume)"
    legend_states[34] = "MAL_i in component dMAL_i_dt (molar)"
    legend_algebraic[87] = "J_AKGMAL in component J_AKGMAL (mole_per_second_per_l_mito_volume)"
    legend_constants[236] = "K_mAKGi in component J_AKGMAL (molar)"
    legend_constants[237] = "K_mAKGx in component J_AKGMAL (molar)"
    legend_constants[238] = "K_mMALi in component J_AKGMAL (molar)"
    legend_constants[239] = "K_mMALx in component J_AKGMAL (molar)"
    legend_states[35] = "AKG_i in component dAKG_i_dt (molar)"
    legend_algebraic[176] = "J_MALPI in component J_MALPI (mole_per_second_per_l_mito_volume)"
    legend_algebraic[158] = "J_ASPGLU in component J_ASPGLU (mole_per_second_per_l_mito_volume)"
    legend_algebraic[157] = "K_eqASPGLU in component J_ASPGLU (dimensionless)"
    legend_constants[285] = "K_hASPGLU in component J_ASPGLU (molar)"
    legend_constants[240] = "K_iASPi in component J_ASPGLU (molar)"
    legend_constants[241] = "K_iASPx in component J_ASPGLU (molar)"
    legend_constants[242] = "K_iGLUi in component J_ASPGLU (molar)"
    legend_constants[243] = "K_iGLUx in component J_ASPGLU (molar)"
    legend_states[36] = "ASP_i in component dASP_i_dt (molar)"
    legend_constants[244] = "m in component J_ASPGLU (dimensionless)"
    legend_constants[245] = "pKa_ASPGLU in component J_ASPGLU (dimensionless)"
    legend_states[37] = "dPsi in component ddPsi_dt (millivolt)"
    legend_algebraic[177] = "J_SUCMAL in component J_SUCMAL (mole_per_second_per_l_mito_volume)"
    legend_states[38] = "SUC_i in component dSUC_i_dt (molar)"
    legend_algebraic[88] = "J_PYRt in component J_PYRt (mole_per_second_per_l_mito_volume)"
    legend_states[39] = "PYR_c in component dPYR_c_dt (molar)"
    legend_algebraic[90] = "J_CITt in component J_CITt (mole_per_second_per_l_mito_volume)"
    legend_states[40] = "CIT_c in component dCIT_c_dt (molar)"
    legend_algebraic[91] = "J_MALt in component J_MALt (mole_per_second_per_l_mito_volume)"
    legend_states[41] = "MAL_c in component dMAL_c_dt (molar)"
    legend_algebraic[89] = "J_AKGt in component J_AKGt (mole_per_second_per_l_mito_volume)"
    legend_states[42] = "AKG_c in component dAKG_c_dt (molar)"
    legend_algebraic[92] = "J_SUCt in component J_SUCt (mole_per_second_per_l_mito_volume)"
    legend_states[43] = "SUC_c in component dSUC_c_dt (molar)"
    legend_algebraic[93] = "J_GLUt in component J_GLUt (mole_per_second_per_l_mito_volume)"
    legend_states[44] = "GLU_c in component dGLU_c_dt (molar)"
    legend_algebraic[94] = "J_ASPt in component J_ASPt (mole_per_second_per_l_mito_volume)"
    legend_states[45] = "ASP_c in component dASP_c_dt (molar)"
    legend_algebraic[15] = "J_FUMt in component J_FUMt (mole_per_second_per_l_mito_volume)"
    legend_constants[246] = "zero in component J_FUMt (micrometer_per_second)"
    legend_states[46] = "FUM_c in component dFUM_c_dt (molar)"
    legend_states[47] = "FUM_i in component dFUM_i_dt (molar)"
    legend_algebraic[16] = "J_ICITt in component J_ICITt (mole_per_second_per_l_mito_volume)"
    legend_states[48] = "ICIT_c in component dICIT_c_dt (molar)"
    legend_states[49] = "ICIT_i in component dICIT_i_dt (molar)"
    legend_algebraic[95] = "J_ADPt in component J_ADPt (mole_per_second_per_l_mito_volume)"
    legend_states[50] = "ADP_i in component dADP_i_dt (molar)"
    legend_algebraic[96] = "J_ATPt in component J_ATPt (mole_per_second_per_l_mito_volume)"
    legend_states[51] = "ATP_i in component dATP_i_dt (molar)"
    legend_algebraic[97] = "J_AMPt in component J_AMPt (mole_per_second_per_l_mito_volume)"
    legend_states[52] = "AMP_c in component dAMP_c_dt (molar)"
    legend_states[53] = "AMP_i in component dAMP_i_dt (molar)"
    legend_algebraic[98] = "J_PIt in component J_PIt (mole_per_second_per_l_mito_volume)"
    legend_states[54] = "PI_c in component dPI_c_dt (molar)"
    legend_algebraic[139] = "J_C1 in component J_C1 (mole_per_second_per_l_mito_volume)"
    legend_constants[287] = "dGr0_C1 in component J_C1 (kilojoule_per_mole)"
    legend_algebraic[100] = "K_eq_C1 in component J_C1 (per_molar)"
    legend_algebraic[138] = "K_app_C1 in component J_C1 (dimensionless)"
    legend_algebraic[122] = "J_C3 in component J_C3 (mole_per_second_per_l_mito_volume)"
    legend_constants[288] = "dGr0_C3 in component J_C3 (kilojoule_per_mole)"
    legend_algebraic[102] = "K_eq_C3 in component J_C3 (molar_squared)"
    legend_algebraic[104] = "K_app_C3 in component J_C3 (dimensionless)"
    legend_algebraic[106] = "QH2_x in component J_C3 (molar)"
    legend_algebraic[120] = "COQ_x in component J_C3 (molar)"
    legend_states[55] = "Cred_i in component dCred_i_dt (molar)"
    legend_algebraic[121] = "Cox_i in component dCox_i_dt (molar)"
    legend_constants[247] = "minCon in component J_C3 (molar)"
    legend_algebraic[141] = "J_C4 in component J_C4 (mole_per_second_per_l_mito_volume)"
    legend_constants[289] = "dGr0_C4 in component J_C4 (kilojoule_per_mole)"
    legend_algebraic[108] = "K_eq_C4 in component J_C4 (dimensionless)"
    legend_algebraic[140] = "K_app_C4 in component J_C4 (dimensionless)"
    legend_algebraic[110] = "O2_x in component J_C4 (molar)"
    legend_states[56] = "O2_x in component dO2_x_dt (molar)"
    legend_constants[248] = "minCon in component J_C4 (molar)"
    legend_algebraic[143] = "J_F1 in component J_F1 (mole_per_second_per_l_mito_volume)"
    legend_constants[290] = "dGr0_F1 in component J_F1 (kilojoule_per_mole)"
    legend_algebraic[112] = "K_eq_F1 in component J_F1 (per_molar_squared)"
    legend_algebraic[142] = "K_app_F1 in component J_F1 (per_molar)"
    legend_algebraic[178] = "J_ANT in component J_ANT (mole_per_second_per_l_mito_volume)"
    legend_constants[249] = "minCond in component J_ANT (molar)"
    legend_algebraic[179] = "J_PIHt in component J_PIHt (mole_per_second_per_l_mito_volume)"
    legend_algebraic[144] = "J_Hle in component J_Hle (mole_per_second_per_l_mito_volume)"
    legend_constants[250] = "minCond in component J_Hle (millivolt)"
    legend_algebraic[181] = "J_KH in component J_KH (mole_per_second_per_l_mito_volume)"
    legend_algebraic[103] = "J_HK in component J_HK (mole_per_second_per_l_cyto_volume)"
    legend_constants[308] = "dGr0_HK in component J_HK (kilojoule_per_mole)"
    legend_states[57] = "GLC_c in component dGLC_c_dt (molar)"
    legend_states[58] = "G6P_c in component dG6P_c_dt (molar)"
    legend_constants[251] = "K_ia in component J_HK (molar)"
    legend_constants[252] = "K_ib in component J_HK (molar)"
    legend_constants[253] = "K_ip in component J_HK (molar)"
    legend_constants[254] = "K_iq in component J_HK (molar)"
    legend_constants[255] = "K_mA in component J_HK (molar)"
    legend_constants[256] = "K_mB in component J_HK (molar)"
    legend_constants[257] = "K_mP in component J_HK (molar)"
    legend_constants[258] = "K_mQ in component J_HK (molar)"
    legend_constants[259] = "Ki_G6P in component J_HK (molar)"
    legend_constants[324] = "K_eq_HK in component J_HK (molar)"
    legend_algebraic[99] = "Kapp_HK in component J_HK (dimensionless)"
    legend_algebraic[101] = "Kapp_HK_m in component J_HK (dimensionless)"
    legend_algebraic[107] = "J_CKc in component J_CKc (mole_per_second_per_l_cyto_volume)"
    legend_constants[260] = "X_CK in component J_CKc (mole_per_second_per_l_cyto_volume_per_molar_per_molar)"
    legend_constants[309] = "K_CK in component J_CKc (per_molar)"
    legend_states[59] = "PCr_c in component dPCr_c_dt (molar)"
    legend_algebraic[105] = "Cr_c in component J_CKc (molar)"
    legend_algebraic[182] = "J_AKi in component J_AK (mole_per_second_per_l_mito_volume)"
    legend_algebraic[111] = "J_AKc in component J_AK (mole_per_second_per_l_mito_volume)"
    legend_constants[261] = "X_AK in component J_AK (mole_per_second_per_l_mito_volume_per_molar_per_molar)"
    legend_constants[380] = "dGr0_AK in component J_AK (kilojoule_per_mole)"
    legend_constants[381] = "K_eq_AK in component J_AK (dimensionless)"
    legend_algebraic[180] = "Kapp_AKi in component J_AK (dimensionless)"
    legend_algebraic[109] = "Kapp_AKc in component J_AK (dimensionless)"
    legend_algebraic[146] = "dNAD_x_dt in component dNAD_x_dt (molar_per_second)"
    legend_algebraic[145] = "dNADH_x_dt in component dNADH_x_dt (molar_per_second)"
    legend_algebraic[148] = "dCOQ_x_dt in component dCOQ_x_dt (molar_per_second)"
    legend_algebraic[147] = "dQH2_x_dt in component dQH2_x_dt (molar_per_second)"
    legend_algebraic[183] = "dATP_x_dt in component dATP_x_dt (molar_per_second)"
    legend_algebraic[184] = "dADP_x_dt in component dADP_x_dt (molar_per_second)"
    legend_constants[262] = "dAMP_x_dt in component dAMP_x_dt (molar_per_second)"
    legend_algebraic[123] = "dGTP_x_dt in component dGTP_x_dt (molar_per_second)"
    legend_algebraic[124] = "dGDP_x_dt in component dGDP_x_dt (molar_per_second)"
    legend_algebraic[185] = "dPI_x_dt in component dPI_x_dt (molar_per_second)"
    legend_algebraic[159] = "dPYR_x_dt in component dPYR_x_dt (molar_per_second)"
    legend_algebraic[125] = "dACCOA_x_dt in component dACCOA_x_dt (molar_per_second)"
    legend_algebraic[186] = "dCIT_x_dt in component dCIT_x_dt (molar_per_second)"
    legend_algebraic[126] = "dICIT_x_dt in component dICIT_x_dt (molar_per_second)"
    legend_algebraic[127] = "dAKG_x_dt in component dAKG_x_dt (molar_per_second)"
    legend_algebraic[128] = "dSCOA_x_dt in component dSCOA_x_dt (molar_per_second)"
    legend_algebraic[129] = "dCOASH_x_dt in component dCOASH_x_dt (molar_per_second)"
    legend_algebraic[187] = "dSUC_x_dt in component dSUC_x_dt (molar_per_second)"
    legend_algebraic[130] = "dFUM_x_dt in component dFUM_x_dt (molar_per_second)"
    legend_algebraic[188] = "dMAL_x_dt in component dMAL_x_dt (molar_per_second)"
    legend_algebraic[131] = "dOAA_x_dt in component dOAA_x_dt (molar_per_second)"
    legend_algebraic[160] = "dGLU_x_dt in component dGLU_x_dt (molar_per_second)"
    legend_algebraic[161] = "dASP_x_dt in component dASP_x_dt (molar_per_second)"
    legend_constants[263] = "dO2_x_dt in component dO2_x_dt (molar_per_second)"
    legend_constants[264] = "dCO2_tot_x_dt in component dCO2_tot_x_dt (molar_per_second)"
    legend_constants[331] = "Rm_cyto in component dPYR_c_dt (mito_per_cyto)"
    legend_constants[335] = "Rm_cyto in component dCIT_c_dt (mito_per_cyto)"
    legend_constants[330] = "Rm_cyto in component dICIT_c_dt (mito_per_cyto)"
    legend_constants[339] = "Rm_cyto in component dAKG_c_dt (mito_per_cyto)"
    legend_constants[343] = "Rm_cyto in component dSUC_c_dt (mito_per_cyto)"
    legend_constants[329] = "Rm_cyto in component dFUM_c_dt (mito_per_cyto)"
    legend_constants[346] = "Rm_cyto in component dMAL_c_dt (mito_per_cyto)"
    legend_constants[348] = "Rm_cyto in component dGLU_c_dt (mito_per_cyto)"
    legend_constants[350] = "Rm_cyto in component dASP_c_dt (mito_per_cyto)"
    legend_constants[352] = "Rm_cyto in component dPI_c_dt (mito_per_cyto)"
    legend_constants[265] = "conversion_factor in component dPI_c_dt (mito_per_cyto)"
    legend_constants[354] = "Rm_cyto in component dATP_c_dt (mito_per_cyto)"
    legend_constants[266] = "conversion_factor in component dATP_c_dt (mito_per_cyto)"
    legend_constants[356] = "Rm_cyto in component dADP_c_dt (mito_per_cyto)"
    legend_constants[267] = "conversion_factor in component dADP_c_dt (mito_per_cyto)"
    legend_constants[358] = "Rm_cyto in component dAMP_c_dt (mito_per_cyto)"
    legend_constants[268] = "conversion_factor in component dAMP_c_dt (mito_per_cyto)"
    legend_constants[310] = "FAD_x in component dFAD_x_dt (molar)"
    legend_constants[269] = "dFAD_x_dt in component dFAD_x_dt (molar_per_second)"
    legend_constants[270] = "dFADH2_x_dt in component dFAD_x_dt (molar_per_second)"
    legend_constants[291] = "FADH2_x in component dFAD_x_dt (molar)"
    legend_constants[292] = "dH_x_dt in component dH_x_dt (molar_per_second)"
    legend_algebraic[206] = "D in component BINDING_IONS (dimensionless)"
    legend_algebraic[200] = "phi_H in component BINDING_IONS (molar_per_second)"
    legend_algebraic[201] = "phi_Mg in component BINDING_IONS (molar_per_second)"
    legend_algebraic[202] = "phi_K in component BINDING_IONS (molar_per_second)"
    legend_algebraic[189] = "dHB_dMg in component BINDING_IONS (dimensionless)"
    legend_algebraic[190] = "dHB_dK in component BINDING_IONS (dimensionless)"
    legend_algebraic[193] = "dMgB_dK in component BINDING_IONS (dimensionless)"
    legend_algebraic[196] = "dKB_dMg in component BINDING_IONS (dimensionless)"
    legend_algebraic[205] = "alpha_K in component BINDING_IONS (dimensionless)"
    legend_algebraic[204] = "alpha_Mg in component BINDING_IONS (dimensionless)"
    legend_constants[293] = "dMg_x_dt in component dMg_x_dt (molar_per_second)"
    legend_algebraic[203] = "alpha_H in component BINDING_IONS (dimensionless)"
    legend_algebraic[195] = "dKB_dH in component BINDING_IONS (dimensionless)"
    legend_algebraic[192] = "dMgB_dH in component BINDING_IONS (dimensionless)"
    legend_constants[294] = "dK_x_dt in component dK_x_dt (molar_per_second)"
    legend_algebraic[191] = "dHB_dH in component BINDING_IONS (dimensionless)"
    legend_algebraic[194] = "dMgB_dMg in component BINDING_IONS (dimensionless)"
    legend_algebraic[197] = "dKB_dK in component BINDING_IONS (dimensionless)"
    legend_algebraic[198] = "J_H_t in component BINDING_IONS (molar_per_second)"
    legend_constants[295] = "J_Mg_t in component BINDING_IONS (molar_per_second)"
    legend_algebraic[199] = "J_K_t in component BINDING_IONS (molar_per_second)"
    legend_constants[271] = "B_x in component BINDING_IONS (molar)"
    legend_constants[272] = "K_BX in component BINDING_IONS (molar)"
    legend_rates[37] = "d/dt dPsi in component ddPsi_dt (millivolt)"
    legend_rates[0] = "d/dt ATP_x in component dATP_x_dt (molar)"
    legend_rates[8] = "d/dt ADP_x in component dADP_x_dt (molar)"
    legend_rates[10] = "d/dt AMP_x in component dAMP_x_dt (molar)"
    legend_rates[11] = "d/dt GTP_x in component dGTP_x_dt (molar)"
    legend_rates[12] = "d/dt GDP_x in component dGDP_x_dt (molar)"
    legend_rates[13] = "d/dt PI_x in component dPI_x_dt (molar)"
    legend_rates[21] = "d/dt NADH_x in component dNADH_x_dt (molar)"
    legend_rates[27] = "d/dt QH2_x in component dQH2_x_dt (molar)"
    legend_rates[17] = "d/dt PYR_x in component dPYR_x_dt (molar)"
    legend_rates[20] = "d/dt ACCOA_x in component dACCOA_x_dt (molar)"
    legend_rates[15] = "d/dt CIT_x in component dCIT_x_dt (molar)"
    legend_rates[24] = "d/dt ICIT_x in component dICIT_x_dt (molar)"
    legend_rates[25] = "d/dt AKG_x in component dAKG_x_dt (molar)"
    legend_rates[23] = "d/dt SCOA_x in component dSCOA_x_dt (molar)"
    legend_rates[18] = "d/dt COASH_x in component dCOASH_x_dt (molar)"
    legend_rates[26] = "d/dt SUC_x in component dSUC_x_dt (molar)"
    legend_rates[28] = "d/dt FUM_x in component dFUM_x_dt (molar)"
    legend_rates[29] = "d/dt MAL_x in component dMAL_x_dt (molar)"
    legend_rates[22] = "d/dt OAA_x in component dOAA_x_dt (molar)"
    legend_rates[31] = "d/dt GLU_x in component dGLU_x_dt (molar)"
    legend_rates[30] = "d/dt ASP_x in component dASP_x_dt (molar)"
    legend_rates[56] = "d/dt O2_x in component dO2_x_dt (molar)"
    legend_rates[19] = "d/dt CO2_tot_x in component dCO2_tot_x_dt (molar)"
    legend_rates[55] = "d/dt Cred_i in component dCred_i_dt (molar)"
    legend_rates[51] = "d/dt ATP_i in component dATP_i_dt (molar)"
    legend_rates[50] = "d/dt ADP_i in component dADP_i_dt (molar)"
    legend_rates[53] = "d/dt AMP_i in component dAMP_i_dt (molar)"
    legend_rates[14] = "d/dt PI_i in component dPI_i_dt (molar)"
    legend_rates[32] = "d/dt PYR_i in component dPYR_i_dt (molar)"
    legend_rates[16] = "d/dt CIT_i in component dCIT_i_dt (molar)"
    legend_rates[49] = "d/dt ICIT_i in component dICIT_i_dt (molar)"
    legend_rates[35] = "d/dt AKG_i in component dAKG_i_dt (molar)"
    legend_rates[38] = "d/dt SUC_i in component dSUC_i_dt (molar)"
    legend_rates[47] = "d/dt FUM_i in component dFUM_i_dt (molar)"
    legend_rates[34] = "d/dt MAL_i in component dMAL_i_dt (molar)"
    legend_rates[33] = "d/dt GLU_i in component dGLU_i_dt (molar)"
    legend_rates[36] = "d/dt ASP_i in component dASP_i_dt (molar)"
    legend_rates[39] = "d/dt PYR_c in component dPYR_c_dt (molar)"
    legend_rates[40] = "d/dt CIT_c in component dCIT_c_dt (molar)"
    legend_rates[48] = "d/dt ICIT_c in component dICIT_c_dt (molar)"
    legend_rates[42] = "d/dt AKG_c in component dAKG_c_dt (molar)"
    legend_rates[43] = "d/dt SUC_c in component dSUC_c_dt (molar)"
    legend_rates[46] = "d/dt FUM_c in component dFUM_c_dt (molar)"
    legend_rates[41] = "d/dt MAL_c in component dMAL_c_dt (molar)"
    legend_rates[44] = "d/dt GLU_c in component dGLU_c_dt (molar)"
    legend_rates[45] = "d/dt ASP_c in component dASP_c_dt (molar)"
    legend_rates[5] = "d/dt H_c in component dH_c_dt (molar)"
    legend_rates[6] = "d/dt Mg_c in component dMg_c_dt (molar)"
    legend_rates[7] = "d/dt K_c in component dK_c_dt (molar)"
    legend_rates[54] = "d/dt PI_c in component dPI_c_dt (molar)"
    legend_rates[4] = "d/dt ATP_c in component dATP_c_dt (molar)"
    legend_rates[9] = "d/dt ADP_c in component dADP_c_dt (molar)"
    legend_rates[57] = "d/dt GLC_c in component dGLC_c_dt (molar)"
    legend_rates[58] = "d/dt G6P_c in component dG6P_c_dt (molar)"
    legend_rates[59] = "d/dt PCr_c in component dPCr_c_dt (molar)"
    legend_rates[52] = "d/dt AMP_c in component dAMP_c_dt (molar)"
    legend_rates[1] = "d/dt H_x in component dH_x_dt (molar)"
    legend_rates[2] = "d/dt Mg_x in component dMg_x_dt (molar)"
    legend_rates[3] = "d/dt K_x in component dK_x_dt (molar)"
    return (legend_states, legend_algebraic, legend_voi, legend_constants)

def initConsts():
    constants = [0.0] * sizeConstants; states = [0.0] * sizeStates;
    constants[0] = 1
    constants[1] = 2
    constants[2] = 0.096484
    constants[3] = 0.651384
    constants[4] = 0.072376
    constants[5] = 5.99
    constants[6] = 2.725e5
    constants[7] = 3
    constants[8] = 327
    constants[9] = 85
    constants[10] = 85
    constants[11] = 3.5e-6
    constants[12] = 0.6
    constants[13] = 1.2e-4
    constants[14] = 2.97e-3
    constants[15] = 1.35e-3
    constants[16] = 2.7e-3
    constants[17] = 10e-3
    constants[18] = 42.7e-3
    constants[19] = 21.4e-3
    constants[20] = 1e-4
    constants[21] = 6.75e-6
    constants[22] = 0.205093643103884
    constants[23] = 9.82530750761898
    constants[24] = 0.027665411180519
    constants[25] = 0.492047553306503
    constants[26] = 0.087630003425524
    constants[27] = 6.04e-7
    constants[28] = 0.448520452008943
    constants[29] = 0.08578867843174
    constants[30] = 0.00707728025683
    constants[31] = 0.077060004692409
    constants[32] = 0.025543515147654
    constants[33] = 4.551391837332316
    constants[34] = 2.996779273769102e8
    constants[35] = 2.725114215177993e8
    constants[36] = 80.432110322866379
    constants[37] = 0.282091450119444
    constants[38] = 96.995618247389871
    constants[39] = 16.062441848715917
    constants[40] = 5.865621634754698e-5
    constants[41] = 3.236481869934019e4
    constants[42] = 0.790813746051711
    constants[43] = 3.248913595933763e-5
    constants[44] = 0.003474542589709
    constants[45] = 1.076088893810943e-4
    constants[46] = 8.120393248498723e3
    constants[47] = 0.007522124149343
    constants[48] = 3.335568500871044e7
    constants[49] = 0.00161251709168
    constants[50] = 4.758023126099895e6
    constants[51] = 3.02092849850504e2
    constants[52] = 0
    constants[53] = -235.74
    constants[54] = 16.4
    constants[55] = 39.31
    constants[56] = 18.1
    constants[57] = -23.3
    constants[58] = 65.17
    constants[59] = -2771
    constants[60] = -1903.96
    constants[61] = -1034.66
    constants[62] = -2771
    constants[63] = -1903.96
    constants[64] = -27.41
    constants[65] = -6.52
    constants[66] = -1098.27
    constants[67] = 0
    constants[68] = -252.68
    constants[69] = -67.6
    constants[70] = 19.55
    constants[71] = -0.72
    constants[72] = -178.19
    constants[73] = -794.74
    constants[74] = -1165.59
    constants[75] = -1158.94
    constants[76] = -793.41
    constants[77] = -507.55
    constants[78] = -690.44
    constants[79] = -603.32
    constants[80] = -842.66
    constants[81] = -692.26
    constants[82] = -692.4
    constants[83] = -530.71
    constants[84] = -470.82
    constants[85] = -907.21
    constants[86] = -1758.87
    states[0] = 1.025e-11
    states[1] = 5.7919e-8
    states[2] = 0.0046388
    states[3] = 0.086878
    states[4] = 1e-9
    states[5] = 1e-7
    states[6] = 0.005
    states[7] = 0.15
    states[8] = 0.01
    states[9] = 1e-9
    states[10] = 1e-6
    states[11] = 2.7157e-10
    states[12] = 0.005
    states[13] = 2.9918e-4
    states[14] = 1.1574e-4
    constants[87] = 1e20
    constants[88] = 1e20
    constants[89] = 1e20
    constants[90] = 1e20
    states[15] = 6.815100000000001e-5
    states[16] = 1e-9
    constants[91] = 1e20
    constants[92] = 1e20
    constants[93] = 1e20
    constants[94] = 1e20
    constants[95] = 1e20
    constants[96] = 1e20
    constants[97] = 1e20
    constants[98] = 1e20
    constants[99] = 1e20
    constants[100] = 1e20
    constants[101] = 1e20
    constants[102] = 1e20
    constants[103] = 1e20
    constants[104] = 1e20
    constants[105] = 1e20
    constants[106] = 1e20
    constants[107] = 1e20
    constants[108] = 1e20
    constants[109] = 1e20
    constants[110] = 1e20
    constants[111] = 1e20
    constants[112] = 1e20
    constants[113] = 1e20
    constants[114] = 1e20
    constants[115] = 1e20
    constants[116] = 1e20
    constants[117] = 1e20
    constants[118] = 1e20
    constants[119] = 1e20
    constants[120] = 1e20
    constants[121] = 1e20
    constants[122] = 1e20
    constants[123] = 1e20
    constants[124] = 1e20
    constants[125] = 1e20
    constants[126] = 1e20
    constants[127] = 1e20
    constants[128] = 1e20
    constants[129] = 1e20
    constants[130] = 1e20
    constants[131] = 1e20
    constants[132] = 1e20
    constants[133] = 1e20
    constants[134] = 1e20
    constants[135] = 1e20
    constants[136] = 1e20
    constants[137] = 1e20
    constants[138] = 1e20
    constants[139] = 1e20
    constants[140] = 1e20
    constants[141] = 1e20
    constants[142] = 1e20
    states[17] = 1.2076e-11
    states[18] = 0.0030107
    states[19] = 0.0214
    states[20] = 2.5507e-12
    states[21] = 8.484200000000001e-21
    constants[143] = 38.3e-6
    constants[144] = 9.9e-6
    constants[145] = 60.7e-6
    constants[146] = 40.2e-6
    constants[147] = 40e-6
    constants[148] = 1e-32
    states[22] = 8.9236e-4
    states[23] = 6.9627e-10
    constants[149] = 4e-6
    constants[150] = 14e-6
    constants[151] = 3.33e-6
    constants[152] = 1600e-6
    constants[153] = 900e-6
    constants[154] = 1800e-6
    constants[155] = 6000e-6
    constants[156] = 67e-6
    constants[157] = 140e-6
    states[24] = 9.3558e-7
    constants[158] = 1161e-6
    constants[159] = 434e-6
    states[25] = 4.7979e-11
    constants[160] = 74e-6
    constants[161] = 183e-6
    constants[162] = 23.8e-6
    constants[163] = 29e-6
    constants[164] = 3
    constants[165] = 91e-6
    constants[166] = 50e-6
    constants[167] = 1e-32
    constants[168] = 80e-6
    constants[169] = 55e-6
    constants[170] = 21e-6
    constants[171] = 6.9e-6
    constants[172] = 6.010527470838273e-7
    constants[173] = 1e3
    constants[174] = 50e-6
    constants[175] = 100e-6
    constants[176] = 1e-32
    states[26] = 2.1681e-7
    constants[177] = 5.5e-6
    constants[178] = 100e-6
    constants[179] = 2000e-6
    constants[180] = 20e-6
    constants[181] = 3000e-6
    constants[182] = 11.1e-6
    constants[183] = 16e-6
    constants[184] = 55e-6
    constants[185] = 660e-6
    constants[186] = 20e-6
    constants[187] = 880e-6
    constants[188] = 11.1e-6
    states[27] = 0
    states[28] = 7.8476e-9
    constants[189] = 120e-6
    constants[190] = 1275e-6
    constants[191] = 467e-6
    constants[192] = 480e-6
    constants[193] = 2.45e-6
    constants[194] = 1200e-6
    constants[195] = 1.5e-6
    constants[196] = 450e-6
    constants[197] = 375e-6
    states[29] = 3.2191e-8
    constants[198] = 44.7e-6
    constants[199] = 197.7e-6
    constants[200] = 3500e-6
    constants[201] = 40e-6
    constants[202] = 400e-6
    constants[203] = 80e-6
    constants[204] = 330e-6
    constants[205] = 279e-6
    constants[206] = 360e-6
    constants[207] = 5.5e-6
    constants[208] = 3.18e-6
    constants[209] = 90.55e-6
    constants[210] = 250e-6
    constants[211] = 6.128e-6
    constants[212] = 2.58e-6
    constants[213] = 183.2e-6
    constants[214] = 394.4e-6
    constants[215] = 420e-6
    constants[216] = 170e-6
    constants[217] = 143.6e-6
    constants[218] = 146.6e-6
    constants[219] = 156.5e-6
    constants[220] = 111e-6
    constants[221] = 100e-6
    constants[222] = 260e-6
    constants[223] = 278e-6
    constants[224] = 650e-6
    constants[225] = 1e-32
    states[30] = 1.0217e-4
    states[31] = 9.9311e-12
    constants[226] = 3480e-6
    constants[227] = 710e-6
    constants[228] = 50e-6
    constants[229] = 8400e-6
    constants[230] = 3900e-6
    constants[231] = 430e-6
    constants[232] = 88e-6
    constants[233] = 8900e-6
    constants[234] = 16.6e-3
    constants[235] = 1e-32
    states[32] = 9.1804e-10
    states[33] = 5.7539e-12
    states[34] = 1e-9
    constants[236] = 0.3e-3
    constants[237] = 0.17e-3
    constants[238] = 1.4e-3
    constants[239] = 0.7e-3
    states[35] = 9.999500000000001e-10
    constants[240] = 28e-6
    constants[241] = 2.8e-3
    constants[242] = 180e-6
    constants[243] = 1.6e-3
    states[36] = 4.4404e-9
    constants[244] = 1.8
    constants[245] = 6.5
    states[37] = -14.087
    states[38] = 1e-9
    states[39] = 1e-9
    states[40] = 1e-9
    states[41] = 1e-9
    states[42] = 1e-9
    states[43] = 1e-9
    states[44] = 5.754e-12
    states[45] = 4.4404e-9
    constants[246] = 0
    states[46] = 1e-9
    states[47] = 1e-9
    states[48] = 1e-9
    states[49] = 1e-9
    states[50] = 1e-9
    states[51] = 1e-9
    states[52] = 1e-9
    states[53] = 1e-9
    states[54] = 1.1574e-4
    states[55] = 9.6996e-8
    constants[247] = 1e-32
    states[56] = 6.499999999999999e-5
    constants[248] = 1e-32
    constants[249] = 1e-9
    constants[250] = 1e-9
    states[57] = 1e-9
    states[58] = 1e-9
    constants[251] = 1e-3
    constants[252] = 47e-6
    constants[253] = 47e-6
    constants[254] = 1e-3
    constants[255] = 1e-3
    constants[256] = 47e-6
    constants[257] = 47e-6
    constants[258] = 1e-3
    constants[259] = 10e-6
    constants[260] = 1e7
    states[59] = 1e-9
    constants[261] = 1e7
    constants[262] = 0
    constants[263] = 0
    constants[264] = 0
    constants[265] = 1
    constants[266] = 1
    constants[267] = 1
    constants[268] = 1
    constants[269] = 0
    constants[270] = 0
    constants[271] = 0.02
    constants[272] = 1e-7
    constants[273] = custom_piecewise([equal(constants[0] , 1.00000) & equal(constants[1] , 3.00000), 0.107108 , True, 0.00000])
    constants[274] = custom_piecewise([equal(constants[0] , 1.00000), (8.31400*(28.0000+273.150))/1000.00 , True, (8.31400*(37.0000+273.150))/1000.00])
    constants[275] = 1.00000
    constants[276] = 1.00000
    constants[277] = 1.00000
    constants[278] = 1.00000
    constants[279] = 1.00000
    constants[280] = 1.00000
    constants[281] = 1.00000
    constants[282] = 1.00000
    constants[283] = 1.00000
    constants[284] = 1.00000
    constants[285] = 1.00000*(power(10.0000, -constants[245]))
    constants[286] = custom_piecewise([equal(constants[0] , 1.00000), 80.0000 , equal(constants[0] , 2.00000), 800.000 , equal(constants[0] , 3.00000) | equal(constants[0] , 4.00000), 0.807000*1.04400 , True, 80.0000])
    constants[287] = ((constants[56]+constants[57])-constants[55])-constants[58]
    constants[288] = ((constants[58]+2.00000*constants[64])-constants[57])-2.00000*constants[65]
    constants[289] = ((2.00000*constants[65]+constants[53])-2.00000*constants[64])-0.500000*constants[54]
    constants[290] = ((constants[59]+constants[53])-constants[60])-constants[66]
    constants[291] = constants[20]/2.00000
    constants[292] = 0.00000
    constants[293] = 0.00000
    constants[294] = 0.00000
    constants[295] = 0.00000
    constants[382] = 0.00000
    constants[383] = 0.00000
    constants[384] = 0.00000
    constants[385] = 0.00000
    constants[386] = 0.00000
    constants[387] = 0.00000
    constants[296] = 1.00000*(power(10.0000, -6.59000))
    constants[297] = ((constants[63]+constants[59])-constants[62])-constants[60]
    constants[298] = ((((constants[83]+constants[72]+constants[55])-constants[84])-constants[71])-constants[56])-constants[53]
    constants[299] = (((constants[71]+constants[74])-constants[72])-constants[73])-constants[53]
    constants[300] = constants[75]-constants[74]
    constants[301] = (((constants[76]+constants[55]+constants[83])-constants[75])-constants[56])-constants[53]
    constants[302] = ((((constants[83]+constants[77]+constants[55])-constants[76])-constants[71])-constants[56])-constants[53]
    constants[303] = (((constants[71]+constants[78]+constants[62])-constants[63])-constants[77])-constants[66]
    constants[304] = 1.00000
    constants[305] = ((constants[73]+constants[55])-constants[56])-constants[80]
    constants[306] = 1.00000
    constants[307] = custom_piecewise([equal(constants[0] , 3.00000), 0.288200 , equal(constants[0] , 4.00000), 0.0560000 , True, 0.00000])
    constants[308] = ((constants[86]+constants[60])-constants[85])-constants[59]
    constants[309] = exp(50.7800/constants[274])/1.00000
    constants[310] = constants[20]-constants[291]
    constants[311] = 1.00000*(power(10.0000, -3.82000))
    constants[312] = exp(-constants[297]/constants[274])
    constants[313] = constants[296]
    constants[314] = 1.00000*exp(-constants[298]/constants[274])
    constants[315] = 1.00000*exp(-constants[299]/constants[274])
    constants[316] = exp(-constants[300]/constants[274])
    constants[317] = 1.00000*exp(-constants[301]/constants[274])
    constants[318] = 1.00000*exp(-constants[302]/constants[274])
    constants[319] = 1.00000*exp(-constants[303]/constants[274])
    constants[320] = 1.00000
    constants[321] = 1.00000*exp(-constants[305]/constants[274])
    constants[322] = ((constants[73]+constants[82])-constants[81])-constants[76]
    constants[323] = custom_piecewise([equal(constants[0] , 3.00000), 0.680100 , equal(constants[0] , 4.00000), 0.894000 , True, 1.00000])
    constants[324] = 1.00000*exp(-constants[308]/constants[274])
    constants[325] = 1.00000*(power(10.0000, -1.01300))
    constants[326] = constants[311]
    constants[327] = ((constants[57]+constants[79])-constants[78])-constants[58]
    constants[328] = exp(-constants[322]/constants[274])
    constants[329] = custom_piecewise([equal(constants[1] , 0.00000) | equal(constants[0] , 5.00000), 0.00000 , equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 6.00000), 1.00000 , True, constants[307]/constants[323]])
    constants[330] = custom_piecewise([equal(constants[1] , 0.00000) | equal(constants[0] , 5.00000), 0.00000 , equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 6.00000), 1.00000 , True, constants[307]/constants[323]])
    constants[331] = custom_piecewise([equal(constants[1] , 0.00000) | equal(constants[0] , 3.00000) | equal(constants[0] , 4.00000) | equal(constants[0] , 5.00000), 0.00000 , equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 6.00000), 1.00000 , True, constants[307]/constants[323]])
    constants[332] = 1.00000*(power(10.0000, -6.42000))
    constants[333] = constants[325]
    constants[334] = exp(-constants[327]/constants[274])
    constants[335] = custom_piecewise([equal(constants[1] , 0.00000) | equal(constants[0] , 5.00000), 0.00000 , equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 6.00000), 1.00000 , True, constants[307]/constants[323]])
    constants[336] = 1.00000*(power(10.0000, -2.79000))
    constants[337] = constants[332]
    constants[338] = (constants[80]-constants[79])-constants[53]
    constants[339] = custom_piecewise([equal(constants[1] , 0.00000) | equal(constants[0] , 5.00000), 0.00000 , equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 6.00000), 1.00000 , True, constants[307]/constants[323]])
    constants[340] = 1.00000*(power(10.0000, -0.882000))
    constants[341] = constants[336]
    constants[342] = exp(-constants[338]/constants[274])
    constants[343] = custom_piecewise([equal(constants[1] , 0.00000) | equal(constants[0] , 5.00000), 0.00000 , equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 6.00000), 1.00000 , True, constants[307]/constants[323]])
    constants[344] = 1.00000*(power(10.0000, -6.22000))
    constants[345] = constants[340]
    constants[346] = custom_piecewise([equal(constants[1] , 0.00000) | equal(constants[0] , 5.00000), 0.00000 , equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 6.00000), 1.00000 , True, constants[307]/constants[323]])
    constants[347] = 1.00000*(power(10.0000, -1.86000))
    constants[348] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000) | equal(constants[0] , 6.00000), 1.00000 , True, constants[307]/constants[323]])
    constants[349] = 1.00000*(power(10.0000, -0.621500))
    constants[350] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000) | equal(constants[0] , 6.00000), 1.00000 , True, constants[307]/constants[323]])
    constants[351] = 1.00000*(power(10.0000, -6.71000))
    constants[352] = constants[307]/constants[323]
    constants[353] = 1.00000*(power(10.0000, -1.69000))
    constants[354] = constants[307]/constants[323]
    constants[355] = 1.00000*(power(10.0000, 0.00740000))
    constants[356] = constants[307]/constants[323]
    constants[357] = 1.00000*(power(10.0000, -8.13000))
    constants[358] = constants[307]/constants[323]
    constants[359] = 1.00000*(power(10.0000, -0.862900))
    constants[360] = 1.00000*(power(10.0000, -5.63000))
    constants[361] = 1.00000*(power(10.0000, -3.37000))
    constants[362] = 1.00000*(power(10.0000, -0.339000))
    constants[363] = 1.00000*(power(10.0000, -5.64000))
    constants[364] = 1.00000*(power(10.0000, -2.46000))
    constants[365] = 1.00000*(power(10.0000, -3.96000))
    constants[366] = 1.00000*(power(10.0000, -5.13000))
    constants[367] = 1.00000*(power(10.0000, -1.17000))
    constants[368] = 1.00000*(power(10.0000, -0.352500))
    constants[369] = 1.00000*(power(10.0000, -4.10000))
    constants[370] = 1.00000*(power(10.0000, -4.75000))
    constants[371] = 1.00000*(power(10.0000, -1.55000))
    constants[372] = 1.00000*(power(10.0000, 0.107000))
    constants[373] = 1.00000*(power(10.0000, -9.82000))
    constants[374] = 1.00000*(power(10.0000, -1.02000))
    constants[375] = 1.00000*(power(10.0000, -5.91000))
    constants[376] = 1.00000*(power(10.0000, -4.06000))
    constants[377] = 1.00000*(power(10.0000, -1.82000))
    constants[378] = 1.00000*(power(10.0000, -3.65000))
    constants[379] = 1.00000*(power(10.0000, -2.32000))
    constants[380] = (constants[59]+constants[61])-2.00000*constants[60]
    constants[381] = exp(-constants[380]/constants[274])
    return (states, constants)

def computeRates(voi, states, constants):
    rates = [0.0] * sizeStates; algebraic = [0.0] * sizeAlgebraic
    rates[10] = constants[382]
    rates[56] = constants[383]
    rates[19] = constants[384]
    rates[5] = constants[385]
    rates[6] = constants[386]
    rates[7] = constants[387]
    algebraic[16] = constants[5]*constants[10]*(states[48]-states[49])
    rates[49] = algebraic[16]/constants[4]
    algebraic[15] = constants[5]*constants[246]*(states[46]-states[47])
    rates[47] = algebraic[15]/constants[4]
    rates[48] = (-constants[330]*algebraic[16])/constants[286]
    rates[46] = (-constants[329]*algebraic[15])/constants[286]
    algebraic[0] = 1.00000+states[1]/constants[296]+states[2]/constants[311]+states[3]/constants[325]
    algebraic[29] = algebraic[0]
    algebraic[21] = 1.00000+states[1]/constants[332]+states[2]/constants[336]+states[3]/constants[340]
    algebraic[31] = algebraic[21]
    algebraic[33] = 1.00000+states[1]/constants[351]+states[2]/constants[353]+states[3]/constants[355]
    algebraic[35] = 1.00000+states[1]/constants[357]
    algebraic[41] = 1.00000+states[1]/constants[365]
    algebraic[42] = 1.00000+states[1]/constants[366]+states[2]/constants[367]+states[3]/constants[368]
    algebraic[64] = (constants[319]*algebraic[35]*algebraic[42]*algebraic[29])/(states[1]*algebraic[31]*algebraic[41]*algebraic[33])
    algebraic[65] = (constants[28]*constants[186]*constants[181]*constants[182])/(algebraic[64]*constants[177]*constants[178]*constants[185])
    algebraic[66] = (constants[28]*algebraic[65]*(states[12]*states[23]*states[13]-(states[18]*states[26]*states[11])/algebraic[64]))/(algebraic[65]*constants[177]*constants[178]*constants[185]+algebraic[65]*constants[178]*constants[185]*states[12]+algebraic[65]*constants[177]*constants[184]*states[13]+algebraic[65]*constants[185]*states[12]*states[23]+algebraic[65]*constants[184]*states[12]*states[13]+algebraic[65]*constants[183]*states[23]*states[13]+algebraic[65]*states[12]*states[23]*states[13]+(constants[28]*constants[182]*constants[187]*states[18])/algebraic[64]+(constants[28]*constants[181]*constants[186]*states[11])/algebraic[64]+(constants[28]*constants[188]*states[18]*states[26])/algebraic[64]+(constants[28]*constants[187]*states[18]*states[11])/algebraic[64]+(constants[28]*constants[186]*states[26]*states[11])/algebraic[64]+(constants[28]*states[18]*states[26]*states[11])/algebraic[64]+(constants[28]*constants[187]*constants[182]*states[12]*states[18])/(constants[177]*algebraic[64])+(algebraic[65]*constants[177]*constants[184]*states[13]*states[11])/constants[182]+(constants[28]*constants[187]*constants[182]*states[12]*states[23]*states[18])/(constants[177]*constants[178]*algebraic[64])+(algebraic[65]*constants[183]*states[23]*states[13]*states[11])/constants[182]+(constants[28]*constants[188]*states[12]*states[18]*states[26])/(constants[177]*algebraic[64])+(algebraic[65]*constants[177]*constants[184]*states[13]*states[26]*states[11])/(constants[181]*constants[182])+(constants[28]*constants[182]*constants[187]*states[12]*states[23]*states[13]*states[18])/(constants[177]*constants[178]*constants[179]*algebraic[64])+(constants[28]*constants[180]*constants[188]*states[12]*states[23]*states[13]*states[26])/(constants[177]*constants[178]*constants[179]*algebraic[64])+(constants[28]*constants[188]*states[12]*states[23]*states[18]*states[26])/(constants[177]*constants[178]*algebraic[64])+(algebraic[65]*constants[183]*states[23]*states[13]*states[26]*states[11])/(constants[181]*constants[182])+(algebraic[65]*constants[183]*constants[179]*states[23]*states[18]*states[26]*states[11])/(constants[180]*constants[181]*constants[182])+(algebraic[65]*constants[177]*constants[184]*states[13]*states[18]*states[26]*states[11])/(constants[180]*constants[181]*constants[182])+(constants[28]*constants[188]*states[12]*states[23]*states[13]*states[18]*states[26])/(constants[177]*constants[178]*constants[179]*algebraic[64])+(algebraic[65]*constants[183]*states[23]*states[13]*states[18]*states[26]*states[11])/(constants[180]*constants[181]*constants[182]))
    algebraic[77] = (constants[312]*algebraic[31]*algebraic[0])/(algebraic[29]*algebraic[21])
    algebraic[78] = (constants[32]*constants[223]*constants[218])/(algebraic[77]*constants[216]*constants[221])
    algebraic[26] = 1.00000+states[1]/constants[344]+states[2]/constants[347]+states[3]/constants[349]
    algebraic[28] = (states[10]*(1.00000+states[1]/constants[344]))/algebraic[26]
    algebraic[79] = 1.00000+algebraic[28]/constants[224]
    algebraic[80] = custom_piecewise([greater(states[11] , constants[225]) & greater(states[8] , constants[225]), (((constants[32]*algebraic[78])/algebraic[79])*states[11]*states[8])/(algebraic[78]*constants[221]*states[11]+algebraic[78]*constants[220]*states[8]+(constants[32]*constants[223]*states[12])/algebraic[77]+(constants[32]*constants[222]*states[0])/algebraic[77]+algebraic[78]*states[11]*states[8]+(constants[32]*constants[223]*states[11]*states[12])/(algebraic[77]*constants[216])+(constants[32]*states[12]*states[0])/algebraic[77]+(algebraic[78]*constants[220]*states[8]*states[0])/constants[219]) , True, 0.00000])
    algebraic[81] = custom_piecewise([greater(states[12] , constants[225]) & greater(states[0] , constants[225]), algebraic[80]-((((constants[32]*algebraic[78])/algebraic[79])*states[12]*states[0])/algebraic[77])/(algebraic[78]*constants[221]*states[11]+algebraic[78]*constants[220]*states[8]+(constants[32]*constants[223]*states[12])/algebraic[77]+(constants[32]*constants[222]*states[0])/algebraic[77]+algebraic[78]*states[11]*states[8]+(constants[32]*constants[223]*states[11]*states[12])/(algebraic[77]*constants[216])+(constants[32]*states[12]*states[0])/algebraic[77]+(algebraic[78]*constants[220]*states[8]*states[0])/constants[219]) , True, algebraic[80]])
    rates[11] = (algebraic[66]-algebraic[81])/constants[3]
    rates[12] = (-algebraic[66]+algebraic[81])/constants[3]
    algebraic[87] = (constants[37]*(states[35]*states[29]-states[25]*states[34]))/(constants[236]*constants[239]*(2.00000+states[34]/constants[238]+states[29]/constants[239]+states[35]/constants[236]+states[25]/constants[237]+(states[34]*states[25])/(constants[238]*constants[237])+(states[29]*states[35])/(constants[239]*constants[236])))
    algebraic[89] = constants[5]*constants[10]*(states[42]-states[35])
    rates[35] = (-algebraic[87]+algebraic[89])/constants[4]
    algebraic[88] = constants[5]*constants[10]*(states[39]-states[32])
    rates[39] = (-constants[331]*algebraic[88])/constants[286]
    rates[42] = (-constants[339]*algebraic[89])/constants[286]
    algebraic[90] = constants[5]*constants[10]*(states[40]-states[16])
    rates[40] = (-constants[335]*algebraic[90])/constants[286]
    algebraic[91] = constants[5]*constants[10]*(states[41]-states[34])
    rates[41] = (-constants[346]*algebraic[91])/constants[286]
    algebraic[92] = constants[5]*constants[10]*(states[43]-states[38])
    rates[43] = (-constants[343]*algebraic[92])/constants[286]
    algebraic[93] = constants[5]*constants[10]*(states[44]-states[33])
    rates[44] = (-constants[348]*algebraic[93])/constants[286]
    algebraic[94] = constants[5]*constants[10]*(states[45]-states[36])
    rates[45] = (-constants[350]*algebraic[94])/constants[286]
    algebraic[98] = constants[5]*constants[8]*(states[54]-states[14])
    rates[54] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000) | equal(constants[0] , 6.00000), (-algebraic[98]*constants[265])/constants[286] , True, (constants[352]*algebraic[98]+constants[52])/constants[286]])
    algebraic[17] = 1.00000+states[5]/constants[296]+states[6]/constants[311]+states[7]/constants[325]
    algebraic[20] = ((states[4]*states[6])/constants[311])/algebraic[17]
    algebraic[22] = 1.00000+states[5]/constants[332]+states[6]/constants[336]+states[7]/constants[340]
    algebraic[25] = ((states[9]*states[6])/constants[336])/algebraic[22]
    algebraic[47] = 1.00000+states[5]/constants[375]
    algebraic[99] = (constants[324]*algebraic[47]*algebraic[22])/(states[5]*algebraic[17]*constants[275])
    algebraic[101] = (algebraic[99]*constants[311]*algebraic[17])/(constants[336]*algebraic[22])
    algebraic[103] = ((constants[273]/(constants[252]*constants[255]))*(algebraic[20]*states[57]-(states[58]*algebraic[25])/algebraic[101]))/(1.00000+algebraic[20]/constants[251]+states[57]/constants[252]+(algebraic[20]*states[57])/(constants[252]*constants[255])+states[58]/constants[253]+algebraic[25]/constants[254]+(states[58]*algebraic[25])/(constants[254]*constants[257])+(states[58]*states[57])/(constants[259]*constants[252]))
    rates[57] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000) | equal(constants[0] , 6.00000), (-(1.00000+constants[286]/1.00000)*algebraic[103])/constants[286] , True, 0.00000])
    rates[58] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000) | equal(constants[0] , 6.00000), ((1.00000+constants[286]/1.00000)*algebraic[103])/constants[286] , True, 0.00000])
    algebraic[105] = constants[18]-states[59]
    algebraic[107] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000), 0.00000 , True, constants[260]*(((constants[309]*states[9])/algebraic[22])*states[59]*states[5]-(states[4]/algebraic[17])*algebraic[105])])
    rates[59] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000) | equal(constants[0] , 6.00000), 0.00000 , True, -algebraic[107]/constants[286]])
    algebraic[96] = constants[5]*constants[9]*(states[4]-states[51])
    algebraic[27] = 1.00000+states[5]/constants[344]+states[6]/constants[347]+states[7]/constants[349]
    algebraic[109] = (constants[381]*algebraic[17]*algebraic[27])/(algebraic[22]*algebraic[22])
    algebraic[111] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000), 0.00000 , True, constants[261]*(algebraic[109]*states[9]*states[9]-states[52]*states[4])])
    rates[4] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000) | equal(constants[0] , 6.00000), (-(1.00000+constants[286]/1.00000)*algebraic[103]-constants[266]*algebraic[96])/constants[286] , True, ((-constants[354]*algebraic[96]+algebraic[107]+constants[266]*algebraic[111])-constants[52])/constants[286]])
    algebraic[95] = constants[5]*constants[9]*(states[9]-states[50])
    rates[9] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000) | equal(constants[0] , 6.00000), ((1.00000+constants[286]/1.00000)*algebraic[103]-constants[267]*algebraic[95])/constants[286] , True, (((-constants[356]*algebraic[95]-algebraic[107])-2.00000*constants[267]*algebraic[111])+constants[52])/constants[286]])
    algebraic[97] = constants[5]*constants[9]*(states[52]-states[53])
    rates[52] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000) | equal(constants[0] , 6.00000), 0.00000 , True, (-constants[358]*algebraic[97]+constants[268]*algebraic[111])/constants[286]])
    algebraic[113] = constants[14]-states[21]
    algebraic[45] = 1.00000+states[1]/constants[373]
    algebraic[46] = 1.00000+states[2]/constants[374]
    algebraic[50] = (constants[314]*algebraic[45]*constants[278]*constants[277])/(states[1]*algebraic[46]*algebraic[35]*constants[276])
    algebraic[51] = 1.00000+states[20]/constants[146]
    algebraic[52] = 1.00000+states[21]/constants[147]
    algebraic[114] = custom_piecewise([greater(states[17] , constants[148]) & greater(states[18] , constants[148]) & greater(algebraic[113] , constants[148]), (constants[22]*(states[17]*states[18]*algebraic[113]-(states[19]*states[20]*states[21])/algebraic[50]))/(constants[145]*algebraic[52]*states[17]*states[18]+constants[144]*algebraic[51]*states[17]*algebraic[113]+constants[143]*states[18]*algebraic[113]+states[17]*states[18]*algebraic[113]) , True, 0.00000])
    algebraic[36] = 1.00000+states[2]/constants[359]
    algebraic[37] = 1.00000+states[1]/constants[360]+states[2]/constants[361]+states[3]/constants[362]
    algebraic[53] = (constants[315]*algebraic[37]*algebraic[35])/((power(states[1], 2.00000))*constants[278]*algebraic[36])
    algebraic[38] = (states[15]*(1.00000+states[1]/constants[360]))/algebraic[37]
    algebraic[54] = 1.00000+algebraic[38]/constants[152]
    algebraic[18] = (states[0]*(1.00000+states[1]/constants[296]))/algebraic[0]
    algebraic[23] = (states[8]*(1.00000+states[1]/constants[332]))/algebraic[21]
    algebraic[55] = 1.00000+algebraic[18]/constants[153]+algebraic[23]/constants[154]+algebraic[28]/constants[155]+states[18]/constants[156]+states[23]/constants[157]
    algebraic[56] = (constants[23]*(states[20]*states[22]-(states[18]*states[15])/algebraic[53]))/(constants[151]*constants[150]*algebraic[54]+constants[149]*algebraic[54]*states[20]+constants[150]*algebraic[55]*states[22]+states[22]*states[20])
    rates[20] = (algebraic[114]-algebraic[56])/constants[3]
    algebraic[40] = 1.00000+states[1]/constants[363]+states[2]/constants[364]
    algebraic[57] = (constants[316]*algebraic[40])/algebraic[37]
    algebraic[58] = (constants[24]*constants[159])/(constants[158]*algebraic[57])
    algebraic[59] = (constants[24]*algebraic[58]*(states[15]-states[24]/algebraic[57]))/(constants[158]*algebraic[58]+algebraic[58]*states[15]+(constants[24]*states[24])/algebraic[57])
    algebraic[60] = (constants[317]*algebraic[45]*constants[306]*constants[277])/((power(states[1], 2.00000))*constants[276]*algebraic[40])
    algebraic[61] = 1.00000+(constants[166]/algebraic[23])*(1.00000+algebraic[18]/constants[165])
    algebraic[115] = custom_piecewise([greater(algebraic[113] , constants[167]) & greater(states[24] , constants[167]), (constants[25]*(1.00000-(states[19]*states[25]*states[21])/(algebraic[60]*algebraic[113]*states[24])))/(1.00000+(power(constants[161]/states[24], constants[164]))*algebraic[61]+(constants[160]/algebraic[113])*(1.00000+(power(constants[162]/states[24], constants[164]))*algebraic[61]+(states[21]*algebraic[61])/constants[163])) , True, 0.00000])
    rates[24] = (algebraic[59]-algebraic[115])/constants[3]
    algebraic[62] = (constants[318]*algebraic[45]*algebraic[41]*constants[277])/(states[1]*algebraic[35]*constants[306]*constants[276])
    algebraic[63] = 1.00000+(constants[175]/algebraic[23])*(1.00000+algebraic[18]/constants[174])
    algebraic[116] = custom_piecewise([greater(states[25] , constants[176]) & greater(states[18] , constants[176]) & greater(algebraic[113] , constants[176]), ((constants[26]*(1.00000-(states[19]*states[23]*states[21])/(algebraic[62]*states[25]*states[18]*algebraic[113])))/(1.00000+(constants[168]/states[25])*algebraic[63]+(constants[169]/states[18])*(1.00000+states[23]/constants[171])+(constants[170]/algebraic[113])*(1.00000+states[21]/constants[172])))/(1.00000+states[21]/constants[173]) , True, 0.00000])
    algebraic[48] = 1.00000+states[1]/constants[376]+states[2]/constants[377]
    algebraic[49] = 1.00000+states[1]/constants[378]+states[2]/constants[379]
    algebraic[82] = (constants[328]*algebraic[48]*algebraic[36])/(algebraic[49]*constants[306])
    algebraic[83] = (constants[33]*constants[233]*constants[228])/(algebraic[82]*constants[226]*constants[231])
    algebraic[84] = 1.00000+states[25]/constants[234]
    algebraic[85] = custom_piecewise([greater(states[30] , constants[235]) & greater(states[25] , constants[235]), (constants[33]*algebraic[83]*states[30]*states[25])/(algebraic[83]*constants[231]*states[30]+algebraic[83]*constants[230]*algebraic[84]*states[25]+(constants[33]*constants[233]*algebraic[84]*states[22])/algebraic[82]+(constants[33]*constants[232]*states[31])/algebraic[82]+algebraic[83]*states[30]*states[25]+(constants[33]*constants[233]*states[30]*states[22])/(algebraic[82]*constants[226])+(constants[33]*states[22]*states[31])/algebraic[82]+(algebraic[83]*constants[230]*states[25]*states[31])/constants[229]) , True, 0.00000])
    algebraic[86] = custom_piecewise([greater(states[22] , constants[235]) & greater(states[31] , constants[235]), algebraic[85]-((constants[33]*algebraic[83]*states[22]*states[31])/algebraic[82])/(algebraic[83]*constants[231]*states[30]+algebraic[83]*constants[230]*algebraic[84]*states[25]+(constants[33]*constants[233]*algebraic[84]*states[22])/algebraic[82]+(constants[33]*constants[232]*states[31])/algebraic[82]+algebraic[83]*states[30]*states[25]+(constants[33]*constants[233]*states[30]*states[22])/(algebraic[82]*constants[226])+(constants[33]*states[22]*states[31])/algebraic[82]+(algebraic[83]*constants[230]*states[25]*states[31])/constants[229]) , True, algebraic[85]])
    rates[25] = (((algebraic[115]-algebraic[116])-algebraic[86])+algebraic[87])/constants[3]
    rates[23] = (algebraic[116]-algebraic[66])/constants[3]
    rates[18] = ((-algebraic[114]-algebraic[116])+algebraic[66]+algebraic[56])/constants[3]
    algebraic[44] = 1.00000+states[1]/constants[370]+states[2]/constants[371]+states[3]/constants[372]
    algebraic[74] = (constants[321]*algebraic[36]*constants[277])/(states[1]*algebraic[44]*constants[276])
    algebraic[75] = (constants[31]*constants[208]*constants[211])/(algebraic[74]*constants[205]*constants[210])
    algebraic[76] = 1.00000+algebraic[18]/constants[213]+algebraic[23]/constants[214]+algebraic[28]/constants[215]
    algebraic[117] = (constants[31]*algebraic[75]*(algebraic[113]*states[29]-(states[22]*states[21])/algebraic[74]))/(algebraic[75]*constants[205]*constants[210]*algebraic[76]+algebraic[75]*constants[210]*algebraic[113]+algebraic[75]*constants[209]*algebraic[76]*states[29]+(constants[31]*constants[212]*algebraic[76]*states[22])/algebraic[74]+(constants[31]*constants[211]*states[21])/algebraic[74]+algebraic[75]*algebraic[113]*states[29]+(constants[31]*constants[212]*algebraic[113]*states[22])/(algebraic[74]*constants[205])+(constants[31]*states[22]*states[21])/algebraic[74]+(algebraic[75]*constants[209]*states[29]*states[21])/constants[208]+(algebraic[75]*algebraic[113]*states[29]*states[22])/constants[207]+(constants[31]*states[29]*states[22]*states[21])/(constants[206]*algebraic[74]))
    rates[22] = (-algebraic[56]+algebraic[117]+algebraic[86])/constants[3]
    algebraic[118] = constants[15]-states[27]
    algebraic[43] = 1.00000+states[1]/constants[369]
    algebraic[67] = (constants[334]*algebraic[43]*constants[304])/(algebraic[42]*constants[320])
    algebraic[68] = (constants[29]*constants[193]*constants[190])/(algebraic[67]*constants[189]*constants[192])
    algebraic[69] = (1.00000+states[22]/constants[195]+states[26]/constants[196]+states[28]/constants[197])/(1.00000+states[26]/constants[196]+states[28]/constants[197])
    algebraic[119] = (constants[29]*algebraic[68]*(states[26]*algebraic[118]-(states[27]*states[28])/algebraic[67]))/(algebraic[68]*constants[189]*constants[192]*algebraic[69]+algebraic[68]*constants[192]*states[26]+algebraic[68]*constants[191]*algebraic[69]*algebraic[118]+(constants[29]*constants[194]*algebraic[69]*states[27])/algebraic[67]+(constants[29]*constants[193]*states[28])/algebraic[67]+algebraic[68]*states[26]*algebraic[118]+(constants[29]*constants[194]*states[26]*states[27])/(algebraic[67]*constants[189])+(algebraic[68]*constants[191]*algebraic[118]*states[28])/constants[190]+(constants[29]*states[27]*states[28])/algebraic[67])
    algebraic[70] = (constants[342]*algebraic[44])/algebraic[43]
    algebraic[71] = (constants[30]*constants[199])/(algebraic[70]*constants[198])
    algebraic[30] = (states[11]*(1.00000+states[1]/constants[313]))/algebraic[29]
    algebraic[32] = (states[12]*(1.00000+states[1]/constants[337]))/algebraic[31]
    algebraic[72] = 1.00000+states[15]/constants[200]+algebraic[18]/constants[201]+algebraic[23]/constants[202]+algebraic[30]/constants[203]+algebraic[32]/constants[204]
    algebraic[73] = (algebraic[71]*constants[30]*(states[28]-states[29]/algebraic[70]))/(constants[198]*algebraic[71]*algebraic[72]+algebraic[71]*states[28]+(constants[30]*states[29])/algebraic[70])
    rates[28] = (algebraic[119]-algebraic[73])/constants[3]
    algebraic[132] = states[5]
    algebraic[100] = 1.00000*exp(-(constants[287]+4.00000*constants[2]*states[37])/constants[274])
    algebraic[138] = (algebraic[100]*(power(states[1], 5.00000)))/(power(algebraic[132], 4.00000))
    algebraic[139] = constants[41]*(algebraic[138]*states[21]*algebraic[118]-algebraic[113]*states[27])
    rates[21] = ((algebraic[114]+algebraic[115]+algebraic[116]+algebraic[117])-algebraic[139])/constants[3]
    algebraic[102] = 1.00000*exp(-(constants[288]+2.00000*constants[2]*states[37])/constants[274])
    algebraic[104] = (algebraic[102]*(power(states[1], 2.00000)))/(power(states[1], 4.00000))
    algebraic[106] = custom_piecewise([greater(states[27] , constants[247]), states[27] , True, constants[247]])
    algebraic[120] = custom_piecewise([greater(algebraic[118] , constants[247]), algebraic[118] , True, constants[247]])
    algebraic[121] = constants[16]-states[55]
    algebraic[122] = ((constants[42]*(1.00000+states[13]/constants[43]))/(1.00000+states[13]/constants[44]))*((power(algebraic[104], 1.0/2))*algebraic[121]*(power(algebraic[106], 1.0/2))-states[55]*(power(algebraic[120], 1.0/2)))
    rates[27] = ((algebraic[119]+algebraic[139])-algebraic[122])/constants[3]
    algebraic[108] = exp(-(constants[289]+4.00000*constants[2]*states[37])/constants[274])
    algebraic[140] = (algebraic[108]*(power(states[1], 4.00000)))/((power(algebraic[132], 2.00000))*(power(1.00000, 2.00000)))
    algebraic[110] = custom_piecewise([greater(states[56] , constants[248]), states[56] , True, constants[248]])
    algebraic[141] = constants[45]*((algebraic[110]/(algebraic[110]+constants[13]))*exp((constants[2]*states[37])/constants[274])*(states[55]/constants[16]))*((power(algebraic[140], 1.00000/2.00000))*states[55]*(power(algebraic[110]/1.00000, 1.00000/4.00000))-algebraic[121])
    rates[55] = (2.00000*algebraic[122]-2.00000*algebraic[141])/constants[4]
    algebraic[149] = states[6]
    algebraic[152] = 1.00000+algebraic[149]/constants[374]
    algebraic[155] = constants[34]*((states[32]/algebraic[152])*algebraic[132]-(states[17]/algebraic[46])*states[1])
    rates[17] = (-algebraic[114]+algebraic[155])/constants[3]
    rates[32] = (-algebraic[155]+algebraic[88])/constants[4]
    algebraic[153] = 1.00000+algebraic[132]/constants[376]+algebraic[149]/constants[377]
    algebraic[156] = constants[35]*((states[33]/algebraic[153])*algebraic[132]-(states[31]/algebraic[48])*states[1])
    algebraic[154] = 1.00000+algebraic[132]/constants[378]+algebraic[149]/constants[379]
    algebraic[157] = (exp((-constants[2]*states[37])/constants[274])*algebraic[49]*algebraic[153])/(algebraic[154]*algebraic[48])
    algebraic[158] = (constants[40]*(algebraic[157]*states[36]*states[31]*states[1]-states[30]*states[33]*algebraic[132]))/(algebraic[157]*constants[240]*constants[243]*constants[285]*(2.00000*constants[244]+(constants[244]*states[36])/constants[240]+(states[36]*states[31]*states[1])/(constants[240]*constants[243]*constants[285])+(constants[244]*states[30]*algebraic[132])/(constants[241]*constants[285])+(states[30]*states[33]*algebraic[132])/(constants[241]*constants[242]*constants[285])+(constants[244]*states[30])/constants[241]+(constants[244]*states[36]*states[1])/(constants[240]*constants[285])+(constants[244]*states[1])/constants[285]+(constants[244]*states[33]*algebraic[132])/(constants[242]*constants[285])+(constants[244]*algebraic[132])/constants[285]+(constants[244]*states[31]*states[1])/(constants[243]*constants[285])))
    rates[31] = ((algebraic[86]+algebraic[156])-algebraic[158])/constants[3]
    rates[30] = (-algebraic[86]+algebraic[158])/constants[3]
    rates[33] = (-algebraic[156]+algebraic[158]+algebraic[93])/constants[4]
    rates[36] = (-algebraic[158]+algebraic[94])/constants[4]
    algebraic[39] = ((states[15]*states[1])/constants[360])/algebraic[37]
    algebraic[162] = states[7]
    algebraic[170] = 1.00000+algebraic[132]/constants[360]+algebraic[149]/constants[361]+algebraic[162]/constants[362]
    algebraic[172] = ((states[16]*algebraic[132])/constants[360])/algebraic[170]
    algebraic[174] = 1.00000+algebraic[132]/constants[370]+algebraic[149]/constants[371]+algebraic[162]/constants[372]
    algebraic[175] = constants[36]*((algebraic[172]*states[29])/algebraic[44]-(algebraic[39]*states[34])/algebraic[174])
    rates[15] = (-algebraic[59]+algebraic[175]+algebraic[56])/constants[3]
    rates[16] = (-algebraic[175]+algebraic[90])/constants[4]
    algebraic[173] = 1.00000+algebraic[132]/constants[366]+algebraic[149]/constants[367]+algebraic[162]/constants[368]
    algebraic[177] = constants[38]*(((states[38]/algebraic[173])*states[29])/algebraic[44]-((states[26]/algebraic[42])*states[34])/algebraic[174])
    rates[26] = ((algebraic[66]-algebraic[119])+algebraic[177])/constants[3]
    algebraic[168] = 1.00000+algebraic[132]/constants[351]+algebraic[149]/constants[353]+algebraic[162]/constants[355]
    algebraic[176] = constants[39]*(((states[34]/algebraic[174])*states[13])/algebraic[33]-((states[29]/algebraic[44])*states[14])/algebraic[168])
    rates[29] = (((((algebraic[73]-algebraic[117])+algebraic[176])-algebraic[87])-algebraic[175])-algebraic[177])/constants[3]
    rates[38] = (algebraic[92]-algebraic[177])/constants[4]
    rates[34] = (-algebraic[176]+algebraic[91]+algebraic[87]+algebraic[175]+algebraic[177])/constants[4]
    algebraic[112] = exp(-(constants[290]-constants[7]*constants[2]*states[37])/constants[274])/1.00000
    algebraic[142] = (((algebraic[112]*(power(algebraic[132], constants[7])))/(power(states[1], constants[7]-1.00000)))*algebraic[0])/(algebraic[21]*algebraic[33])
    algebraic[143] = constants[46]*(algebraic[142]*states[8]*states[13]-states[0])
    algebraic[163] = 1.00000+algebraic[132]/constants[296]+algebraic[149]/constants[311]+algebraic[162]/constants[325]
    algebraic[165] = 1.00000+algebraic[132]/constants[332]+algebraic[149]/constants[336]+algebraic[162]/constants[340]
    algebraic[178] = custom_piecewise([greater(states[50] , constants[249]) & greater(states[0] , constants[249]), constants[47]*((states[50]/algebraic[165])/(states[50]/algebraic[165]+(states[51]/algebraic[163])*exp((constants[12]*constants[2]*states[37])/constants[274]))-(states[8]/algebraic[21])/(states[8]/algebraic[21]+(states[0]/algebraic[0])*exp((constants[12]*(constants[2]-1.00000)*states[37])/constants[274])))*((states[50]/algebraic[165])/(states[50]/algebraic[165]+constants[11])) , True, 0.00000])
    algebraic[144] = custom_piecewise([greater(fabs(states[37]) , constants[250]), (constants[51]*states[37]*(algebraic[132]*exp((constants[2]*states[37])/constants[274])-states[1]))/(exp((constants[2]*states[37])/constants[274])-1.00000) , True, (constants[51]*constants[274]*(algebraic[132]-states[1]))/constants[2]])
    rates[37] = (((((4.00000*algebraic[139]+2.00000*algebraic[122]+4.00000*algebraic[141])-constants[7]*algebraic[143])-algebraic[178])-algebraic[144])+algebraic[158])/constants[21]
    rates[0] = ((algebraic[81]+algebraic[143])-algebraic[178])/constants[3]
    rates[8] = ((-algebraic[81]-algebraic[143])+algebraic[178])/constants[3]
    algebraic[34] = ((states[13]*states[1])/constants[351])/algebraic[33]
    algebraic[169] = ((states[14]*algebraic[132])/constants[351])/algebraic[168]
    algebraic[179] = (constants[48]*(algebraic[169]*algebraic[132]-algebraic[34]*states[1]))/(constants[49]*(1.00000+algebraic[169]/constants[49])*(1.00000+algebraic[34]/constants[49]))
    rates[13] = (((-algebraic[66]-algebraic[143])+algebraic[179])-algebraic[176])/constants[3]
    rates[14] = (-algebraic[179]+algebraic[98]+algebraic[176])/constants[4]
    algebraic[167] = 1.00000+algebraic[132]/constants[344]+algebraic[149]/constants[347]+algebraic[162]/constants[349]
    algebraic[180] = (constants[381]*algebraic[163]*algebraic[167])/(algebraic[165]*algebraic[165])
    algebraic[182] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000), 0.00000 , True, constants[261]*(algebraic[180]*states[50]*states[50]-states[53]*states[51])])
    rates[51] = (algebraic[96]+algebraic[178]+algebraic[182])/constants[4]
    rates[50] = ((algebraic[95]-algebraic[178])-2.00000*algebraic[182])/constants[4]
    rates[53] = (algebraic[97]+algebraic[182])/constants[4]
    algebraic[189] = -((states[1]*states[1])/(constants[134]*constants[135]*(power(constants[282], 2.00000)))+(states[1]*states[0])/(constants[296]*constants[311]*(power(algebraic[0], 2.00000)))+(states[1]*states[8])/(constants[332]*constants[336]*(power(algebraic[21], 2.00000)))+(states[1]*states[10])/(constants[344]*constants[347]*(power(algebraic[26], 2.00000)))+(states[1]*states[11])/(constants[296]*constants[311]*(power(algebraic[29], 2.00000)))+(states[1]*states[12])/(constants[332]*constants[336]*(power(algebraic[31], 2.00000)))+(states[1]*states[13])/(constants[351]*constants[353]*(power(algebraic[33], 2.00000)))+(states[1]*states[21])/(constants[110]*constants[111]*(power(constants[277], 2.00000)))+(states[1]*algebraic[113])/(constants[107]*constants[108]*(power(constants[276], 2.00000)))+(states[1]*states[27])/(constants[113]*constants[114]*(power(constants[304], 2.00000)))+(states[1]*algebraic[118])/(constants[116]*constants[117]*(power(constants[320], 2.00000)))+(states[1]*states[17])/(constants[98]*constants[374]*(power(algebraic[46], 2.00000)))+(states[1]*states[22])/(constants[89]*constants[359]*(power(algebraic[36], 2.00000)))+(states[1]*states[20])/(constants[119]*constants[120]*(power(constants[278], 2.00000)))+(states[1]*states[15])/(constants[360]*constants[361]*(power(algebraic[37], 2.00000)))+(states[1]*states[24])/(constants[363]*constants[364]*(power(algebraic[40], 2.00000)))+(states[1]*states[25])/(constants[122]*constants[123]*(power(constants[306], 2.00000)))+(states[1]*states[23])/(constants[365]*constants[92]*(power(algebraic[41], 2.00000)))+(states[1]*states[18])/(constants[357]*constants[87]*(power(algebraic[35], 2.00000)))+(states[1]*states[26])/(constants[366]*constants[367]*(power(algebraic[42], 2.00000)))+(states[1]*states[28])/(constants[369]*constants[94]*(power(algebraic[43], 2.00000)))+(states[1]*states[29])/(constants[370]*constants[371]*(power(algebraic[44], 2.00000)))+(states[1]*states[31])/(constants[376]*constants[377]*(power(algebraic[48], 2.00000)))+(states[1]*states[30])/(constants[378]*constants[379]*(power(algebraic[49], 2.00000)))+(states[1]*states[3])/(constants[140]*constants[141]*(power(constants[284], 2.00000)))+(states[1]*states[2])/(constants[137]*constants[138]*(power(constants[283], 2.00000)))+(states[1]*states[56])/(constants[125]*constants[126]*(power(constants[279], 2.00000)))+(states[1]*constants[291])/(constants[128]*constants[129]*(power(constants[280], 2.00000)))+(states[1]*constants[310])/(constants[131]*constants[132]*(power(constants[281], 2.00000)))+(states[1]*states[19])/(constants[373]*constants[96]*(power(algebraic[45], 2.00000))))
    algebraic[190] = -((states[1]*states[1])/(constants[134]*constants[136]*(power(constants[282], 2.00000)))+(states[1]*states[0])/(constants[296]*constants[325]*(power(algebraic[0], 2.00000)))+(states[1]*states[8])/(constants[332]*constants[340]*(power(algebraic[21], 2.00000)))+(states[1]*states[10])/(constants[344]*constants[349]*(power(algebraic[26], 2.00000)))+(states[1]*states[11])/(constants[296]*constants[325]*(power(algebraic[29], 2.00000)))+(states[1]*states[12])/(constants[332]*constants[340]*(power(algebraic[31], 2.00000)))+(states[1]*states[13])/(constants[351]*constants[355]*(power(algebraic[33], 2.00000)))+(states[1]*states[21])/(constants[110]*constants[112]*(power(constants[277], 2.00000)))+(states[1]*algebraic[113])/(constants[107]*constants[109]*(power(constants[276], 2.00000)))+(states[1]*states[27])/(constants[113]*constants[115]*(power(constants[304], 2.00000)))+(states[1]*algebraic[118])/(constants[116]*constants[118]*(power(constants[320], 2.00000)))+(states[1]*states[17])/(constants[98]*constants[99]*(power(algebraic[46], 2.00000)))+(states[1]*states[22])/(constants[89]*constants[90]*(power(algebraic[36], 2.00000)))+(states[1]*states[20])/(constants[119]*constants[121]*(power(constants[278], 2.00000)))+(states[1]*states[15])/(constants[360]*constants[362]*(power(algebraic[37], 2.00000)))+(states[1]*states[24])/(constants[363]*constants[91]*(power(algebraic[40], 2.00000)))+(states[1]*states[25])/(constants[122]*constants[124]*(power(constants[306], 2.00000)))+(states[1]*states[23])/(constants[365]*constants[93]*(power(algebraic[41], 2.00000)))+(states[1]*states[18])/(constants[357]*constants[88]*(power(algebraic[35], 2.00000)))+(states[1]*states[26])/(constants[366]*constants[368]*(power(algebraic[42], 2.00000)))+(states[1]*states[28])/(constants[369]*constants[95]*(power(algebraic[43], 2.00000)))+(states[1]*states[29])/(constants[370]*constants[372]*(power(algebraic[44], 2.00000)))+(states[1]*states[31])/(constants[376]*constants[102]*(power(algebraic[48], 2.00000)))+(states[1]*states[30])/(constants[378]*constants[103]*(power(algebraic[49], 2.00000)))+(states[1]*states[3])/(constants[140]*constants[142]*(power(constants[284], 2.00000)))+(states[1]*states[2])/(constants[137]*constants[139]*(power(constants[283], 2.00000)))+(states[1]*states[56])/(constants[125]*constants[127]*(power(constants[279], 2.00000)))+(states[1]*constants[291])/(constants[128]*constants[130]*(power(constants[280], 2.00000)))+(states[1]*constants[310])/(constants[131]*constants[133]*(power(constants[281], 2.00000)))+(states[1]*states[19])/(constants[373]*constants[97]*(power(algebraic[45], 2.00000))))
    algebraic[193] = -((states[2]*states[1])/(constants[135]*constants[136]*(power(constants[282], 2.00000)))+(states[2]*states[0])/(constants[311]*constants[325]*(power(algebraic[0], 2.00000)))+(states[2]*states[8])/(constants[336]*constants[340]*(power(algebraic[21], 2.00000)))+(states[2]*states[10])/(constants[347]*constants[349]*(power(algebraic[26], 2.00000)))+(states[2]*states[11])/(constants[311]*constants[325]*(power(algebraic[29], 2.00000)))+(states[2]*states[12])/(constants[336]*constants[340]*(power(algebraic[31], 2.00000)))+(states[2]*states[13])/(constants[353]*constants[355]*(power(algebraic[33], 2.00000)))+(states[2]*states[21])/(constants[111]*constants[112]*(power(constants[277], 2.00000)))+(states[2]*algebraic[113])/(constants[108]*constants[109]*(power(constants[276], 2.00000)))+(states[2]*states[27])/(constants[114]*constants[115]*(power(constants[304], 2.00000)))+(states[2]*algebraic[118])/(constants[117]*constants[118]*(power(constants[320], 2.00000)))+(states[2]*states[17])/(constants[374]*constants[99]*(power(algebraic[46], 2.00000)))+(states[2]*states[22])/(constants[359]*constants[90]*(power(algebraic[36], 2.00000)))+(states[2]*states[20])/(constants[120]*constants[121]*(power(constants[278], 2.00000)))+(states[2]*states[15])/(constants[361]*constants[362]*(power(algebraic[37], 2.00000)))+(states[2]*states[24])/(constants[364]*constants[91]*(power(algebraic[40], 2.00000)))+(states[2]*states[25])/(constants[123]*constants[124]*(power(constants[306], 2.00000)))+(states[2]*states[23])/(constants[92]*constants[93]*(power(algebraic[41], 2.00000)))+(states[2]*states[18])/(constants[87]*constants[88]*(power(algebraic[35], 2.00000)))+(states[2]*states[26])/(constants[367]*constants[368]*(power(algebraic[42], 2.00000)))+(states[2]*states[28])/(constants[94]*constants[95]*(power(algebraic[43], 2.00000)))+(states[2]*states[29])/(constants[371]*constants[372]*(power(algebraic[44], 2.00000)))+(states[2]*states[31])/(constants[377]*constants[102]*(power(algebraic[48], 2.00000)))+(states[2]*states[30])/(constants[379]*constants[103]*(power(algebraic[49], 2.00000)))+(states[2]*states[3])/(constants[141]*constants[142]*(power(constants[284], 2.00000)))+(states[2]*states[2])/(constants[138]*constants[139]*(power(constants[283], 2.00000)))+(states[2]*states[56])/(constants[126]*constants[127]*(power(constants[279], 2.00000)))+(states[2]*constants[291])/(constants[129]*constants[130]*(power(constants[280], 2.00000)))+(states[2]*constants[310])/(constants[132]*constants[133]*(power(constants[281], 2.00000)))+(states[2]*states[19])/(constants[96]*constants[97]*(power(algebraic[45], 2.00000))))
    algebraic[196] = -((states[3]*states[1])/(constants[136]*constants[135]*(power(constants[282], 2.00000)))+(states[3]*states[0])/(constants[325]*constants[311]*(power(algebraic[0], 2.00000)))+(states[3]*states[8])/(constants[340]*constants[336]*(power(algebraic[21], 2.00000)))+(states[3]*states[10])/(constants[349]*constants[347]*(power(algebraic[26], 2.00000)))+(states[3]*states[11])/(constants[325]*constants[311]*(power(algebraic[29], 2.00000)))+(states[3]*states[12])/(constants[340]*constants[336]*(power(algebraic[31], 2.00000)))+(states[3]*states[13])/(constants[355]*constants[353]*(power(algebraic[33], 2.00000)))+(states[3]*states[21])/(constants[112]*constants[111]*(power(constants[277], 2.00000)))+(states[3]*algebraic[113])/(constants[109]*constants[108]*(power(constants[276], 2.00000)))+(states[3]*states[27])/(constants[115]*constants[114]*(power(constants[304], 2.00000)))+(states[3]*algebraic[118])/(constants[118]*constants[117]*(power(constants[320], 2.00000)))+(states[3]*states[17])/(constants[99]*constants[374]*(power(algebraic[46], 2.00000)))+(states[3]*states[22])/(constants[90]*constants[359]*(power(algebraic[36], 2.00000)))+(states[3]*states[20])/(constants[121]*constants[120]*(power(constants[278], 2.00000)))+(states[3]*states[15])/(constants[362]*constants[361]*(power(algebraic[37], 2.00000)))+(states[3]*states[24])/(constants[91]*constants[364]*(power(algebraic[40], 2.00000)))+(states[3]*states[25])/(constants[124]*constants[123]*(power(constants[306], 2.00000)))+(states[3]*states[23])/(constants[93]*constants[92]*(power(algebraic[41], 2.00000)))+(states[3]*states[18])/(constants[88]*constants[87]*(power(algebraic[35], 2.00000)))+(states[3]*states[26])/(constants[368]*constants[367]*(power(algebraic[42], 2.00000)))+(states[3]*states[28])/(constants[95]*constants[94]*(power(algebraic[43], 2.00000)))+(states[3]*states[29])/(constants[372]*constants[371]*(power(algebraic[44], 2.00000)))+(states[3]*states[31])/(constants[102]*constants[377]*(power(algebraic[48], 2.00000)))+(states[3]*states[30])/(constants[103]*constants[379]*(power(algebraic[49], 2.00000)))+(states[3]*states[3])/(constants[142]*constants[141]*(power(constants[284], 2.00000)))+(states[3]*states[2])/(constants[139]*constants[138]*(power(constants[283], 2.00000)))+(states[3]*states[56])/(constants[127]*constants[126]*(power(constants[279], 2.00000)))+(states[3]*constants[291])/(constants[130]*constants[129]*(power(constants[280], 2.00000)))+(states[3]*constants[310])/(constants[133]*constants[132]*(power(constants[281], 2.00000)))+(states[3]*states[19])/(constants[97]*constants[96]*(power(algebraic[45], 2.00000))))
    algebraic[197] = ((1.00000+states[1]/constants[134]+states[2]/constants[135])*states[1])/(constants[136]*(power(constants[282], 2.00000)))+((1.00000+states[1]/constants[296]+states[2]/constants[311])*states[0])/(constants[325]*(power(algebraic[0], 2.00000)))+((1.00000+states[1]/constants[332]+states[2]/constants[336])*states[8])/(constants[340]*(power(algebraic[21], 2.00000)))+((1.00000+states[1]/constants[344]+states[2]/constants[347])*states[10])/(constants[349]*(power(algebraic[26], 2.00000)))+((1.00000+states[1]/constants[296]+states[2]/constants[311])*states[11])/(constants[325]*(power(algebraic[29], 2.00000)))+((1.00000+states[1]/constants[332]+states[2]/constants[336])*states[12])/(constants[340]*(power(algebraic[31], 2.00000)))+((1.00000+states[1]/constants[351]+states[2]/constants[353])*states[13])/(constants[355]*(power(algebraic[33], 2.00000)))+((1.00000+states[1]/constants[110]+states[2]/constants[111])*states[21])/(constants[112]*(power(constants[277], 2.00000)))+((1.00000+states[1]/constants[107]+states[2]/constants[108])*algebraic[113])/(constants[109]*(power(constants[276], 2.00000)))+((1.00000+states[1]/constants[113]+states[2]/constants[114])*states[27])/(constants[115]*(power(constants[304], 2.00000)))+((1.00000+states[1]/constants[116]+states[2]/constants[117])*algebraic[118])/(constants[118]*(power(constants[320], 2.00000)))+((1.00000+states[1]/constants[98]+states[2]/constants[374])*states[17])/(constants[99]*(power(algebraic[46], 2.00000)))+((1.00000+states[1]/constants[89]+states[2]/constants[359])*states[22])/(constants[90]*(power(algebraic[36], 2.00000)))+((1.00000+states[1]/constants[119]+states[2]/constants[120])*states[20])/(constants[121]*(power(constants[278], 2.00000)))+((1.00000+states[1]/constants[360]+states[2]/constants[361])*states[15])/(constants[362]*(power(algebraic[37], 2.00000)))+((1.00000+states[1]/constants[363]+states[2]/constants[364])*states[24])/(constants[91]*(power(algebraic[40], 2.00000)))+((1.00000+states[1]/constants[122]+states[2]/constants[123])*states[25])/(constants[124]*(power(constants[306], 2.00000)))+((1.00000+states[1]/constants[365]+states[2]/constants[92])*states[23])/(constants[93]*(power(algebraic[41], 2.00000)))+((1.00000+states[1]/constants[357]+states[2]/constants[87])*states[18])/(constants[88]*(power(algebraic[35], 2.00000)))+((1.00000+states[1]/constants[366]+states[2]/constants[367])*states[26])/(constants[368]*(power(algebraic[42], 2.00000)))+((1.00000+states[1]/constants[369]+states[2]/constants[94])*states[28])/(constants[95]*(power(algebraic[43], 2.00000)))+((1.00000+states[1]/constants[370]+states[2]/constants[371])*states[29])/(constants[372]*(power(algebraic[44], 2.00000)))+((1.00000+states[1]/constants[376]+states[2]/constants[377])*states[31])/(constants[102]*(power(algebraic[48], 2.00000)))+((1.00000+states[1]/constants[378]+states[2]/constants[379])*states[30])/(constants[103]*(power(algebraic[49], 2.00000)))+((1.00000+states[1]/constants[140]+states[2]/constants[141])*states[3])/(constants[142]*(power(constants[284], 2.00000)))+((1.00000+states[1]/constants[137]+states[2]/constants[138])*states[2])/(constants[139]*(power(constants[283], 2.00000)))+((1.00000+states[1]/constants[125]+states[2]/constants[126])*states[56])/(constants[127]*(power(constants[279], 2.00000)))+((1.00000+states[1]/constants[128]+states[2]/constants[129])*constants[291])/(constants[130]*(power(constants[280], 2.00000)))+((1.00000+states[1]/constants[131]+states[2]/constants[132])*constants[310])/(constants[133]*(power(constants[281], 2.00000)))+((1.00000+states[1]/constants[373]+states[2]/constants[96])*states[19])/(constants[97]*(power(algebraic[45], 2.00000)))
    algebraic[205] = 1.00000+algebraic[197]
    algebraic[194] = ((1.00000+states[1]/constants[134]+states[3]/constants[136])*states[1])/(constants[135]*(power(constants[282], 2.00000)))+((1.00000+states[1]/constants[296]+states[3]/constants[325])*states[0])/(constants[311]*(power(algebraic[0], 2.00000)))+((1.00000+states[1]/constants[332]+states[3]/constants[340])*states[8])/(constants[336]*(power(algebraic[21], 2.00000)))+((1.00000+states[1]/constants[344]+states[3]/constants[349])*states[10])/(constants[347]*(power(algebraic[26], 2.00000)))+((1.00000+states[1]/constants[296]+states[3]/constants[325])*states[11])/(constants[311]*(power(algebraic[29], 2.00000)))+((1.00000+states[1]/constants[332]+states[3]/constants[340])*states[12])/(constants[336]*(power(algebraic[31], 2.00000)))+((1.00000+states[1]/constants[351]+states[3]/constants[355])*states[13])/(constants[353]*(power(algebraic[33], 2.00000)))+((1.00000+states[1]/constants[110]+states[3]/constants[112])*states[21])/(constants[111]*(power(constants[277], 2.00000)))+((1.00000+states[1]/constants[107]+states[3]/constants[109])*algebraic[113])/(constants[108]*(power(constants[276], 2.00000)))+((1.00000+states[1]/constants[113]+states[3]/constants[115])*states[27])/(constants[114]*(power(constants[304], 2.00000)))+((1.00000+states[1]/constants[116]+states[3]/constants[118])*algebraic[118])/(constants[117]*(power(constants[320], 2.00000)))+((1.00000+states[1]/constants[98]+states[3]/constants[99])*states[17])/(constants[374]*(power(algebraic[46], 2.00000)))+((1.00000+states[1]/constants[89]+states[3]/constants[90])*states[22])/(constants[359]*(power(algebraic[36], 2.00000)))+((1.00000+states[1]/constants[119]+states[3]/constants[121])*states[20])/(constants[120]*(power(constants[278], 2.00000)))+((1.00000+states[1]/constants[360]+states[3]/constants[362])*states[15])/(constants[361]*(power(algebraic[37], 2.00000)))+((1.00000+states[1]/constants[363]+states[3]/constants[91])*states[24])/(constants[364]*(power(algebraic[40], 2.00000)))+((1.00000+states[1]/constants[122]+states[3]/constants[124])*states[25])/(constants[123]*(power(constants[306], 2.00000)))+((1.00000+states[1]/constants[365]+states[3]/constants[93])*states[23])/(constants[92]*(power(algebraic[41], 2.00000)))+((1.00000+states[1]/constants[357]+states[3]/constants[88])*states[18])/(constants[87]*(power(algebraic[35], 2.00000)))+((1.00000+states[1]/constants[366]+states[3]/constants[368])*states[26])/(constants[367]*(power(algebraic[42], 2.00000)))+((1.00000+states[1]/constants[369]+states[3]/constants[95])*states[28])/(constants[94]*(power(algebraic[43], 2.00000)))+((1.00000+states[1]/constants[370]+states[3]/constants[372])*states[29])/(constants[371]*(power(algebraic[44], 2.00000)))+((1.00000+states[1]/constants[376]+states[3]/constants[102])*states[31])/(constants[377]*(power(algebraic[48], 2.00000)))+((1.00000+states[1]/constants[378]+states[3]/constants[103])*states[30])/(constants[379]*(power(algebraic[49], 2.00000)))+((1.00000+states[1]/constants[140]+states[3]/constants[142])*states[3])/(constants[141]*(power(constants[284], 2.00000)))+((1.00000+states[1]/constants[137]+states[3]/constants[139])*states[2])/(constants[138]*(power(constants[283], 2.00000)))+((1.00000+states[1]/constants[125]+states[3]/constants[127])*states[56])/(constants[126]*(power(constants[279], 2.00000)))+((1.00000+states[1]/constants[128]+states[3]/constants[130])*constants[291])/(constants[129]*(power(constants[280], 2.00000)))+((1.00000+states[1]/constants[131]+states[3]/constants[133])*constants[310])/(constants[132]*(power(constants[281], 2.00000)))+((1.00000+states[1]/constants[373]+states[3]/constants[97])*states[19])/(constants[96]*(power(algebraic[45], 2.00000)))
    algebraic[204] = 1.00000+algebraic[194]
    algebraic[191] = ((1.00000+states[2]/constants[135]+states[3]/constants[136])*states[1])/(constants[134]*(power(constants[282], 2.00000)))+((1.00000+states[2]/constants[311]+states[3]/constants[325])*states[0])/(constants[296]*(power(algebraic[0], 2.00000)))+((1.00000+states[2]/constants[336]+states[3]/constants[340])*states[8])/(constants[332]*(power(algebraic[21], 2.00000)))+((1.00000+states[2]/constants[347]+states[3]/constants[349])*states[10])/(constants[344]*(power(algebraic[26], 2.00000)))+((1.00000+states[2]/constants[311]+states[3]/constants[325])*states[11])/(constants[296]*(power(algebraic[29], 2.00000)))+((1.00000+states[2]/constants[336]+states[3]/constants[340])*states[12])/(constants[332]*(power(algebraic[31], 2.00000)))+((1.00000+states[2]/constants[353]+states[3]/constants[355])*states[13])/(constants[351]*(power(algebraic[33], 2.00000)))+((1.00000+states[2]/constants[111]+states[3]/constants[112])*states[21])/(constants[110]*(power(constants[277], 2.00000)))+((1.00000+states[2]/constants[108]+states[3]/constants[109])*algebraic[113])/(constants[107]*(power(constants[276], 2.00000)))+((1.00000+states[2]/constants[114]+states[3]/constants[115])*states[27])/(constants[113]*(power(constants[304], 2.00000)))+((1.00000+states[2]/constants[117]+states[3]/constants[118])*algebraic[118])/(constants[116]*(power(constants[320], 2.00000)))+((1.00000+states[2]/constants[374]+states[3]/constants[99])*states[17])/(constants[98]*(power(algebraic[46], 2.00000)))+((1.00000+states[2]/constants[359]+states[3]/constants[90])*states[22])/(constants[89]*(power(algebraic[36], 2.00000)))+((1.00000+states[2]/constants[120]+states[3]/constants[121])*states[20])/(constants[119]*(power(constants[278], 2.00000)))+((1.00000+states[2]/constants[361]+states[3]/constants[362])*states[15])/(constants[360]*(power(algebraic[37], 2.00000)))+((1.00000+states[2]/constants[364]+states[3]/constants[91])*states[24])/(constants[363]*(power(algebraic[40], 2.00000)))+((1.00000+states[2]/constants[123]+states[3]/constants[124])*states[25])/(constants[122]*(power(constants[306], 2.00000)))+((1.00000+states[2]/constants[92]+states[3]/constants[93])*states[23])/(constants[365]*(power(algebraic[41], 2.00000)))+((1.00000+states[2]/constants[87]+states[3]/constants[88])*states[18])/(constants[357]*(power(algebraic[35], 2.00000)))+((1.00000+states[2]/constants[367]+states[3]/constants[368])*states[26])/(constants[366]*(power(algebraic[42], 2.00000)))+((1.00000+states[2]/constants[94]+states[3]/constants[95])*states[28])/(constants[369]*(power(algebraic[43], 2.00000)))+((1.00000+states[2]/constants[371]+states[3]/constants[372])*states[29])/(constants[370]*(power(algebraic[44], 2.00000)))+((1.00000+states[2]/constants[377]+states[3]/constants[102])*states[31])/(constants[376]*(power(algebraic[48], 2.00000)))+((1.00000+states[2]/constants[379]+states[3]/constants[103])*states[30])/(constants[378]*(power(algebraic[49], 2.00000)))+((1.00000+states[2]/constants[141]+states[3]/constants[142])*states[3])/(constants[140]*(power(constants[284], 2.00000)))+((1.00000+states[2]/constants[138]+states[3]/constants[139])*states[2])/(constants[137]*(power(constants[283], 2.00000)))+((1.00000+states[2]/constants[126]+states[3]/constants[127])*states[56])/(constants[125]*(power(constants[279], 2.00000)))+((1.00000+states[2]/constants[129]+states[3]/constants[130])*constants[291])/(constants[128]*(power(constants[280], 2.00000)))+((1.00000+states[2]/constants[132]+states[3]/constants[133])*constants[310])/(constants[131]*(power(constants[281], 2.00000)))+((1.00000+states[2]/constants[96]+states[3]/constants[97])*states[19])/(constants[373]*(power(algebraic[45], 2.00000)))
    algebraic[203] = 1.00000+algebraic[191]+constants[271]/(constants[272]*(power(1.00000+states[1]/constants[272], 2.00000)))
    algebraic[195] = -((states[3]*states[1])/(constants[136]*constants[134]*(power(constants[282], 2.00000)))+(states[3]*states[0])/(constants[325]*constants[296]*(power(algebraic[0], 2.00000)))+(states[3]*states[8])/(constants[340]*constants[332]*(power(algebraic[21], 2.00000)))+(states[3]*states[10])/(constants[349]*constants[344]*(power(algebraic[26], 2.00000)))+(states[3]*states[11])/(constants[325]*constants[296]*(power(algebraic[29], 2.00000)))+(states[3]*states[12])/(constants[340]*constants[332]*(power(algebraic[31], 2.00000)))+(states[3]*states[13])/(constants[355]*constants[351]*(power(algebraic[33], 2.00000)))+(states[3]*states[21])/(constants[112]*constants[110]*(power(constants[277], 2.00000)))+(states[3]*algebraic[113])/(constants[109]*constants[107]*(power(constants[276], 2.00000)))+(states[3]*states[27])/(constants[115]*constants[113]*(power(constants[304], 2.00000)))+(states[3]*algebraic[118])/(constants[118]*constants[116]*(power(constants[320], 2.00000)))+(states[3]*states[17])/(constants[99]*constants[98]*(power(algebraic[46], 2.00000)))+(states[3]*states[22])/(constants[90]*constants[89]*(power(algebraic[36], 2.00000)))+(states[3]*states[20])/(constants[121]*constants[119]*(power(constants[278], 2.00000)))+(states[3]*states[15])/(constants[362]*constants[360]*(power(algebraic[37], 2.00000)))+(states[3]*states[24])/(constants[91]*constants[363]*(power(algebraic[40], 2.00000)))+(states[3]*states[25])/(constants[124]*constants[122]*(power(constants[306], 2.00000)))+(states[3]*states[23])/(constants[93]*constants[365]*(power(algebraic[41], 2.00000)))+(states[3]*states[18])/(constants[88]*constants[357]*(power(algebraic[35], 2.00000)))+(states[3]*states[26])/(constants[368]*constants[366]*(power(algebraic[42], 2.00000)))+(states[3]*states[28])/(constants[95]*constants[369]*(power(algebraic[43], 2.00000)))+(states[3]*states[29])/(constants[372]*constants[370]*(power(algebraic[44], 2.00000)))+(states[3]*states[31])/(constants[102]*constants[376]*(power(algebraic[48], 2.00000)))+(states[3]*states[30])/(constants[103]*constants[378]*(power(algebraic[49], 2.00000)))+(states[3]*states[3])/(constants[142]*constants[140]*(power(constants[284], 2.00000)))+(states[3]*states[2])/(constants[139]*constants[137]*(power(constants[283], 2.00000)))+(states[3]*states[56])/(constants[127]*constants[125]*(power(constants[279], 2.00000)))+(states[3]*constants[291])/(constants[130]*constants[128]*(power(constants[280], 2.00000)))+(states[3]*constants[310])/(constants[133]*constants[131]*(power(constants[281], 2.00000)))+(states[3]*states[19])/(constants[97]*constants[373]*(power(algebraic[45], 2.00000))))
    algebraic[192] = -((states[2]*states[1])/(constants[135]*constants[134]*(power(constants[282], 2.00000)))+(states[2]*states[0])/(constants[311]*constants[296]*(power(algebraic[0], 2.00000)))+(states[2]*states[8])/(constants[336]*constants[332]*(power(algebraic[21], 2.00000)))+(states[2]*states[10])/(constants[347]*constants[344]*(power(algebraic[26], 2.00000)))+(states[2]*states[11])/(constants[311]*constants[296]*(power(algebraic[29], 2.00000)))+(states[2]*states[12])/(constants[336]*constants[332]*(power(algebraic[31], 2.00000)))+(states[2]*states[13])/(constants[353]*constants[351]*(power(algebraic[33], 2.00000)))+(states[2]*states[21])/(constants[111]*constants[110]*(power(constants[277], 2.00000)))+(states[2]*algebraic[113])/(constants[108]*constants[107]*(power(constants[276], 2.00000)))+(states[2]*states[27])/(constants[114]*constants[113]*(power(constants[304], 2.00000)))+(states[2]*algebraic[118])/(constants[117]*constants[116]*(power(constants[320], 2.00000)))+(states[2]*states[17])/(constants[374]*constants[98]*(power(algebraic[46], 2.00000)))+(states[2]*states[22])/(constants[359]*constants[89]*(power(algebraic[36], 2.00000)))+(states[2]*states[20])/(constants[120]*constants[119]*(power(constants[278], 2.00000)))+(states[2]*states[15])/(constants[361]*constants[360]*(power(algebraic[37], 2.00000)))+(states[2]*states[24])/(constants[364]*constants[363]*(power(algebraic[40], 2.00000)))+(states[2]*states[25])/(constants[123]*constants[122]*(power(constants[306], 2.00000)))+(states[2]*states[23])/(constants[92]*constants[365]*(power(algebraic[41], 2.00000)))+(states[2]*states[18])/(constants[87]*constants[357]*(power(algebraic[35], 2.00000)))+(states[2]*states[26])/(constants[367]*constants[366]*(power(algebraic[42], 2.00000)))+(states[2]*states[28])/(constants[94]*constants[369]*(power(algebraic[43], 2.00000)))+(states[2]*states[29])/(constants[371]*constants[370]*(power(algebraic[44], 2.00000)))+(states[2]*states[31])/(constants[377]*constants[376]*(power(algebraic[48], 2.00000)))+(states[2]*states[30])/(constants[379]*constants[378]*(power(algebraic[49], 2.00000)))+(states[2]*states[3])/(constants[141]*constants[140]*(power(constants[284], 2.00000)))+(states[2]*states[2])/(constants[138]*constants[137]*(power(constants[283], 2.00000)))+(states[2]*states[56])/(constants[126]*constants[125]*(power(constants[279], 2.00000)))+(states[2]*constants[291])/(constants[129]*constants[128]*(power(constants[280], 2.00000)))+(states[2]*constants[310])/(constants[132]*constants[131]*(power(constants[281], 2.00000)))+(states[2]*states[19])/(constants[96]*constants[373]*(power(algebraic[45], 2.00000))))
    algebraic[206] = (((algebraic[203]*algebraic[196]*algebraic[193]+algebraic[205]*algebraic[189]*algebraic[192]+algebraic[204]*algebraic[190]*algebraic[195])-algebraic[204]*algebraic[205]*algebraic[203])-algebraic[190]*algebraic[196]*algebraic[192])-algebraic[189]*algebraic[193]*algebraic[195]
    algebraic[145] = ((algebraic[114]+algebraic[115]+algebraic[116]+algebraic[117])-algebraic[139])/constants[3]
    algebraic[146] = -algebraic[145]
    algebraic[147] = ((algebraic[119]+algebraic[139])-algebraic[122])/constants[3]
    algebraic[148] = -algebraic[147]
    algebraic[183] = ((algebraic[81]+algebraic[143])-algebraic[178])/constants[3]
    algebraic[184] = ((-algebraic[81]-algebraic[143])+algebraic[178])/constants[3]
    algebraic[123] = (algebraic[66]-algebraic[81])/constants[3]
    algebraic[124] = (-algebraic[66]+algebraic[81])/constants[3]
    algebraic[185] = (((-algebraic[66]-algebraic[143])+algebraic[179])-algebraic[176])/constants[3]
    algebraic[159] = (-algebraic[114]+algebraic[155])/constants[3]
    algebraic[125] = (algebraic[114]-algebraic[56])/constants[3]
    algebraic[186] = (-algebraic[59]+algebraic[175]+algebraic[56])/constants[3]
    algebraic[126] = (algebraic[59]-algebraic[115])/constants[3]
    algebraic[127] = (((algebraic[115]-algebraic[116])-algebraic[86])+algebraic[87])/constants[3]
    algebraic[128] = (algebraic[116]-algebraic[66])/constants[3]
    algebraic[129] = ((-algebraic[114]-algebraic[116])+algebraic[66]+algebraic[56])/constants[3]
    algebraic[187] = ((algebraic[66]-algebraic[119])+algebraic[177])/constants[3]
    algebraic[130] = (algebraic[119]-algebraic[73])/constants[3]
    algebraic[188] = (((((algebraic[73]-algebraic[117])+algebraic[176])-algebraic[87])-algebraic[175])-algebraic[177])/constants[3]
    algebraic[131] = (-algebraic[56]+algebraic[117]+algebraic[86])/constants[3]
    algebraic[160] = ((algebraic[86]+algebraic[156])-algebraic[158])/constants[3]
    algebraic[161] = (-algebraic[86]+algebraic[158])/constants[3]
    algebraic[181] = constants[50]*(algebraic[162]*states[1]-states[3]*algebraic[132])
    algebraic[198] = (((((((((-algebraic[114]+2.00000*algebraic[56])-algebraic[116])+algebraic[66]+algebraic[117]+algebraic[155]+algebraic[156]+algebraic[175])-algebraic[158])-5.00000*algebraic[139])-2.00000*algebraic[122])-4.00000*algebraic[141])+(constants[7]-1.00000)*algebraic[143]+2.00000*algebraic[179]+algebraic[144])-algebraic[181])/constants[3]
    algebraic[200] = -((states[1]*constants[292])/(constants[134]*constants[282])+(states[1]*algebraic[183])/(constants[296]*algebraic[0])+(states[1]*algebraic[184])/(constants[332]*algebraic[21])+(states[1]*constants[262])/(constants[344]*algebraic[26])+(states[1]*algebraic[123])/(constants[296]*algebraic[29])+(states[1]*algebraic[124])/(constants[332]*algebraic[31])+(states[1]*algebraic[185])/(constants[351]*algebraic[33])+(states[1]*algebraic[145])/(constants[110]*constants[277])+(states[1]*algebraic[146])/(constants[107]*constants[276])+(states[1]*algebraic[147])/(constants[113]*constants[304])+(states[1]*algebraic[148])/(constants[116]*constants[320])+(states[1]*algebraic[159])/(constants[98]*algebraic[46])+(states[1]*algebraic[131])/(constants[89]*algebraic[36])+(states[1]*algebraic[125])/(constants[119]*constants[278])+(states[1]*algebraic[186])/(constants[360]*algebraic[37])+(states[1]*algebraic[126])/(constants[363]*algebraic[40])+(states[1]*algebraic[127])/(constants[122]*constants[306])+(states[1]*algebraic[128])/(constants[365]*algebraic[41])+(states[1]*algebraic[129])/(constants[357]*algebraic[35])+(states[1]*algebraic[187])/(constants[366]*algebraic[42])+(states[1]*algebraic[130])/(constants[369]*algebraic[43])+(states[1]*algebraic[188])/(constants[370]*algebraic[44])+(states[1]*algebraic[160])/(constants[376]*algebraic[48])+(states[1]*algebraic[161])/(constants[378]*algebraic[49])+(states[1]*constants[294])/(constants[140]*constants[284])+(states[1]*constants[293])/(constants[137]*constants[283])+(states[1]*constants[263])/(constants[125]*constants[279])+(states[1]*constants[270])/(constants[128]*constants[280])+(states[1]*constants[269])/(constants[131]*constants[281])+(states[1]*constants[264])/(constants[373]*algebraic[45]))+algebraic[198]
    algebraic[201] = -((states[2]*constants[292])/(constants[135]*constants[282])+(states[2]*algebraic[183])/(constants[311]*algebraic[0])+(states[2]*algebraic[184])/(constants[336]*algebraic[21])+(states[2]*constants[262])/(constants[347]*algebraic[26])+(states[2]*algebraic[123])/(constants[311]*algebraic[29])+(states[2]*algebraic[124])/(constants[336]*algebraic[31])+(states[2]*algebraic[185])/(constants[353]*algebraic[33])+(states[2]*algebraic[145])/(constants[111]*constants[277])+(states[2]*algebraic[146])/(constants[108]*constants[276])+(states[2]*algebraic[147])/(constants[114]*constants[304])+(states[2]*algebraic[148])/(constants[117]*constants[320])+(states[2]*algebraic[159])/(constants[374]*algebraic[46])+(states[2]*algebraic[131])/(constants[359]*algebraic[36])+(states[2]*algebraic[125])/(constants[120]*constants[278])+(states[2]*algebraic[186])/(constants[361]*algebraic[37])+(states[2]*algebraic[126])/(constants[364]*algebraic[40])+(states[2]*algebraic[127])/(constants[123]*constants[306])+(states[2]*algebraic[128])/(constants[92]*algebraic[41])+(states[2]*algebraic[129])/(constants[87]*algebraic[35])+(states[2]*algebraic[187])/(constants[367]*algebraic[42])+(states[2]*algebraic[130])/(constants[94]*algebraic[43])+(states[2]*algebraic[188])/(constants[371]*algebraic[44])+(states[2]*algebraic[160])/(constants[377]*algebraic[48])+(states[2]*algebraic[161])/(constants[379]*algebraic[49])+(states[2]*constants[294])/(constants[141]*constants[284])+(states[2]*constants[293])/(constants[138]*constants[283])+(states[2]*constants[263])/(constants[126]*constants[279])+(states[2]*constants[270])/(constants[129]*constants[280])+(states[2]*constants[269])/(constants[132]*constants[281])+(states[2]*constants[264])/(constants[96]*algebraic[45]))+constants[295]
    algebraic[199] = algebraic[181]/constants[3]
    algebraic[202] = -((states[3]*constants[292])/(constants[136]*constants[282])+(states[3]*algebraic[183])/(constants[325]*algebraic[0])+(states[3]*algebraic[184])/(constants[340]*algebraic[21])+(states[3]*constants[262])/(constants[349]*algebraic[26])+(states[3]*algebraic[123])/(constants[325]*algebraic[29])+(states[3]*algebraic[124])/(constants[340]*algebraic[31])+(states[3]*algebraic[185])/(constants[355]*algebraic[33])+(states[3]*algebraic[145])/(constants[112]*constants[277])+(states[3]*algebraic[146])/(constants[109]*constants[276])+(states[3]*algebraic[147])/(constants[115]*constants[304])+(states[3]*algebraic[148])/(constants[118]*constants[320])+(states[3]*algebraic[159])/(constants[99]*algebraic[46])+(states[3]*algebraic[131])/(constants[90]*algebraic[36])+(states[3]*algebraic[125])/(constants[121]*constants[278])+(states[3]*algebraic[186])/(constants[362]*algebraic[37])+(states[3]*algebraic[126])/(constants[91]*algebraic[40])+(states[3]*algebraic[127])/(constants[124]*constants[306])+(states[3]*algebraic[128])/(constants[93]*algebraic[41])+(states[3]*algebraic[129])/(constants[88]*algebraic[35])+(states[3]*algebraic[187])/(constants[368]*algebraic[42])+(states[3]*algebraic[130])/(constants[95]*algebraic[43])+(states[3]*algebraic[188])/(constants[372]*algebraic[44])+(states[3]*algebraic[160])/(constants[102]*algebraic[48])+(states[3]*algebraic[161])/(constants[103]*algebraic[49])+(states[3]*constants[294])/(constants[142]*constants[284])+(states[3]*constants[293])/(constants[139]*constants[283])+(states[3]*constants[263])/(constants[127]*constants[279])+(states[3]*constants[270])/(constants[130]*constants[280])+(states[3]*constants[269])/(constants[133]*constants[281])+(states[3]*constants[264])/(constants[97]*algebraic[45]))+algebraic[199]
    rates[1] = ((algebraic[196]*algebraic[193]-algebraic[204]*algebraic[205])*algebraic[200]+(algebraic[205]*algebraic[189]-algebraic[190]*algebraic[196])*algebraic[201]+(algebraic[204]*algebraic[190]-algebraic[189]*algebraic[193])*algebraic[202])/algebraic[206]
    rates[2] = ((algebraic[205]*algebraic[192]-algebraic[195]*algebraic[193])*algebraic[200]+(algebraic[195]*algebraic[190]-algebraic[203]*algebraic[205])*algebraic[201]+(algebraic[203]*algebraic[193]-algebraic[190]*algebraic[192])*algebraic[202])/algebraic[206]
    rates[3] = ((algebraic[204]*algebraic[195]-algebraic[196]*algebraic[192])*algebraic[200]+(algebraic[203]*algebraic[196]-algebraic[195]*algebraic[189])*algebraic[201]+(algebraic[192]*algebraic[189]-algebraic[203]*algebraic[204])*algebraic[202])/algebraic[206]
    return(rates)

def computeAlgebraic(constants, states, voi):
    algebraic = array([[0.0] * len(voi)] * sizeAlgebraic)
    states = array(states)
    voi = array(voi)
    algebraic[16] = constants[5]*constants[10]*(states[48]-states[49])
    algebraic[15] = constants[5]*constants[246]*(states[46]-states[47])
    algebraic[0] = 1.00000+states[1]/constants[296]+states[2]/constants[311]+states[3]/constants[325]
    algebraic[29] = algebraic[0]
    algebraic[21] = 1.00000+states[1]/constants[332]+states[2]/constants[336]+states[3]/constants[340]
    algebraic[31] = algebraic[21]
    algebraic[33] = 1.00000+states[1]/constants[351]+states[2]/constants[353]+states[3]/constants[355]
    algebraic[35] = 1.00000+states[1]/constants[357]
    algebraic[41] = 1.00000+states[1]/constants[365]
    algebraic[42] = 1.00000+states[1]/constants[366]+states[2]/constants[367]+states[3]/constants[368]
    algebraic[64] = (constants[319]*algebraic[35]*algebraic[42]*algebraic[29])/(states[1]*algebraic[31]*algebraic[41]*algebraic[33])
    algebraic[65] = (constants[28]*constants[186]*constants[181]*constants[182])/(algebraic[64]*constants[177]*constants[178]*constants[185])
    algebraic[66] = (constants[28]*algebraic[65]*(states[12]*states[23]*states[13]-(states[18]*states[26]*states[11])/algebraic[64]))/(algebraic[65]*constants[177]*constants[178]*constants[185]+algebraic[65]*constants[178]*constants[185]*states[12]+algebraic[65]*constants[177]*constants[184]*states[13]+algebraic[65]*constants[185]*states[12]*states[23]+algebraic[65]*constants[184]*states[12]*states[13]+algebraic[65]*constants[183]*states[23]*states[13]+algebraic[65]*states[12]*states[23]*states[13]+(constants[28]*constants[182]*constants[187]*states[18])/algebraic[64]+(constants[28]*constants[181]*constants[186]*states[11])/algebraic[64]+(constants[28]*constants[188]*states[18]*states[26])/algebraic[64]+(constants[28]*constants[187]*states[18]*states[11])/algebraic[64]+(constants[28]*constants[186]*states[26]*states[11])/algebraic[64]+(constants[28]*states[18]*states[26]*states[11])/algebraic[64]+(constants[28]*constants[187]*constants[182]*states[12]*states[18])/(constants[177]*algebraic[64])+(algebraic[65]*constants[177]*constants[184]*states[13]*states[11])/constants[182]+(constants[28]*constants[187]*constants[182]*states[12]*states[23]*states[18])/(constants[177]*constants[178]*algebraic[64])+(algebraic[65]*constants[183]*states[23]*states[13]*states[11])/constants[182]+(constants[28]*constants[188]*states[12]*states[18]*states[26])/(constants[177]*algebraic[64])+(algebraic[65]*constants[177]*constants[184]*states[13]*states[26]*states[11])/(constants[181]*constants[182])+(constants[28]*constants[182]*constants[187]*states[12]*states[23]*states[13]*states[18])/(constants[177]*constants[178]*constants[179]*algebraic[64])+(constants[28]*constants[180]*constants[188]*states[12]*states[23]*states[13]*states[26])/(constants[177]*constants[178]*constants[179]*algebraic[64])+(constants[28]*constants[188]*states[12]*states[23]*states[18]*states[26])/(constants[177]*constants[178]*algebraic[64])+(algebraic[65]*constants[183]*states[23]*states[13]*states[26]*states[11])/(constants[181]*constants[182])+(algebraic[65]*constants[183]*constants[179]*states[23]*states[18]*states[26]*states[11])/(constants[180]*constants[181]*constants[182])+(algebraic[65]*constants[177]*constants[184]*states[13]*states[18]*states[26]*states[11])/(constants[180]*constants[181]*constants[182])+(constants[28]*constants[188]*states[12]*states[23]*states[13]*states[18]*states[26])/(constants[177]*constants[178]*constants[179]*algebraic[64])+(algebraic[65]*constants[183]*states[23]*states[13]*states[18]*states[26]*states[11])/(constants[180]*constants[181]*constants[182]))
    algebraic[77] = (constants[312]*algebraic[31]*algebraic[0])/(algebraic[29]*algebraic[21])
    algebraic[78] = (constants[32]*constants[223]*constants[218])/(algebraic[77]*constants[216]*constants[221])
    algebraic[26] = 1.00000+states[1]/constants[344]+states[2]/constants[347]+states[3]/constants[349]
    algebraic[28] = (states[10]*(1.00000+states[1]/constants[344]))/algebraic[26]
    algebraic[79] = 1.00000+algebraic[28]/constants[224]
    algebraic[80] = custom_piecewise([greater(states[11] , constants[225]) & greater(states[8] , constants[225]), (((constants[32]*algebraic[78])/algebraic[79])*states[11]*states[8])/(algebraic[78]*constants[221]*states[11]+algebraic[78]*constants[220]*states[8]+(constants[32]*constants[223]*states[12])/algebraic[77]+(constants[32]*constants[222]*states[0])/algebraic[77]+algebraic[78]*states[11]*states[8]+(constants[32]*constants[223]*states[11]*states[12])/(algebraic[77]*constants[216])+(constants[32]*states[12]*states[0])/algebraic[77]+(algebraic[78]*constants[220]*states[8]*states[0])/constants[219]) , True, 0.00000])
    algebraic[81] = custom_piecewise([greater(states[12] , constants[225]) & greater(states[0] , constants[225]), algebraic[80]-((((constants[32]*algebraic[78])/algebraic[79])*states[12]*states[0])/algebraic[77])/(algebraic[78]*constants[221]*states[11]+algebraic[78]*constants[220]*states[8]+(constants[32]*constants[223]*states[12])/algebraic[77]+(constants[32]*constants[222]*states[0])/algebraic[77]+algebraic[78]*states[11]*states[8]+(constants[32]*constants[223]*states[11]*states[12])/(algebraic[77]*constants[216])+(constants[32]*states[12]*states[0])/algebraic[77]+(algebraic[78]*constants[220]*states[8]*states[0])/constants[219]) , True, algebraic[80]])
    algebraic[87] = (constants[37]*(states[35]*states[29]-states[25]*states[34]))/(constants[236]*constants[239]*(2.00000+states[34]/constants[238]+states[29]/constants[239]+states[35]/constants[236]+states[25]/constants[237]+(states[34]*states[25])/(constants[238]*constants[237])+(states[29]*states[35])/(constants[239]*constants[236])))
    algebraic[89] = constants[5]*constants[10]*(states[42]-states[35])
    algebraic[88] = constants[5]*constants[10]*(states[39]-states[32])
    algebraic[90] = constants[5]*constants[10]*(states[40]-states[16])
    algebraic[91] = constants[5]*constants[10]*(states[41]-states[34])
    algebraic[92] = constants[5]*constants[10]*(states[43]-states[38])
    algebraic[93] = constants[5]*constants[10]*(states[44]-states[33])
    algebraic[94] = constants[5]*constants[10]*(states[45]-states[36])
    algebraic[98] = constants[5]*constants[8]*(states[54]-states[14])
    algebraic[17] = 1.00000+states[5]/constants[296]+states[6]/constants[311]+states[7]/constants[325]
    algebraic[20] = ((states[4]*states[6])/constants[311])/algebraic[17]
    algebraic[22] = 1.00000+states[5]/constants[332]+states[6]/constants[336]+states[7]/constants[340]
    algebraic[25] = ((states[9]*states[6])/constants[336])/algebraic[22]
    algebraic[47] = 1.00000+states[5]/constants[375]
    algebraic[99] = (constants[324]*algebraic[47]*algebraic[22])/(states[5]*algebraic[17]*constants[275])
    algebraic[101] = (algebraic[99]*constants[311]*algebraic[17])/(constants[336]*algebraic[22])
    algebraic[103] = ((constants[273]/(constants[252]*constants[255]))*(algebraic[20]*states[57]-(states[58]*algebraic[25])/algebraic[101]))/(1.00000+algebraic[20]/constants[251]+states[57]/constants[252]+(algebraic[20]*states[57])/(constants[252]*constants[255])+states[58]/constants[253]+algebraic[25]/constants[254]+(states[58]*algebraic[25])/(constants[254]*constants[257])+(states[58]*states[57])/(constants[259]*constants[252]))
    algebraic[105] = constants[18]-states[59]
    algebraic[107] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000), 0.00000 , True, constants[260]*(((constants[309]*states[9])/algebraic[22])*states[59]*states[5]-(states[4]/algebraic[17])*algebraic[105])])
    algebraic[96] = constants[5]*constants[9]*(states[4]-states[51])
    algebraic[27] = 1.00000+states[5]/constants[344]+states[6]/constants[347]+states[7]/constants[349]
    algebraic[109] = (constants[381]*algebraic[17]*algebraic[27])/(algebraic[22]*algebraic[22])
    algebraic[111] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000), 0.00000 , True, constants[261]*(algebraic[109]*states[9]*states[9]-states[52]*states[4])])
    algebraic[95] = constants[5]*constants[9]*(states[9]-states[50])
    algebraic[97] = constants[5]*constants[9]*(states[52]-states[53])
    algebraic[113] = constants[14]-states[21]
    algebraic[45] = 1.00000+states[1]/constants[373]
    algebraic[46] = 1.00000+states[2]/constants[374]
    algebraic[50] = (constants[314]*algebraic[45]*constants[278]*constants[277])/(states[1]*algebraic[46]*algebraic[35]*constants[276])
    algebraic[51] = 1.00000+states[20]/constants[146]
    algebraic[52] = 1.00000+states[21]/constants[147]
    algebraic[114] = custom_piecewise([greater(states[17] , constants[148]) & greater(states[18] , constants[148]) & greater(algebraic[113] , constants[148]), (constants[22]*(states[17]*states[18]*algebraic[113]-(states[19]*states[20]*states[21])/algebraic[50]))/(constants[145]*algebraic[52]*states[17]*states[18]+constants[144]*algebraic[51]*states[17]*algebraic[113]+constants[143]*states[18]*algebraic[113]+states[17]*states[18]*algebraic[113]) , True, 0.00000])
    algebraic[36] = 1.00000+states[2]/constants[359]
    algebraic[37] = 1.00000+states[1]/constants[360]+states[2]/constants[361]+states[3]/constants[362]
    algebraic[53] = (constants[315]*algebraic[37]*algebraic[35])/((power(states[1], 2.00000))*constants[278]*algebraic[36])
    algebraic[38] = (states[15]*(1.00000+states[1]/constants[360]))/algebraic[37]
    algebraic[54] = 1.00000+algebraic[38]/constants[152]
    algebraic[18] = (states[0]*(1.00000+states[1]/constants[296]))/algebraic[0]
    algebraic[23] = (states[8]*(1.00000+states[1]/constants[332]))/algebraic[21]
    algebraic[55] = 1.00000+algebraic[18]/constants[153]+algebraic[23]/constants[154]+algebraic[28]/constants[155]+states[18]/constants[156]+states[23]/constants[157]
    algebraic[56] = (constants[23]*(states[20]*states[22]-(states[18]*states[15])/algebraic[53]))/(constants[151]*constants[150]*algebraic[54]+constants[149]*algebraic[54]*states[20]+constants[150]*algebraic[55]*states[22]+states[22]*states[20])
    algebraic[40] = 1.00000+states[1]/constants[363]+states[2]/constants[364]
    algebraic[57] = (constants[316]*algebraic[40])/algebraic[37]
    algebraic[58] = (constants[24]*constants[159])/(constants[158]*algebraic[57])
    algebraic[59] = (constants[24]*algebraic[58]*(states[15]-states[24]/algebraic[57]))/(constants[158]*algebraic[58]+algebraic[58]*states[15]+(constants[24]*states[24])/algebraic[57])
    algebraic[60] = (constants[317]*algebraic[45]*constants[306]*constants[277])/((power(states[1], 2.00000))*constants[276]*algebraic[40])
    algebraic[61] = 1.00000+(constants[166]/algebraic[23])*(1.00000+algebraic[18]/constants[165])
    algebraic[115] = custom_piecewise([greater(algebraic[113] , constants[167]) & greater(states[24] , constants[167]), (constants[25]*(1.00000-(states[19]*states[25]*states[21])/(algebraic[60]*algebraic[113]*states[24])))/(1.00000+(power(constants[161]/states[24], constants[164]))*algebraic[61]+(constants[160]/algebraic[113])*(1.00000+(power(constants[162]/states[24], constants[164]))*algebraic[61]+(states[21]*algebraic[61])/constants[163])) , True, 0.00000])
    algebraic[62] = (constants[318]*algebraic[45]*algebraic[41]*constants[277])/(states[1]*algebraic[35]*constants[306]*constants[276])
    algebraic[63] = 1.00000+(constants[175]/algebraic[23])*(1.00000+algebraic[18]/constants[174])
    algebraic[116] = custom_piecewise([greater(states[25] , constants[176]) & greater(states[18] , constants[176]) & greater(algebraic[113] , constants[176]), ((constants[26]*(1.00000-(states[19]*states[23]*states[21])/(algebraic[62]*states[25]*states[18]*algebraic[113])))/(1.00000+(constants[168]/states[25])*algebraic[63]+(constants[169]/states[18])*(1.00000+states[23]/constants[171])+(constants[170]/algebraic[113])*(1.00000+states[21]/constants[172])))/(1.00000+states[21]/constants[173]) , True, 0.00000])
    algebraic[48] = 1.00000+states[1]/constants[376]+states[2]/constants[377]
    algebraic[49] = 1.00000+states[1]/constants[378]+states[2]/constants[379]
    algebraic[82] = (constants[328]*algebraic[48]*algebraic[36])/(algebraic[49]*constants[306])
    algebraic[83] = (constants[33]*constants[233]*constants[228])/(algebraic[82]*constants[226]*constants[231])
    algebraic[84] = 1.00000+states[25]/constants[234]
    algebraic[85] = custom_piecewise([greater(states[30] , constants[235]) & greater(states[25] , constants[235]), (constants[33]*algebraic[83]*states[30]*states[25])/(algebraic[83]*constants[231]*states[30]+algebraic[83]*constants[230]*algebraic[84]*states[25]+(constants[33]*constants[233]*algebraic[84]*states[22])/algebraic[82]+(constants[33]*constants[232]*states[31])/algebraic[82]+algebraic[83]*states[30]*states[25]+(constants[33]*constants[233]*states[30]*states[22])/(algebraic[82]*constants[226])+(constants[33]*states[22]*states[31])/algebraic[82]+(algebraic[83]*constants[230]*states[25]*states[31])/constants[229]) , True, 0.00000])
    algebraic[86] = custom_piecewise([greater(states[22] , constants[235]) & greater(states[31] , constants[235]), algebraic[85]-((constants[33]*algebraic[83]*states[22]*states[31])/algebraic[82])/(algebraic[83]*constants[231]*states[30]+algebraic[83]*constants[230]*algebraic[84]*states[25]+(constants[33]*constants[233]*algebraic[84]*states[22])/algebraic[82]+(constants[33]*constants[232]*states[31])/algebraic[82]+algebraic[83]*states[30]*states[25]+(constants[33]*constants[233]*states[30]*states[22])/(algebraic[82]*constants[226])+(constants[33]*states[22]*states[31])/algebraic[82]+(algebraic[83]*constants[230]*states[25]*states[31])/constants[229]) , True, algebraic[85]])
    algebraic[44] = 1.00000+states[1]/constants[370]+states[2]/constants[371]+states[3]/constants[372]
    algebraic[74] = (constants[321]*algebraic[36]*constants[277])/(states[1]*algebraic[44]*constants[276])
    algebraic[75] = (constants[31]*constants[208]*constants[211])/(algebraic[74]*constants[205]*constants[210])
    algebraic[76] = 1.00000+algebraic[18]/constants[213]+algebraic[23]/constants[214]+algebraic[28]/constants[215]
    algebraic[117] = (constants[31]*algebraic[75]*(algebraic[113]*states[29]-(states[22]*states[21])/algebraic[74]))/(algebraic[75]*constants[205]*constants[210]*algebraic[76]+algebraic[75]*constants[210]*algebraic[113]+algebraic[75]*constants[209]*algebraic[76]*states[29]+(constants[31]*constants[212]*algebraic[76]*states[22])/algebraic[74]+(constants[31]*constants[211]*states[21])/algebraic[74]+algebraic[75]*algebraic[113]*states[29]+(constants[31]*constants[212]*algebraic[113]*states[22])/(algebraic[74]*constants[205])+(constants[31]*states[22]*states[21])/algebraic[74]+(algebraic[75]*constants[209]*states[29]*states[21])/constants[208]+(algebraic[75]*algebraic[113]*states[29]*states[22])/constants[207]+(constants[31]*states[29]*states[22]*states[21])/(constants[206]*algebraic[74]))
    algebraic[118] = constants[15]-states[27]
    algebraic[43] = 1.00000+states[1]/constants[369]
    algebraic[67] = (constants[334]*algebraic[43]*constants[304])/(algebraic[42]*constants[320])
    algebraic[68] = (constants[29]*constants[193]*constants[190])/(algebraic[67]*constants[189]*constants[192])
    algebraic[69] = (1.00000+states[22]/constants[195]+states[26]/constants[196]+states[28]/constants[197])/(1.00000+states[26]/constants[196]+states[28]/constants[197])
    algebraic[119] = (constants[29]*algebraic[68]*(states[26]*algebraic[118]-(states[27]*states[28])/algebraic[67]))/(algebraic[68]*constants[189]*constants[192]*algebraic[69]+algebraic[68]*constants[192]*states[26]+algebraic[68]*constants[191]*algebraic[69]*algebraic[118]+(constants[29]*constants[194]*algebraic[69]*states[27])/algebraic[67]+(constants[29]*constants[193]*states[28])/algebraic[67]+algebraic[68]*states[26]*algebraic[118]+(constants[29]*constants[194]*states[26]*states[27])/(algebraic[67]*constants[189])+(algebraic[68]*constants[191]*algebraic[118]*states[28])/constants[190]+(constants[29]*states[27]*states[28])/algebraic[67])
    algebraic[70] = (constants[342]*algebraic[44])/algebraic[43]
    algebraic[71] = (constants[30]*constants[199])/(algebraic[70]*constants[198])
    algebraic[30] = (states[11]*(1.00000+states[1]/constants[313]))/algebraic[29]
    algebraic[32] = (states[12]*(1.00000+states[1]/constants[337]))/algebraic[31]
    algebraic[72] = 1.00000+states[15]/constants[200]+algebraic[18]/constants[201]+algebraic[23]/constants[202]+algebraic[30]/constants[203]+algebraic[32]/constants[204]
    algebraic[73] = (algebraic[71]*constants[30]*(states[28]-states[29]/algebraic[70]))/(constants[198]*algebraic[71]*algebraic[72]+algebraic[71]*states[28]+(constants[30]*states[29])/algebraic[70])
    algebraic[132] = states[5]
    algebraic[100] = 1.00000*exp(-(constants[287]+4.00000*constants[2]*states[37])/constants[274])
    algebraic[138] = (algebraic[100]*(power(states[1], 5.00000)))/(power(algebraic[132], 4.00000))
    algebraic[139] = constants[41]*(algebraic[138]*states[21]*algebraic[118]-algebraic[113]*states[27])
    algebraic[102] = 1.00000*exp(-(constants[288]+2.00000*constants[2]*states[37])/constants[274])
    algebraic[104] = (algebraic[102]*(power(states[1], 2.00000)))/(power(states[1], 4.00000))
    algebraic[106] = custom_piecewise([greater(states[27] , constants[247]), states[27] , True, constants[247]])
    algebraic[120] = custom_piecewise([greater(algebraic[118] , constants[247]), algebraic[118] , True, constants[247]])
    algebraic[121] = constants[16]-states[55]
    algebraic[122] = ((constants[42]*(1.00000+states[13]/constants[43]))/(1.00000+states[13]/constants[44]))*((power(algebraic[104], 1.0/2))*algebraic[121]*(power(algebraic[106], 1.0/2))-states[55]*(power(algebraic[120], 1.0/2)))
    algebraic[108] = exp(-(constants[289]+4.00000*constants[2]*states[37])/constants[274])
    algebraic[140] = (algebraic[108]*(power(states[1], 4.00000)))/((power(algebraic[132], 2.00000))*(power(1.00000, 2.00000)))
    algebraic[110] = custom_piecewise([greater(states[56] , constants[248]), states[56] , True, constants[248]])
    algebraic[141] = constants[45]*((algebraic[110]/(algebraic[110]+constants[13]))*exp((constants[2]*states[37])/constants[274])*(states[55]/constants[16]))*((power(algebraic[140], 1.00000/2.00000))*states[55]*(power(algebraic[110]/1.00000, 1.00000/4.00000))-algebraic[121])
    algebraic[149] = states[6]
    algebraic[152] = 1.00000+algebraic[149]/constants[374]
    algebraic[155] = constants[34]*((states[32]/algebraic[152])*algebraic[132]-(states[17]/algebraic[46])*states[1])
    algebraic[153] = 1.00000+algebraic[132]/constants[376]+algebraic[149]/constants[377]
    algebraic[156] = constants[35]*((states[33]/algebraic[153])*algebraic[132]-(states[31]/algebraic[48])*states[1])
    algebraic[154] = 1.00000+algebraic[132]/constants[378]+algebraic[149]/constants[379]
    algebraic[157] = (exp((-constants[2]*states[37])/constants[274])*algebraic[49]*algebraic[153])/(algebraic[154]*algebraic[48])
    algebraic[158] = (constants[40]*(algebraic[157]*states[36]*states[31]*states[1]-states[30]*states[33]*algebraic[132]))/(algebraic[157]*constants[240]*constants[243]*constants[285]*(2.00000*constants[244]+(constants[244]*states[36])/constants[240]+(states[36]*states[31]*states[1])/(constants[240]*constants[243]*constants[285])+(constants[244]*states[30]*algebraic[132])/(constants[241]*constants[285])+(states[30]*states[33]*algebraic[132])/(constants[241]*constants[242]*constants[285])+(constants[244]*states[30])/constants[241]+(constants[244]*states[36]*states[1])/(constants[240]*constants[285])+(constants[244]*states[1])/constants[285]+(constants[244]*states[33]*algebraic[132])/(constants[242]*constants[285])+(constants[244]*algebraic[132])/constants[285]+(constants[244]*states[31]*states[1])/(constants[243]*constants[285])))
    algebraic[39] = ((states[15]*states[1])/constants[360])/algebraic[37]
    algebraic[162] = states[7]
    algebraic[170] = 1.00000+algebraic[132]/constants[360]+algebraic[149]/constants[361]+algebraic[162]/constants[362]
    algebraic[172] = ((states[16]*algebraic[132])/constants[360])/algebraic[170]
    algebraic[174] = 1.00000+algebraic[132]/constants[370]+algebraic[149]/constants[371]+algebraic[162]/constants[372]
    algebraic[175] = constants[36]*((algebraic[172]*states[29])/algebraic[44]-(algebraic[39]*states[34])/algebraic[174])
    algebraic[173] = 1.00000+algebraic[132]/constants[366]+algebraic[149]/constants[367]+algebraic[162]/constants[368]
    algebraic[177] = constants[38]*(((states[38]/algebraic[173])*states[29])/algebraic[44]-((states[26]/algebraic[42])*states[34])/algebraic[174])
    algebraic[168] = 1.00000+algebraic[132]/constants[351]+algebraic[149]/constants[353]+algebraic[162]/constants[355]
    algebraic[176] = constants[39]*(((states[34]/algebraic[174])*states[13])/algebraic[33]-((states[29]/algebraic[44])*states[14])/algebraic[168])
    algebraic[112] = exp(-(constants[290]-constants[7]*constants[2]*states[37])/constants[274])/1.00000
    algebraic[142] = (((algebraic[112]*(power(algebraic[132], constants[7])))/(power(states[1], constants[7]-1.00000)))*algebraic[0])/(algebraic[21]*algebraic[33])
    algebraic[143] = constants[46]*(algebraic[142]*states[8]*states[13]-states[0])
    algebraic[163] = 1.00000+algebraic[132]/constants[296]+algebraic[149]/constants[311]+algebraic[162]/constants[325]
    algebraic[165] = 1.00000+algebraic[132]/constants[332]+algebraic[149]/constants[336]+algebraic[162]/constants[340]
    algebraic[178] = custom_piecewise([greater(states[50] , constants[249]) & greater(states[0] , constants[249]), constants[47]*((states[50]/algebraic[165])/(states[50]/algebraic[165]+(states[51]/algebraic[163])*exp((constants[12]*constants[2]*states[37])/constants[274]))-(states[8]/algebraic[21])/(states[8]/algebraic[21]+(states[0]/algebraic[0])*exp((constants[12]*(constants[2]-1.00000)*states[37])/constants[274])))*((states[50]/algebraic[165])/(states[50]/algebraic[165]+constants[11])) , True, 0.00000])
    algebraic[144] = custom_piecewise([greater(fabs(states[37]) , constants[250]), (constants[51]*states[37]*(algebraic[132]*exp((constants[2]*states[37])/constants[274])-states[1]))/(exp((constants[2]*states[37])/constants[274])-1.00000) , True, (constants[51]*constants[274]*(algebraic[132]-states[1]))/constants[2]])
    algebraic[34] = ((states[13]*states[1])/constants[351])/algebraic[33]
    algebraic[169] = ((states[14]*algebraic[132])/constants[351])/algebraic[168]
    algebraic[179] = (constants[48]*(algebraic[169]*algebraic[132]-algebraic[34]*states[1]))/(constants[49]*(1.00000+algebraic[169]/constants[49])*(1.00000+algebraic[34]/constants[49]))
    algebraic[167] = 1.00000+algebraic[132]/constants[344]+algebraic[149]/constants[347]+algebraic[162]/constants[349]
    algebraic[180] = (constants[381]*algebraic[163]*algebraic[167])/(algebraic[165]*algebraic[165])
    algebraic[182] = custom_piecewise([equal(constants[0] , 1.00000) | equal(constants[0] , 2.00000) | equal(constants[0] , 5.00000), 0.00000 , True, constants[261]*(algebraic[180]*states[50]*states[50]-states[53]*states[51])])
    algebraic[189] = -((states[1]*states[1])/(constants[134]*constants[135]*(power(constants[282], 2.00000)))+(states[1]*states[0])/(constants[296]*constants[311]*(power(algebraic[0], 2.00000)))+(states[1]*states[8])/(constants[332]*constants[336]*(power(algebraic[21], 2.00000)))+(states[1]*states[10])/(constants[344]*constants[347]*(power(algebraic[26], 2.00000)))+(states[1]*states[11])/(constants[296]*constants[311]*(power(algebraic[29], 2.00000)))+(states[1]*states[12])/(constants[332]*constants[336]*(power(algebraic[31], 2.00000)))+(states[1]*states[13])/(constants[351]*constants[353]*(power(algebraic[33], 2.00000)))+(states[1]*states[21])/(constants[110]*constants[111]*(power(constants[277], 2.00000)))+(states[1]*algebraic[113])/(constants[107]*constants[108]*(power(constants[276], 2.00000)))+(states[1]*states[27])/(constants[113]*constants[114]*(power(constants[304], 2.00000)))+(states[1]*algebraic[118])/(constants[116]*constants[117]*(power(constants[320], 2.00000)))+(states[1]*states[17])/(constants[98]*constants[374]*(power(algebraic[46], 2.00000)))+(states[1]*states[22])/(constants[89]*constants[359]*(power(algebraic[36], 2.00000)))+(states[1]*states[20])/(constants[119]*constants[120]*(power(constants[278], 2.00000)))+(states[1]*states[15])/(constants[360]*constants[361]*(power(algebraic[37], 2.00000)))+(states[1]*states[24])/(constants[363]*constants[364]*(power(algebraic[40], 2.00000)))+(states[1]*states[25])/(constants[122]*constants[123]*(power(constants[306], 2.00000)))+(states[1]*states[23])/(constants[365]*constants[92]*(power(algebraic[41], 2.00000)))+(states[1]*states[18])/(constants[357]*constants[87]*(power(algebraic[35], 2.00000)))+(states[1]*states[26])/(constants[366]*constants[367]*(power(algebraic[42], 2.00000)))+(states[1]*states[28])/(constants[369]*constants[94]*(power(algebraic[43], 2.00000)))+(states[1]*states[29])/(constants[370]*constants[371]*(power(algebraic[44], 2.00000)))+(states[1]*states[31])/(constants[376]*constants[377]*(power(algebraic[48], 2.00000)))+(states[1]*states[30])/(constants[378]*constants[379]*(power(algebraic[49], 2.00000)))+(states[1]*states[3])/(constants[140]*constants[141]*(power(constants[284], 2.00000)))+(states[1]*states[2])/(constants[137]*constants[138]*(power(constants[283], 2.00000)))+(states[1]*states[56])/(constants[125]*constants[126]*(power(constants[279], 2.00000)))+(states[1]*constants[291])/(constants[128]*constants[129]*(power(constants[280], 2.00000)))+(states[1]*constants[310])/(constants[131]*constants[132]*(power(constants[281], 2.00000)))+(states[1]*states[19])/(constants[373]*constants[96]*(power(algebraic[45], 2.00000))))
    algebraic[190] = -((states[1]*states[1])/(constants[134]*constants[136]*(power(constants[282], 2.00000)))+(states[1]*states[0])/(constants[296]*constants[325]*(power(algebraic[0], 2.00000)))+(states[1]*states[8])/(constants[332]*constants[340]*(power(algebraic[21], 2.00000)))+(states[1]*states[10])/(constants[344]*constants[349]*(power(algebraic[26], 2.00000)))+(states[1]*states[11])/(constants[296]*constants[325]*(power(algebraic[29], 2.00000)))+(states[1]*states[12])/(constants[332]*constants[340]*(power(algebraic[31], 2.00000)))+(states[1]*states[13])/(constants[351]*constants[355]*(power(algebraic[33], 2.00000)))+(states[1]*states[21])/(constants[110]*constants[112]*(power(constants[277], 2.00000)))+(states[1]*algebraic[113])/(constants[107]*constants[109]*(power(constants[276], 2.00000)))+(states[1]*states[27])/(constants[113]*constants[115]*(power(constants[304], 2.00000)))+(states[1]*algebraic[118])/(constants[116]*constants[118]*(power(constants[320], 2.00000)))+(states[1]*states[17])/(constants[98]*constants[99]*(power(algebraic[46], 2.00000)))+(states[1]*states[22])/(constants[89]*constants[90]*(power(algebraic[36], 2.00000)))+(states[1]*states[20])/(constants[119]*constants[121]*(power(constants[278], 2.00000)))+(states[1]*states[15])/(constants[360]*constants[362]*(power(algebraic[37], 2.00000)))+(states[1]*states[24])/(constants[363]*constants[91]*(power(algebraic[40], 2.00000)))+(states[1]*states[25])/(constants[122]*constants[124]*(power(constants[306], 2.00000)))+(states[1]*states[23])/(constants[365]*constants[93]*(power(algebraic[41], 2.00000)))+(states[1]*states[18])/(constants[357]*constants[88]*(power(algebraic[35], 2.00000)))+(states[1]*states[26])/(constants[366]*constants[368]*(power(algebraic[42], 2.00000)))+(states[1]*states[28])/(constants[369]*constants[95]*(power(algebraic[43], 2.00000)))+(states[1]*states[29])/(constants[370]*constants[372]*(power(algebraic[44], 2.00000)))+(states[1]*states[31])/(constants[376]*constants[102]*(power(algebraic[48], 2.00000)))+(states[1]*states[30])/(constants[378]*constants[103]*(power(algebraic[49], 2.00000)))+(states[1]*states[3])/(constants[140]*constants[142]*(power(constants[284], 2.00000)))+(states[1]*states[2])/(constants[137]*constants[139]*(power(constants[283], 2.00000)))+(states[1]*states[56])/(constants[125]*constants[127]*(power(constants[279], 2.00000)))+(states[1]*constants[291])/(constants[128]*constants[130]*(power(constants[280], 2.00000)))+(states[1]*constants[310])/(constants[131]*constants[133]*(power(constants[281], 2.00000)))+(states[1]*states[19])/(constants[373]*constants[97]*(power(algebraic[45], 2.00000))))
    algebraic[193] = -((states[2]*states[1])/(constants[135]*constants[136]*(power(constants[282], 2.00000)))+(states[2]*states[0])/(constants[311]*constants[325]*(power(algebraic[0], 2.00000)))+(states[2]*states[8])/(constants[336]*constants[340]*(power(algebraic[21], 2.00000)))+(states[2]*states[10])/(constants[347]*constants[349]*(power(algebraic[26], 2.00000)))+(states[2]*states[11])/(constants[311]*constants[325]*(power(algebraic[29], 2.00000)))+(states[2]*states[12])/(constants[336]*constants[340]*(power(algebraic[31], 2.00000)))+(states[2]*states[13])/(constants[353]*constants[355]*(power(algebraic[33], 2.00000)))+(states[2]*states[21])/(constants[111]*constants[112]*(power(constants[277], 2.00000)))+(states[2]*algebraic[113])/(constants[108]*constants[109]*(power(constants[276], 2.00000)))+(states[2]*states[27])/(constants[114]*constants[115]*(power(constants[304], 2.00000)))+(states[2]*algebraic[118])/(constants[117]*constants[118]*(power(constants[320], 2.00000)))+(states[2]*states[17])/(constants[374]*constants[99]*(power(algebraic[46], 2.00000)))+(states[2]*states[22])/(constants[359]*constants[90]*(power(algebraic[36], 2.00000)))+(states[2]*states[20])/(constants[120]*constants[121]*(power(constants[278], 2.00000)))+(states[2]*states[15])/(constants[361]*constants[362]*(power(algebraic[37], 2.00000)))+(states[2]*states[24])/(constants[364]*constants[91]*(power(algebraic[40], 2.00000)))+(states[2]*states[25])/(constants[123]*constants[124]*(power(constants[306], 2.00000)))+(states[2]*states[23])/(constants[92]*constants[93]*(power(algebraic[41], 2.00000)))+(states[2]*states[18])/(constants[87]*constants[88]*(power(algebraic[35], 2.00000)))+(states[2]*states[26])/(constants[367]*constants[368]*(power(algebraic[42], 2.00000)))+(states[2]*states[28])/(constants[94]*constants[95]*(power(algebraic[43], 2.00000)))+(states[2]*states[29])/(constants[371]*constants[372]*(power(algebraic[44], 2.00000)))+(states[2]*states[31])/(constants[377]*constants[102]*(power(algebraic[48], 2.00000)))+(states[2]*states[30])/(constants[379]*constants[103]*(power(algebraic[49], 2.00000)))+(states[2]*states[3])/(constants[141]*constants[142]*(power(constants[284], 2.00000)))+(states[2]*states[2])/(constants[138]*constants[139]*(power(constants[283], 2.00000)))+(states[2]*states[56])/(constants[126]*constants[127]*(power(constants[279], 2.00000)))+(states[2]*constants[291])/(constants[129]*constants[130]*(power(constants[280], 2.00000)))+(states[2]*constants[310])/(constants[132]*constants[133]*(power(constants[281], 2.00000)))+(states[2]*states[19])/(constants[96]*constants[97]*(power(algebraic[45], 2.00000))))
    algebraic[196] = -((states[3]*states[1])/(constants[136]*constants[135]*(power(constants[282], 2.00000)))+(states[3]*states[0])/(constants[325]*constants[311]*(power(algebraic[0], 2.00000)))+(states[3]*states[8])/(constants[340]*constants[336]*(power(algebraic[21], 2.00000)))+(states[3]*states[10])/(constants[349]*constants[347]*(power(algebraic[26], 2.00000)))+(states[3]*states[11])/(constants[325]*constants[311]*(power(algebraic[29], 2.00000)))+(states[3]*states[12])/(constants[340]*constants[336]*(power(algebraic[31], 2.00000)))+(states[3]*states[13])/(constants[355]*constants[353]*(power(algebraic[33], 2.00000)))+(states[3]*states[21])/(constants[112]*constants[111]*(power(constants[277], 2.00000)))+(states[3]*algebraic[113])/(constants[109]*constants[108]*(power(constants[276], 2.00000)))+(states[3]*states[27])/(constants[115]*constants[114]*(power(constants[304], 2.00000)))+(states[3]*algebraic[118])/(constants[118]*constants[117]*(power(constants[320], 2.00000)))+(states[3]*states[17])/(constants[99]*constants[374]*(power(algebraic[46], 2.00000)))+(states[3]*states[22])/(constants[90]*constants[359]*(power(algebraic[36], 2.00000)))+(states[3]*states[20])/(constants[121]*constants[120]*(power(constants[278], 2.00000)))+(states[3]*states[15])/(constants[362]*constants[361]*(power(algebraic[37], 2.00000)))+(states[3]*states[24])/(constants[91]*constants[364]*(power(algebraic[40], 2.00000)))+(states[3]*states[25])/(constants[124]*constants[123]*(power(constants[306], 2.00000)))+(states[3]*states[23])/(constants[93]*constants[92]*(power(algebraic[41], 2.00000)))+(states[3]*states[18])/(constants[88]*constants[87]*(power(algebraic[35], 2.00000)))+(states[3]*states[26])/(constants[368]*constants[367]*(power(algebraic[42], 2.00000)))+(states[3]*states[28])/(constants[95]*constants[94]*(power(algebraic[43], 2.00000)))+(states[3]*states[29])/(constants[372]*constants[371]*(power(algebraic[44], 2.00000)))+(states[3]*states[31])/(constants[102]*constants[377]*(power(algebraic[48], 2.00000)))+(states[3]*states[30])/(constants[103]*constants[379]*(power(algebraic[49], 2.00000)))+(states[3]*states[3])/(constants[142]*constants[141]*(power(constants[284], 2.00000)))+(states[3]*states[2])/(constants[139]*constants[138]*(power(constants[283], 2.00000)))+(states[3]*states[56])/(constants[127]*constants[126]*(power(constants[279], 2.00000)))+(states[3]*constants[291])/(constants[130]*constants[129]*(power(constants[280], 2.00000)))+(states[3]*constants[310])/(constants[133]*constants[132]*(power(constants[281], 2.00000)))+(states[3]*states[19])/(constants[97]*constants[96]*(power(algebraic[45], 2.00000))))
    algebraic[197] = ((1.00000+states[1]/constants[134]+states[2]/constants[135])*states[1])/(constants[136]*(power(constants[282], 2.00000)))+((1.00000+states[1]/constants[296]+states[2]/constants[311])*states[0])/(constants[325]*(power(algebraic[0], 2.00000)))+((1.00000+states[1]/constants[332]+states[2]/constants[336])*states[8])/(constants[340]*(power(algebraic[21], 2.00000)))+((1.00000+states[1]/constants[344]+states[2]/constants[347])*states[10])/(constants[349]*(power(algebraic[26], 2.00000)))+((1.00000+states[1]/constants[296]+states[2]/constants[311])*states[11])/(constants[325]*(power(algebraic[29], 2.00000)))+((1.00000+states[1]/constants[332]+states[2]/constants[336])*states[12])/(constants[340]*(power(algebraic[31], 2.00000)))+((1.00000+states[1]/constants[351]+states[2]/constants[353])*states[13])/(constants[355]*(power(algebraic[33], 2.00000)))+((1.00000+states[1]/constants[110]+states[2]/constants[111])*states[21])/(constants[112]*(power(constants[277], 2.00000)))+((1.00000+states[1]/constants[107]+states[2]/constants[108])*algebraic[113])/(constants[109]*(power(constants[276], 2.00000)))+((1.00000+states[1]/constants[113]+states[2]/constants[114])*states[27])/(constants[115]*(power(constants[304], 2.00000)))+((1.00000+states[1]/constants[116]+states[2]/constants[117])*algebraic[118])/(constants[118]*(power(constants[320], 2.00000)))+((1.00000+states[1]/constants[98]+states[2]/constants[374])*states[17])/(constants[99]*(power(algebraic[46], 2.00000)))+((1.00000+states[1]/constants[89]+states[2]/constants[359])*states[22])/(constants[90]*(power(algebraic[36], 2.00000)))+((1.00000+states[1]/constants[119]+states[2]/constants[120])*states[20])/(constants[121]*(power(constants[278], 2.00000)))+((1.00000+states[1]/constants[360]+states[2]/constants[361])*states[15])/(constants[362]*(power(algebraic[37], 2.00000)))+((1.00000+states[1]/constants[363]+states[2]/constants[364])*states[24])/(constants[91]*(power(algebraic[40], 2.00000)))+((1.00000+states[1]/constants[122]+states[2]/constants[123])*states[25])/(constants[124]*(power(constants[306], 2.00000)))+((1.00000+states[1]/constants[365]+states[2]/constants[92])*states[23])/(constants[93]*(power(algebraic[41], 2.00000)))+((1.00000+states[1]/constants[357]+states[2]/constants[87])*states[18])/(constants[88]*(power(algebraic[35], 2.00000)))+((1.00000+states[1]/constants[366]+states[2]/constants[367])*states[26])/(constants[368]*(power(algebraic[42], 2.00000)))+((1.00000+states[1]/constants[369]+states[2]/constants[94])*states[28])/(constants[95]*(power(algebraic[43], 2.00000)))+((1.00000+states[1]/constants[370]+states[2]/constants[371])*states[29])/(constants[372]*(power(algebraic[44], 2.00000)))+((1.00000+states[1]/constants[376]+states[2]/constants[377])*states[31])/(constants[102]*(power(algebraic[48], 2.00000)))+((1.00000+states[1]/constants[378]+states[2]/constants[379])*states[30])/(constants[103]*(power(algebraic[49], 2.00000)))+((1.00000+states[1]/constants[140]+states[2]/constants[141])*states[3])/(constants[142]*(power(constants[284], 2.00000)))+((1.00000+states[1]/constants[137]+states[2]/constants[138])*states[2])/(constants[139]*(power(constants[283], 2.00000)))+((1.00000+states[1]/constants[125]+states[2]/constants[126])*states[56])/(constants[127]*(power(constants[279], 2.00000)))+((1.00000+states[1]/constants[128]+states[2]/constants[129])*constants[291])/(constants[130]*(power(constants[280], 2.00000)))+((1.00000+states[1]/constants[131]+states[2]/constants[132])*constants[310])/(constants[133]*(power(constants[281], 2.00000)))+((1.00000+states[1]/constants[373]+states[2]/constants[96])*states[19])/(constants[97]*(power(algebraic[45], 2.00000)))
    algebraic[205] = 1.00000+algebraic[197]
    algebraic[194] = ((1.00000+states[1]/constants[134]+states[3]/constants[136])*states[1])/(constants[135]*(power(constants[282], 2.00000)))+((1.00000+states[1]/constants[296]+states[3]/constants[325])*states[0])/(constants[311]*(power(algebraic[0], 2.00000)))+((1.00000+states[1]/constants[332]+states[3]/constants[340])*states[8])/(constants[336]*(power(algebraic[21], 2.00000)))+((1.00000+states[1]/constants[344]+states[3]/constants[349])*states[10])/(constants[347]*(power(algebraic[26], 2.00000)))+((1.00000+states[1]/constants[296]+states[3]/constants[325])*states[11])/(constants[311]*(power(algebraic[29], 2.00000)))+((1.00000+states[1]/constants[332]+states[3]/constants[340])*states[12])/(constants[336]*(power(algebraic[31], 2.00000)))+((1.00000+states[1]/constants[351]+states[3]/constants[355])*states[13])/(constants[353]*(power(algebraic[33], 2.00000)))+((1.00000+states[1]/constants[110]+states[3]/constants[112])*states[21])/(constants[111]*(power(constants[277], 2.00000)))+((1.00000+states[1]/constants[107]+states[3]/constants[109])*algebraic[113])/(constants[108]*(power(constants[276], 2.00000)))+((1.00000+states[1]/constants[113]+states[3]/constants[115])*states[27])/(constants[114]*(power(constants[304], 2.00000)))+((1.00000+states[1]/constants[116]+states[3]/constants[118])*algebraic[118])/(constants[117]*(power(constants[320], 2.00000)))+((1.00000+states[1]/constants[98]+states[3]/constants[99])*states[17])/(constants[374]*(power(algebraic[46], 2.00000)))+((1.00000+states[1]/constants[89]+states[3]/constants[90])*states[22])/(constants[359]*(power(algebraic[36], 2.00000)))+((1.00000+states[1]/constants[119]+states[3]/constants[121])*states[20])/(constants[120]*(power(constants[278], 2.00000)))+((1.00000+states[1]/constants[360]+states[3]/constants[362])*states[15])/(constants[361]*(power(algebraic[37], 2.00000)))+((1.00000+states[1]/constants[363]+states[3]/constants[91])*states[24])/(constants[364]*(power(algebraic[40], 2.00000)))+((1.00000+states[1]/constants[122]+states[3]/constants[124])*states[25])/(constants[123]*(power(constants[306], 2.00000)))+((1.00000+states[1]/constants[365]+states[3]/constants[93])*states[23])/(constants[92]*(power(algebraic[41], 2.00000)))+((1.00000+states[1]/constants[357]+states[3]/constants[88])*states[18])/(constants[87]*(power(algebraic[35], 2.00000)))+((1.00000+states[1]/constants[366]+states[3]/constants[368])*states[26])/(constants[367]*(power(algebraic[42], 2.00000)))+((1.00000+states[1]/constants[369]+states[3]/constants[95])*states[28])/(constants[94]*(power(algebraic[43], 2.00000)))+((1.00000+states[1]/constants[370]+states[3]/constants[372])*states[29])/(constants[371]*(power(algebraic[44], 2.00000)))+((1.00000+states[1]/constants[376]+states[3]/constants[102])*states[31])/(constants[377]*(power(algebraic[48], 2.00000)))+((1.00000+states[1]/constants[378]+states[3]/constants[103])*states[30])/(constants[379]*(power(algebraic[49], 2.00000)))+((1.00000+states[1]/constants[140]+states[3]/constants[142])*states[3])/(constants[141]*(power(constants[284], 2.00000)))+((1.00000+states[1]/constants[137]+states[3]/constants[139])*states[2])/(constants[138]*(power(constants[283], 2.00000)))+((1.00000+states[1]/constants[125]+states[3]/constants[127])*states[56])/(constants[126]*(power(constants[279], 2.00000)))+((1.00000+states[1]/constants[128]+states[3]/constants[130])*constants[291])/(constants[129]*(power(constants[280], 2.00000)))+((1.00000+states[1]/constants[131]+states[3]/constants[133])*constants[310])/(constants[132]*(power(constants[281], 2.00000)))+((1.00000+states[1]/constants[373]+states[3]/constants[97])*states[19])/(constants[96]*(power(algebraic[45], 2.00000)))
    algebraic[204] = 1.00000+algebraic[194]
    algebraic[191] = ((1.00000+states[2]/constants[135]+states[3]/constants[136])*states[1])/(constants[134]*(power(constants[282], 2.00000)))+((1.00000+states[2]/constants[311]+states[3]/constants[325])*states[0])/(constants[296]*(power(algebraic[0], 2.00000)))+((1.00000+states[2]/constants[336]+states[3]/constants[340])*states[8])/(constants[332]*(power(algebraic[21], 2.00000)))+((1.00000+states[2]/constants[347]+states[3]/constants[349])*states[10])/(constants[344]*(power(algebraic[26], 2.00000)))+((1.00000+states[2]/constants[311]+states[3]/constants[325])*states[11])/(constants[296]*(power(algebraic[29], 2.00000)))+((1.00000+states[2]/constants[336]+states[3]/constants[340])*states[12])/(constants[332]*(power(algebraic[31], 2.00000)))+((1.00000+states[2]/constants[353]+states[3]/constants[355])*states[13])/(constants[351]*(power(algebraic[33], 2.00000)))+((1.00000+states[2]/constants[111]+states[3]/constants[112])*states[21])/(constants[110]*(power(constants[277], 2.00000)))+((1.00000+states[2]/constants[108]+states[3]/constants[109])*algebraic[113])/(constants[107]*(power(constants[276], 2.00000)))+((1.00000+states[2]/constants[114]+states[3]/constants[115])*states[27])/(constants[113]*(power(constants[304], 2.00000)))+((1.00000+states[2]/constants[117]+states[3]/constants[118])*algebraic[118])/(constants[116]*(power(constants[320], 2.00000)))+((1.00000+states[2]/constants[374]+states[3]/constants[99])*states[17])/(constants[98]*(power(algebraic[46], 2.00000)))+((1.00000+states[2]/constants[359]+states[3]/constants[90])*states[22])/(constants[89]*(power(algebraic[36], 2.00000)))+((1.00000+states[2]/constants[120]+states[3]/constants[121])*states[20])/(constants[119]*(power(constants[278], 2.00000)))+((1.00000+states[2]/constants[361]+states[3]/constants[362])*states[15])/(constants[360]*(power(algebraic[37], 2.00000)))+((1.00000+states[2]/constants[364]+states[3]/constants[91])*states[24])/(constants[363]*(power(algebraic[40], 2.00000)))+((1.00000+states[2]/constants[123]+states[3]/constants[124])*states[25])/(constants[122]*(power(constants[306], 2.00000)))+((1.00000+states[2]/constants[92]+states[3]/constants[93])*states[23])/(constants[365]*(power(algebraic[41], 2.00000)))+((1.00000+states[2]/constants[87]+states[3]/constants[88])*states[18])/(constants[357]*(power(algebraic[35], 2.00000)))+((1.00000+states[2]/constants[367]+states[3]/constants[368])*states[26])/(constants[366]*(power(algebraic[42], 2.00000)))+((1.00000+states[2]/constants[94]+states[3]/constants[95])*states[28])/(constants[369]*(power(algebraic[43], 2.00000)))+((1.00000+states[2]/constants[371]+states[3]/constants[372])*states[29])/(constants[370]*(power(algebraic[44], 2.00000)))+((1.00000+states[2]/constants[377]+states[3]/constants[102])*states[31])/(constants[376]*(power(algebraic[48], 2.00000)))+((1.00000+states[2]/constants[379]+states[3]/constants[103])*states[30])/(constants[378]*(power(algebraic[49], 2.00000)))+((1.00000+states[2]/constants[141]+states[3]/constants[142])*states[3])/(constants[140]*(power(constants[284], 2.00000)))+((1.00000+states[2]/constants[138]+states[3]/constants[139])*states[2])/(constants[137]*(power(constants[283], 2.00000)))+((1.00000+states[2]/constants[126]+states[3]/constants[127])*states[56])/(constants[125]*(power(constants[279], 2.00000)))+((1.00000+states[2]/constants[129]+states[3]/constants[130])*constants[291])/(constants[128]*(power(constants[280], 2.00000)))+((1.00000+states[2]/constants[132]+states[3]/constants[133])*constants[310])/(constants[131]*(power(constants[281], 2.00000)))+((1.00000+states[2]/constants[96]+states[3]/constants[97])*states[19])/(constants[373]*(power(algebraic[45], 2.00000)))
    algebraic[203] = 1.00000+algebraic[191]+constants[271]/(constants[272]*(power(1.00000+states[1]/constants[272], 2.00000)))
    algebraic[195] = -((states[3]*states[1])/(constants[136]*constants[134]*(power(constants[282], 2.00000)))+(states[3]*states[0])/(constants[325]*constants[296]*(power(algebraic[0], 2.00000)))+(states[3]*states[8])/(constants[340]*constants[332]*(power(algebraic[21], 2.00000)))+(states[3]*states[10])/(constants[349]*constants[344]*(power(algebraic[26], 2.00000)))+(states[3]*states[11])/(constants[325]*constants[296]*(power(algebraic[29], 2.00000)))+(states[3]*states[12])/(constants[340]*constants[332]*(power(algebraic[31], 2.00000)))+(states[3]*states[13])/(constants[355]*constants[351]*(power(algebraic[33], 2.00000)))+(states[3]*states[21])/(constants[112]*constants[110]*(power(constants[277], 2.00000)))+(states[3]*algebraic[113])/(constants[109]*constants[107]*(power(constants[276], 2.00000)))+(states[3]*states[27])/(constants[115]*constants[113]*(power(constants[304], 2.00000)))+(states[3]*algebraic[118])/(constants[118]*constants[116]*(power(constants[320], 2.00000)))+(states[3]*states[17])/(constants[99]*constants[98]*(power(algebraic[46], 2.00000)))+(states[3]*states[22])/(constants[90]*constants[89]*(power(algebraic[36], 2.00000)))+(states[3]*states[20])/(constants[121]*constants[119]*(power(constants[278], 2.00000)))+(states[3]*states[15])/(constants[362]*constants[360]*(power(algebraic[37], 2.00000)))+(states[3]*states[24])/(constants[91]*constants[363]*(power(algebraic[40], 2.00000)))+(states[3]*states[25])/(constants[124]*constants[122]*(power(constants[306], 2.00000)))+(states[3]*states[23])/(constants[93]*constants[365]*(power(algebraic[41], 2.00000)))+(states[3]*states[18])/(constants[88]*constants[357]*(power(algebraic[35], 2.00000)))+(states[3]*states[26])/(constants[368]*constants[366]*(power(algebraic[42], 2.00000)))+(states[3]*states[28])/(constants[95]*constants[369]*(power(algebraic[43], 2.00000)))+(states[3]*states[29])/(constants[372]*constants[370]*(power(algebraic[44], 2.00000)))+(states[3]*states[31])/(constants[102]*constants[376]*(power(algebraic[48], 2.00000)))+(states[3]*states[30])/(constants[103]*constants[378]*(power(algebraic[49], 2.00000)))+(states[3]*states[3])/(constants[142]*constants[140]*(power(constants[284], 2.00000)))+(states[3]*states[2])/(constants[139]*constants[137]*(power(constants[283], 2.00000)))+(states[3]*states[56])/(constants[127]*constants[125]*(power(constants[279], 2.00000)))+(states[3]*constants[291])/(constants[130]*constants[128]*(power(constants[280], 2.00000)))+(states[3]*constants[310])/(constants[133]*constants[131]*(power(constants[281], 2.00000)))+(states[3]*states[19])/(constants[97]*constants[373]*(power(algebraic[45], 2.00000))))
    algebraic[192] = -((states[2]*states[1])/(constants[135]*constants[134]*(power(constants[282], 2.00000)))+(states[2]*states[0])/(constants[311]*constants[296]*(power(algebraic[0], 2.00000)))+(states[2]*states[8])/(constants[336]*constants[332]*(power(algebraic[21], 2.00000)))+(states[2]*states[10])/(constants[347]*constants[344]*(power(algebraic[26], 2.00000)))+(states[2]*states[11])/(constants[311]*constants[296]*(power(algebraic[29], 2.00000)))+(states[2]*states[12])/(constants[336]*constants[332]*(power(algebraic[31], 2.00000)))+(states[2]*states[13])/(constants[353]*constants[351]*(power(algebraic[33], 2.00000)))+(states[2]*states[21])/(constants[111]*constants[110]*(power(constants[277], 2.00000)))+(states[2]*algebraic[113])/(constants[108]*constants[107]*(power(constants[276], 2.00000)))+(states[2]*states[27])/(constants[114]*constants[113]*(power(constants[304], 2.00000)))+(states[2]*algebraic[118])/(constants[117]*constants[116]*(power(constants[320], 2.00000)))+(states[2]*states[17])/(constants[374]*constants[98]*(power(algebraic[46], 2.00000)))+(states[2]*states[22])/(constants[359]*constants[89]*(power(algebraic[36], 2.00000)))+(states[2]*states[20])/(constants[120]*constants[119]*(power(constants[278], 2.00000)))+(states[2]*states[15])/(constants[361]*constants[360]*(power(algebraic[37], 2.00000)))+(states[2]*states[24])/(constants[364]*constants[363]*(power(algebraic[40], 2.00000)))+(states[2]*states[25])/(constants[123]*constants[122]*(power(constants[306], 2.00000)))+(states[2]*states[23])/(constants[92]*constants[365]*(power(algebraic[41], 2.00000)))+(states[2]*states[18])/(constants[87]*constants[357]*(power(algebraic[35], 2.00000)))+(states[2]*states[26])/(constants[367]*constants[366]*(power(algebraic[42], 2.00000)))+(states[2]*states[28])/(constants[94]*constants[369]*(power(algebraic[43], 2.00000)))+(states[2]*states[29])/(constants[371]*constants[370]*(power(algebraic[44], 2.00000)))+(states[2]*states[31])/(constants[377]*constants[376]*(power(algebraic[48], 2.00000)))+(states[2]*states[30])/(constants[379]*constants[378]*(power(algebraic[49], 2.00000)))+(states[2]*states[3])/(constants[141]*constants[140]*(power(constants[284], 2.00000)))+(states[2]*states[2])/(constants[138]*constants[137]*(power(constants[283], 2.00000)))+(states[2]*states[56])/(constants[126]*constants[125]*(power(constants[279], 2.00000)))+(states[2]*constants[291])/(constants[129]*constants[128]*(power(constants[280], 2.00000)))+(states[2]*constants[310])/(constants[132]*constants[131]*(power(constants[281], 2.00000)))+(states[2]*states[19])/(constants[96]*constants[373]*(power(algebraic[45], 2.00000))))
    algebraic[206] = (((algebraic[203]*algebraic[196]*algebraic[193]+algebraic[205]*algebraic[189]*algebraic[192]+algebraic[204]*algebraic[190]*algebraic[195])-algebraic[204]*algebraic[205]*algebraic[203])-algebraic[190]*algebraic[196]*algebraic[192])-algebraic[189]*algebraic[193]*algebraic[195]
    algebraic[145] = ((algebraic[114]+algebraic[115]+algebraic[116]+algebraic[117])-algebraic[139])/constants[3]
    algebraic[146] = -algebraic[145]
    algebraic[147] = ((algebraic[119]+algebraic[139])-algebraic[122])/constants[3]
    algebraic[148] = -algebraic[147]
    algebraic[183] = ((algebraic[81]+algebraic[143])-algebraic[178])/constants[3]
    algebraic[184] = ((-algebraic[81]-algebraic[143])+algebraic[178])/constants[3]
    algebraic[123] = (algebraic[66]-algebraic[81])/constants[3]
    algebraic[124] = (-algebraic[66]+algebraic[81])/constants[3]
    algebraic[185] = (((-algebraic[66]-algebraic[143])+algebraic[179])-algebraic[176])/constants[3]
    algebraic[159] = (-algebraic[114]+algebraic[155])/constants[3]
    algebraic[125] = (algebraic[114]-algebraic[56])/constants[3]
    algebraic[186] = (-algebraic[59]+algebraic[175]+algebraic[56])/constants[3]
    algebraic[126] = (algebraic[59]-algebraic[115])/constants[3]
    algebraic[127] = (((algebraic[115]-algebraic[116])-algebraic[86])+algebraic[87])/constants[3]
    algebraic[128] = (algebraic[116]-algebraic[66])/constants[3]
    algebraic[129] = ((-algebraic[114]-algebraic[116])+algebraic[66]+algebraic[56])/constants[3]
    algebraic[187] = ((algebraic[66]-algebraic[119])+algebraic[177])/constants[3]
    algebraic[130] = (algebraic[119]-algebraic[73])/constants[3]
    algebraic[188] = (((((algebraic[73]-algebraic[117])+algebraic[176])-algebraic[87])-algebraic[175])-algebraic[177])/constants[3]
    algebraic[131] = (-algebraic[56]+algebraic[117]+algebraic[86])/constants[3]
    algebraic[160] = ((algebraic[86]+algebraic[156])-algebraic[158])/constants[3]
    algebraic[161] = (-algebraic[86]+algebraic[158])/constants[3]
    algebraic[181] = constants[50]*(algebraic[162]*states[1]-states[3]*algebraic[132])
    algebraic[198] = (((((((((-algebraic[114]+2.00000*algebraic[56])-algebraic[116])+algebraic[66]+algebraic[117]+algebraic[155]+algebraic[156]+algebraic[175])-algebraic[158])-5.00000*algebraic[139])-2.00000*algebraic[122])-4.00000*algebraic[141])+(constants[7]-1.00000)*algebraic[143]+2.00000*algebraic[179]+algebraic[144])-algebraic[181])/constants[3]
    algebraic[200] = -((states[1]*constants[292])/(constants[134]*constants[282])+(states[1]*algebraic[183])/(constants[296]*algebraic[0])+(states[1]*algebraic[184])/(constants[332]*algebraic[21])+(states[1]*constants[262])/(constants[344]*algebraic[26])+(states[1]*algebraic[123])/(constants[296]*algebraic[29])+(states[1]*algebraic[124])/(constants[332]*algebraic[31])+(states[1]*algebraic[185])/(constants[351]*algebraic[33])+(states[1]*algebraic[145])/(constants[110]*constants[277])+(states[1]*algebraic[146])/(constants[107]*constants[276])+(states[1]*algebraic[147])/(constants[113]*constants[304])+(states[1]*algebraic[148])/(constants[116]*constants[320])+(states[1]*algebraic[159])/(constants[98]*algebraic[46])+(states[1]*algebraic[131])/(constants[89]*algebraic[36])+(states[1]*algebraic[125])/(constants[119]*constants[278])+(states[1]*algebraic[186])/(constants[360]*algebraic[37])+(states[1]*algebraic[126])/(constants[363]*algebraic[40])+(states[1]*algebraic[127])/(constants[122]*constants[306])+(states[1]*algebraic[128])/(constants[365]*algebraic[41])+(states[1]*algebraic[129])/(constants[357]*algebraic[35])+(states[1]*algebraic[187])/(constants[366]*algebraic[42])+(states[1]*algebraic[130])/(constants[369]*algebraic[43])+(states[1]*algebraic[188])/(constants[370]*algebraic[44])+(states[1]*algebraic[160])/(constants[376]*algebraic[48])+(states[1]*algebraic[161])/(constants[378]*algebraic[49])+(states[1]*constants[294])/(constants[140]*constants[284])+(states[1]*constants[293])/(constants[137]*constants[283])+(states[1]*constants[263])/(constants[125]*constants[279])+(states[1]*constants[270])/(constants[128]*constants[280])+(states[1]*constants[269])/(constants[131]*constants[281])+(states[1]*constants[264])/(constants[373]*algebraic[45]))+algebraic[198]
    algebraic[201] = -((states[2]*constants[292])/(constants[135]*constants[282])+(states[2]*algebraic[183])/(constants[311]*algebraic[0])+(states[2]*algebraic[184])/(constants[336]*algebraic[21])+(states[2]*constants[262])/(constants[347]*algebraic[26])+(states[2]*algebraic[123])/(constants[311]*algebraic[29])+(states[2]*algebraic[124])/(constants[336]*algebraic[31])+(states[2]*algebraic[185])/(constants[353]*algebraic[33])+(states[2]*algebraic[145])/(constants[111]*constants[277])+(states[2]*algebraic[146])/(constants[108]*constants[276])+(states[2]*algebraic[147])/(constants[114]*constants[304])+(states[2]*algebraic[148])/(constants[117]*constants[320])+(states[2]*algebraic[159])/(constants[374]*algebraic[46])+(states[2]*algebraic[131])/(constants[359]*algebraic[36])+(states[2]*algebraic[125])/(constants[120]*constants[278])+(states[2]*algebraic[186])/(constants[361]*algebraic[37])+(states[2]*algebraic[126])/(constants[364]*algebraic[40])+(states[2]*algebraic[127])/(constants[123]*constants[306])+(states[2]*algebraic[128])/(constants[92]*algebraic[41])+(states[2]*algebraic[129])/(constants[87]*algebraic[35])+(states[2]*algebraic[187])/(constants[367]*algebraic[42])+(states[2]*algebraic[130])/(constants[94]*algebraic[43])+(states[2]*algebraic[188])/(constants[371]*algebraic[44])+(states[2]*algebraic[160])/(constants[377]*algebraic[48])+(states[2]*algebraic[161])/(constants[379]*algebraic[49])+(states[2]*constants[294])/(constants[141]*constants[284])+(states[2]*constants[293])/(constants[138]*constants[283])+(states[2]*constants[263])/(constants[126]*constants[279])+(states[2]*constants[270])/(constants[129]*constants[280])+(states[2]*constants[269])/(constants[132]*constants[281])+(states[2]*constants[264])/(constants[96]*algebraic[45]))+constants[295]
    algebraic[199] = algebraic[181]/constants[3]
    algebraic[202] = -((states[3]*constants[292])/(constants[136]*constants[282])+(states[3]*algebraic[183])/(constants[325]*algebraic[0])+(states[3]*algebraic[184])/(constants[340]*algebraic[21])+(states[3]*constants[262])/(constants[349]*algebraic[26])+(states[3]*algebraic[123])/(constants[325]*algebraic[29])+(states[3]*algebraic[124])/(constants[340]*algebraic[31])+(states[3]*algebraic[185])/(constants[355]*algebraic[33])+(states[3]*algebraic[145])/(constants[112]*constants[277])+(states[3]*algebraic[146])/(constants[109]*constants[276])+(states[3]*algebraic[147])/(constants[115]*constants[304])+(states[3]*algebraic[148])/(constants[118]*constants[320])+(states[3]*algebraic[159])/(constants[99]*algebraic[46])+(states[3]*algebraic[131])/(constants[90]*algebraic[36])+(states[3]*algebraic[125])/(constants[121]*constants[278])+(states[3]*algebraic[186])/(constants[362]*algebraic[37])+(states[3]*algebraic[126])/(constants[91]*algebraic[40])+(states[3]*algebraic[127])/(constants[124]*constants[306])+(states[3]*algebraic[128])/(constants[93]*algebraic[41])+(states[3]*algebraic[129])/(constants[88]*algebraic[35])+(states[3]*algebraic[187])/(constants[368]*algebraic[42])+(states[3]*algebraic[130])/(constants[95]*algebraic[43])+(states[3]*algebraic[188])/(constants[372]*algebraic[44])+(states[3]*algebraic[160])/(constants[102]*algebraic[48])+(states[3]*algebraic[161])/(constants[103]*algebraic[49])+(states[3]*constants[294])/(constants[142]*constants[284])+(states[3]*constants[293])/(constants[139]*constants[283])+(states[3]*constants[263])/(constants[127]*constants[279])+(states[3]*constants[270])/(constants[130]*constants[280])+(states[3]*constants[269])/(constants[133]*constants[281])+(states[3]*constants[264])/(constants[97]*algebraic[45]))+algebraic[199]
    algebraic[1] = 1.00000+states[5]/constants[351]+states[6]/constants[353]+states[7]/constants[355]
    algebraic[2] = 1.00000+states[5]/constants[357]
    algebraic[3] = 1.00000+states[6]/constants[359]
    algebraic[4] = 1.00000+states[5]/constants[360]+states[6]/constants[361]+states[7]/constants[362]
    algebraic[5] = 1.00000+states[5]/constants[363]+states[6]/constants[364]
    algebraic[6] = 1.00000+states[5]/constants[365]
    algebraic[7] = 1.00000+states[5]/constants[366]+states[6]/constants[367]+states[7]/constants[368]
    algebraic[8] = 1.00000+states[5]/constants[369]
    algebraic[9] = 1.00000+states[5]/constants[370]+states[6]/constants[371]+states[7]/constants[372]
    algebraic[10] = 1.00000+states[5]/constants[373]
    algebraic[11] = 1.00000+states[6]/constants[374]
    algebraic[12] = 1.00000+states[1]/constants[375]
    algebraic[13] = 1.00000+states[5]/constants[376]+states[6]/constants[377]
    algebraic[14] = 1.00000+states[5]/constants[378]+states[6]/constants[379]
    algebraic[19] = algebraic[17]
    algebraic[24] = algebraic[22]
    algebraic[133] = 1.00000+algebraic[132]/constants[357]
    algebraic[134] = 1.00000+algebraic[132]/constants[365]
    algebraic[135] = 1.00000+algebraic[132]/constants[369]
    algebraic[136] = 1.00000+algebraic[132]/constants[373]
    algebraic[137] = 1.00000+algebraic[132]/constants[375]
    algebraic[150] = 1.00000+algebraic[149]/constants[359]
    algebraic[151] = 1.00000+algebraic[132]/constants[363]+algebraic[149]/constants[364]
    algebraic[164] = algebraic[163]
    algebraic[166] = algebraic[165]
    algebraic[171] = (states[16]*(1.00000+algebraic[132]/constants[360]))/algebraic[170]
    return algebraic

def custom_piecewise(cases):
    """Compute result of a piecewise function"""
    return select(cases[0::2],cases[1::2])

def solve_model():
    """Solve model with ODE solver"""
    from scipy.integrate import ode
    # Initialise constants and state variables
    (init_states, constants) = initConsts()

    # Set timespan to solve over
    voi = linspace(0, 10, 500)

    # Construct ODE object to solve
    r = ode(computeRates)
    r.set_integrator('vode', method='bdf', atol=1e-06, rtol=1e-06, max_step=1)
    r.set_initial_value(init_states, voi[0])
    r.set_f_params(constants)

    # Solve model
    states = array([[0.0] * len(voi)] * sizeStates)
    states[:,0] = init_states
    for (i,t) in enumerate(voi[1:]):
        if r.successful():
            r.integrate(t)
            states[:,i+1] = r.y
        else:
            break

    # Compute algebraic variables
    algebraic = computeAlgebraic(constants, states, voi)
    return (voi, states, algebraic)

def plot_model(voi, states, algebraic):
    """Plot variables against variable of integration"""
    import pylab
    (legend_states, legend_algebraic, legend_voi, legend_constants) = createLegends()
    pylab.figure(1)
    pylab.plot(voi,vstack((states,algebraic)).T)
    pylab.xlabel(legend_voi)
    pylab.legend(legend_states + legend_algebraic, loc='best')
    pylab.show()

if __name__ == "__main__":
    (voi, states, algebraic) = solve_model()
    plot_model(voi, states, algebraic)