R/hes_spm_g.r

Defines functions hes_loglik_g

d_f_j1_a0_abq_g <- 
function (a0, a2, b0, b2, q0, q2, r0, tij, t0, geno_a, geno_b, 
    geno_q) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- b0 + geno_b * (b2 - b0)/2
    .e6 <- .e5^2
    .e7 <- .e4^2
    .e8 <- .e7 + 2 * (.e6 * .e3)
    .e9 <- sqrt(.e8)
    .e10 <- 2 * .e3
    .e11 <- .e4 + .e9
    .e12 <- .e11/.e10
    .e13 <- r0 - .e12
    .e14 <- tij - t0
    .e15 <- .e10 + 2 * (.e9/.e13)
    .e16 <- .e4/.e9
    .e18 <- exp(2 * (.e9 * .e14))
    .e20 <- .e15 * .e18 - .e10
    .e21 <- .e3 * .e13
    .e22 <- .e16 + 1
    .e23 <- 2 * .e16
    .e24 <- 0.5 * geno_a
    .e25 <- .e22 * .e9
    .e27 <- .e25/.e21 + .e23
    .e28 <- .e27/.e13
    .e31 <- .e15 * .e4 * .e14/.e9
    .e32 <- 1 - .e24
    .e33 <- .e6/.e9
    .e34 <- .e28 + 2 * .e31
    .e35 <- 2 * .e21
    .e36 <- 0.5 * .e33
    .e41 <- .e32 * .e4/.e9
    .e42 <- .e12 + 2 * (.e9/.e20)
    .e43 <- .e3/.e9
    .e44 <- 0.5 * .e16
    .e46 <- .e23 - 2 * (.e34 * .e18 * .e9/.e20)
    .e47 <- .e8 * .e9
    .e48 <- .e15 * .e6
    .e49 <- .e15 * .e3
    .e50 <- .e22/.e10
    .e52 <- .e4/.e8
    .e53 <- .e33 - .e11/.e3
    .e54 <- .e36 - .e12
    .e55 <- .e50 + .e46/.e20
    .e56 <- .e22/.e9
    .e57 <- .e21^2
    .e59 <- .e41 + 1 - .e24
    .e61 <- .e48 * .e14/.e9
    .e63 <- .e49 * .e14/.e9
    .e65 <- .e4 * .e6/.e47
    .e66 <- 0.5 + .e44
    .e67 <- 2 * .e43
    .e72 <- .e59 * .e9/.e35 + .e41
    .e76 <- .e66 * .e9/.e35 + .e44
    .e82 <- 0.5 - 0.5 * (.e7/.e8)
    .e83 <- 1 - (.e32 * .e7/.e8 + .e24)
    .e85 <- 2 * ((.e54 * .e9/.e35 + .e36)/.e13)
    .e86 <- 2 * ((.e43 + 1/(2 * .e13))/.e13)
    .e87 <- 2 * ((1/.e13 + .e67)/.e13)
    .e88 <- 2 + 2 * ((.e53 * .e9/.e35 + .e33)/.e13)
    .e90 <- .e28 + .e22 * .e3 * .e9/.e57
    .e93 <- (.e61 + 1 + .e85) * .e18 - 1
    .e94 <- .e56 - .e52
    .e99 <- .e31 + 2 * (.e76/.e13)
    .e101 <- (.e88 + 2 * .e61) * .e18 - 2
    .e102 <- .e4 * .e3
    .e104 <- 2 * (.e72/.e13) + 2 * (.e32 * .e15 * .e4 * .e14/.e9)
    .e105 <- .e86 + 2 * .e63
    .e106 <- .e87 + 4 * .e63
    .e107 <- .e34 * .e6
    .e108 <- .e34 * .e3
    .e118 <- .e41 - .e104 * .e18 * .e9/.e20
    .e125 <- .e48/.e8
    .e126 <- .e49/.e8
    .e127 <- .e102/.e47
    .e128 <- .e33 - .e101 * .e9/.e20
    .e130 <- .e43 - .e105 * .e18 * .e9/.e20
    .e132 <- 0.5 * .e56 - 0.5 * .e52
    .e133 <- .e44 - .e99 * .e18 * .e9/.e20
    .e134 <- .e36 - .e93 * .e9/.e20
    .e135 <- 2 * (.e82/.e9)
    .e136 <- 2 * (.e83/.e9)
    .e137 <- 2 * .e65
    .e138 <- 2 * (.e3 * .e9)
    .e139 <- .e67 - .e106 * .e18 * .e9/.e20
    c(a0 = -(0.5 * ((.e83/.e138 + (.e136 - (.e104 * .e46 + 2 * 
        ((((.e90 * .e59/2 + (.e94 * .e32 * .e4 + 1 - .e24)/.e13)/.e3 + 
            .e136)/.e13 + (2 * (.e34 * .e32 * .e4) + 2 * (.e83 * 
            .e15 + 2 * (.e72 * .e4/.e13))) * .e14/.e9) * .e9 + 
            .e34 * .e118)) * .e18/.e20)/.e20 - (.e59/.e10 + 2 * 
        (.e118/.e20)) * .e55/.e42) * .e32/.e42)), a2 = -(0.5 * 
        (geno_a * (.e82/.e138 + (.e135 - (.e99 * .e46 + 2 * ((((.e90 * 
            .e66/2 + (.e132 * .e4 + 0.5)/.e13)/.e3 + .e135)/.e13 + 
            (.e34 * .e4 + 2 * (.e82 * .e15 + 2 * (.e76 * .e4/.e13))) * 
                .e14/.e9) * .e9 + .e34 * .e133)) * .e18/.e20)/.e20 - 
            .e55 * (.e66/.e10 + 2 * (.e133/.e20))/.e42) * .e32/.e42)), 
        b0 = 0.5 * ((((.e106 * .e46 + 2 * ((((.e28 + (.e25/.e57 - 
            4 * .e52) * .e3)/.e9 + (2 * .e56 - 2 * .e52)/.e13)/.e13 + 
            (2 * ((.e87 - 2 * .e126) * .e4) + 4 * .e108) * .e14/.e9) * 
            .e9 + .e34 * .e139)) * .e18/.e20 + 4 * .e127)/.e20 + 
            .e55 * (1/.e9 + 2 * (.e139/.e20))/.e42 + .e4/.e47) * 
            .e32 * (1 - 0.5 * geno_b) * .e5/.e42), b2 = 0.5 * 
            (geno_b * (((.e105 * .e46 + 2 * ((((.e90/2 - 2 * 
                (.e102/.e8))/.e9 + .e94/.e13)/.e13 + (2 * .e108 + 
                2 * ((.e86 - .e126) * .e4)) * .e14/.e9) * .e9 + 
                .e34 * .e130)) * .e18/.e20 + 2 * .e127)/.e20 + 
                .e55 * (1/(2 * .e9) + 2 * (.e130/.e20))/.e42 + 
                .e4/(2 * .e47)) * .e32 * .e5/.e42), q0 = 0.5 * 
            ((((.e101 * .e46 + 2 * (((((.e27 * .e53/2 + .e94 * 
                .e6)/.e21 - (.e22 * (r0 - (.e53/2 + .e12)) * 
                .e9/.e57 + .e137))/.e13 + (2 * .e107 + 2 * ((.e88 - 
                .e125) * .e4)) * .e14/.e9) * .e9 + .e34 * .e128) * 
                .e18))/.e20 + .e137)/.e20 + .e55 * (.e53/.e10 + 
                2 * (.e128/.e20))/.e42 + (.e22/.e3 + .e65)/.e10) * 
                .e32 * (1 - 0.5 * geno_q)/.e42), q2 = 0.5 * (geno_q * 
            (((.e93 * .e46 + 2 * (((((.e27 * .e54/2 + .e132 * 
                .e6)/.e21 - (.e22 * (0.5 * .e13 - .e54/2) * .e9/.e57 + 
                .e65))/.e13 + (.e107 + 2 * ((1 + .e85 - 0.5 * 
                .e125) * .e4)) * .e14/.e9) * .e9 + .e34 * .e134) * 
                .e18))/.e20 + .e65)/.e20 + .e55 * (.e54/.e10 + 
                2 * (.e134/.e20))/.e42 + (.e50 + 0.5 * .e65)/.e10) * 
            .e32/.e42))
}

d_f_j1_a2_abq_g <- 
function (a0, a2, b0, b2, q0, q2, r0, tij, t0, geno_a, geno_b, 
    geno_q) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- b0 + geno_b * (b2 - b0)/2
    .e6 <- .e5^2
    .e7 <- .e4^2
    .e8 <- .e7 + 2 * (.e6 * .e3)
    .e9 <- sqrt(.e8)
    .e10 <- 2 * .e3
    .e11 <- .e4 + .e9
    .e12 <- .e11/.e10
    .e13 <- r0 - .e12
    .e14 <- tij - t0
    .e15 <- .e10 + 2 * (.e9/.e13)
    .e16 <- .e4/.e9
    .e18 <- exp(2 * (.e9 * .e14))
    .e20 <- .e15 * .e18 - .e10
    .e21 <- .e3 * .e13
    .e22 <- .e16 + 1
    .e23 <- 2 * .e21
    .e24 <- .e22 * .e9
    .e25 <- .e6/.e9
    .e27 <- .e24/.e23 + .e16
    .e30 <- .e15 * .e4 * .e14/.e9
    .e31 <- .e27/.e13
    .e32 <- .e31 + .e30
    .e33 <- 0.5 * .e25
    .e34 <- .e3/.e9
    .e35 <- 0.5 * .e16
    .e39 <- .e12 + 2 * (.e9/.e20)
    .e40 <- .e16 - 2 * (.e32 * .e18 * .e9/.e20)
    .e41 <- .e8 * .e9
    .e42 <- .e15 * .e6
    .e43 <- .e15 * .e3
    .e45 <- .e25 - .e11/.e3
    .e46 <- .e33 - .e12
    .e47 <- 2 * .e13
    .e48 <- 4 * .e3
    .e50 <- .e42 * .e14/.e9
    .e52 <- .e43 * .e14/.e9
    .e53 <- .e4 * .e6
    .e54 <- .e4/.e8
    .e55 <- 0.5 + .e35
    .e56 <- 2 * .e34
    .e58 <- .e40/.e20 + .e22/.e48
    .e59 <- .e22/.e9
    .e60 <- .e23^2
    .e66 <- .e55 * .e9/.e23 + .e35
    .e68 <- .e53/.e41
    .e70 <- 0.5 - 0.5 * (.e7/.e8)
    .e72 <- 2 * ((.e46 * .e9/.e23 + .e33)/.e13)
    .e73 <- 2 * ((.e34 + 1/.e47)/.e13)
    .e74 <- 2 * ((1/.e13 + .e56)/.e13)
    .e75 <- 2 + 2 * ((.e45 * .e9/.e23 + .e25)/.e13)
    .e78 <- (.e50 + 1 + .e72) * .e18 - 1
    .e79 <- .e30 + 2 * (.e66/.e13)
    .e81 <- (.e75 + 2 * .e50) * .e18 - 2
    .e82 <- .e4 * .e3
    .e83 <- .e73 + 2 * .e52
    .e84 <- .e74 + 4 * .e52
    .e85 <- .e32 * .e6
    .e86 <- .e32 * .e3
    .e89 <- .e31 + 2 * (.e22 * .e3 * .e9/.e60)
    .e95 <- .e22/.e48^2
    .e96 <- .e59 - .e54
    .e98 <- .e8 * .e3 * .e9
    .e99 <- .e70/.e9
    .e106 <- .e42/.e8
    .e107 <- .e43/.e8
    .e108 <- .e82/.e41
    .e109 <- .e25 - .e81 * .e9/.e20
    .e110 <- .e34 - .e83 * .e18 * .e9/.e20
    .e112 <- 0.5 * .e59 - 0.5 * .e54
    .e113 <- 0.5 * .e68
    .e114 <- .e35 - .e79 * .e18 * .e9/.e20
    .e115 <- .e33 - .e78 * .e9/.e20
    .e116 <- 2 * .e54
    .e117 <- .e56 - .e84 * .e18 * .e9/.e20
    c(a2 = -(0.5 * (geno_a^2 * ((.e99 - (.e79 * .e40 + 2 * ((((.e89 * 
        .e55/2 + (.e112 * .e4 + 0.5)/.e47)/.e3 + .e99)/.e13 + 
        (((.e27 + 2 * .e66)/.e13 + .e30) * .e4 + .e70 * .e15) * 
            .e14/.e9) * .e9 + .e32 * .e114)) * .e18/.e20)/.e20 + 
        .e70/(4 * (.e3 * .e9)) - .e58 * (.e55/.e10 + 2 * (.e114/.e20))/.e39)/.e39)), 
        b0 = 0.5 * (geno_a * (((.e40 * .e84 + 2 * ((((.e31 + 
            (2 * (.e24/.e60) - .e116) * .e3)/.e9 + (2 * .e59 - 
            .e116)/.e47)/.e13 + ((.e74 - 2 * .e107) * .e4 + 4 * 
            .e86) * .e14/.e9) * .e9 + .e32 * .e117)) * .e18/.e20 + 
            2 * .e108)/.e20 + .e58 * (1/.e9 + 2 * (.e117/.e20))/.e39 + 
            .e4/(2 * .e41)) * (1 - 0.5 * geno_b) * .e5/.e39), 
        b2 = 0.5 * (geno_a * geno_b * (((.e40 * .e83 + 2 * ((((.e89/2 - 
            .e82/.e8)/.e9 + .e96/.e47)/.e13 + ((.e73 - .e107) * 
            .e4 + 2 * .e86) * .e14/.e9) * .e9 + .e32 * .e110)) * 
            .e18/.e20 + .e108)/.e20 + .e58 * (1/(2 * .e9) + 2 * 
            (.e110/.e20))/.e39 + .e4/(4 * .e41)) * .e5/.e39), 
        q0 = 0.5 * (geno_a * (((.e81 * .e40 + 2 * (((((.e27 * 
            .e45/2 + .e96 * .e6/2)/.e21 - (.e68 + 2 * (.e22 * 
            (r0 - (.e45/2 + .e12)) * .e9/.e60)))/.e13 + ((.e75 - 
            .e106) * .e4 + 2 * .e85) * .e14/.e9) * .e9 + .e32 * 
            .e109) * .e18))/.e20 + .e68)/.e20 + .e58 * (.e45/.e10 + 
            2 * (.e109/.e20))/.e39 + .e53/(4 * .e98) + 4 * .e95) * 
            (1 - 0.5 * geno_q)/.e39), q2 = 0.5 * (geno_a * geno_q * 
            (((.e78 * .e40 + 2 * (((((.e27 * .e46/2 + .e112 * 
                .e6/2)/.e21 - (.e113 + 2 * (.e22 * (0.5 * .e13 - 
                .e46/2) * .e9/.e60)))/.e13 + (.e85 + (1 + .e72 - 
                0.5 * .e106) * .e4) * .e14/.e9) * .e9 + .e32 * 
                .e115) * .e18))/.e20 + .e113)/.e20 + .e58 * (.e46/.e10 + 
                2 * (.e115/.e20))/.e39 + .e53/(8 * .e98) + 2 * 
                .e95)/.e39))
}

d_f_j1_b0_bq_g <- 
function (a0, a2, b0, b2, q0, q2, r0, tij, t0, geno_a, geno_b, 
    geno_q) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- b0 + geno_b * (b2 - b0)/2
    .e6 <- .e5^2
    .e7 <- .e6 * .e3
    .e9 <- .e4^2 + 2 * .e7
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e3
    .e12 <- .e4 + .e10
    .e13 <- .e12/.e11
    .e14 <- r0 - .e13
    .e15 <- tij - t0
    .e16 <- .e11 + 2 * (.e10/.e14)
    .e18 <- exp(2 * (.e10 * .e15))
    .e20 <- .e16 * .e18 - .e11
    .e21 <- .e3/.e10
    .e22 <- 4 * .e21
    .e23 <- .e16 * .e3
    .e24 <- .e6/.e10
    .e26 <- .e23 * .e15/.e10
    .e27 <- 4 * .e26
    .e29 <- (2/.e14 + .e22)/.e14 + .e27
    .e30 <- 0.5 * .e24
    .e31 <- 0.5 * geno_q
    .e33 <- 2 * (.e3 * .e14)
    .e34 <- 1 - .e31
    .e38 <- .e13 + 2 * (.e10/.e20)
    .e40 <- .e22 - 2 * (.e29 * .e18 * .e10/.e20)
    .e41 <- 0.5 * geno_b
    .e42 <- .e9 * .e10
    .e45 <- .e16 * .e6 * .e15/.e10
    .e47 <- .e24 - .e12/.e3
    .e48 <- .e30 - .e13
    .e49 <- 1 - .e41
    .e50 <- 2 * .e21
    .e51 <- 1/.e10
    .e52 <- 2 * .e14
    .e58 <- .e40/.e20 + .e51
    .e59 <- .e3^2
    .e61 <- 2 * ((.e48 * .e10/.e33 + .e30)/.e14)
    .e62 <- 2 * ((.e21 + 1/.e52)/.e14)
    .e63 <- 2 * ((1/.e14 + .e50)/.e14)
    .e64 <- 2 + 2 * ((.e47 * .e10/.e33 + .e24)/.e14)
    .e65 <- .e22 + 4/.e14
    .e67 <- (.e45 + 1 + .e61) * .e18 - 1
    .e73 <- (.e64 + 2 * .e45) * .e18 - 2
    .e75 <- 0.5 - 0.5 * (.e7/.e9)
    .e76 <- 1 - (.e34 * .e6 * .e3/.e9 + .e31)
    .e77 <- .e62 + 2 * .e26
    .e78 <- .e63 + .e27
    .e91 <- .e23/.e9
    .e92 <- .e6/.e42
    .e93 <- .e24 - .e73 * .e10/.e20
    .e94 <- .e3/.e42
    .e95 <- .e21 - .e77 * .e18 * .e10/.e20
    .e96 <- .e59/.e42
    .e97 <- .e59/.e9
    .e98 <- .e30 - .e67 * .e10/.e20
    .e99 <- .e50 - .e78 * .e18 * .e10/.e20
    .e100 <- 4 * (.e75/.e10)
    .e101 <- 4 * (.e76/.e10)
    c(b0 = -(0.5 * ((.e58 * (1 - (.e49 * (.e51 + 2 * (.e99/.e20)) * 
        .e6/.e38 + .e41)) - (((.e78 * .e40 + 2 * (.e29 * .e99 + 
        (.e65/.e14 - 8 * .e97)/.e14 + (4 * .e29 + 4 * (.e63 - 
        2 * .e91)) * .e3 * .e15)) * .e18/.e20 + 8 * .e96)/.e20 + 
        2 * .e94) * .e49 * .e6) * .e49/.e38)), b2 = -(0.5 * (geno_b * 
        (.e58 * (0.5 - (1/(2 * .e10) + 2 * (.e95/.e20)) * .e6/.e38) - 
            (((.e77 * .e40 + 2 * (.e29 * .e95 + (.e65/.e52 - 
                4 * .e97)/.e14 + (2 * .e29 + 4 * (.e62 - .e91)) * 
                .e3 * .e15)) * .e18/.e20 + 4 * .e96)/.e20 + .e94) * 
                .e6) * .e49/.e38)), q0 = -(0.5 * (((.e101 - (.e73 * 
        .e34 * .e40 + 2 * ((((.e47 * .e34 * .e65/.e33 + .e101)/.e14 + 
        (2 * (.e29 * .e34 * .e6) + 4 * (.e76 * .e16 + .e34 * 
            .e64 * .e3)) * .e15/.e10) * .e10 + .e29 * .e93 * 
        .e34) * .e18))/.e20)/.e20 - ((.e47/.e11 + 2 * (.e93/.e20)) * 
        .e58/.e38 + .e92) * .e34) * .e49 * .e5/.e38)), q2 = -(0.5 * 
        (geno_q * ((.e100 - (.e67 * .e40 + 2 * ((((.e29 * .e6 + 
            4 * (.e75 * .e16 + (1 + .e61) * .e3)) * .e15/.e10 + 
            (.e48 * .e65/.e33 + .e100)/.e14) * .e10 + .e29 * 
            .e98) * .e18))/.e20)/.e20 - ((.e48/.e11 + 2 * (.e98/.e20)) * 
            .e58/.e38 + 0.5 * .e92)) * .e49 * .e5/.e38)))
}

d_f_j1_b2_bq_g <- 
function (a0, a2, b0, b2, q0, q2, r0, tij, t0, geno_a, geno_b, 
    geno_q) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- b0 + geno_b * (b2 - b0)/2
    .e6 <- .e5^2
    .e7 <- .e6 * .e3
    .e9 <- .e4^2 + 2 * .e7
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e3
    .e12 <- .e4 + .e10
    .e13 <- .e12/.e11
    .e14 <- r0 - .e13
    .e15 <- tij - t0
    .e16 <- .e11 + 2 * (.e10/.e14)
    .e18 <- exp(2 * (.e10 * .e15))
    .e20 <- .e16 * .e18 - .e11
    .e21 <- .e3/.e10
    .e22 <- .e6/.e10
    .e23 <- 2 * .e21
    .e24 <- .e16 * .e3
    .e27 <- 2 * (.e24 * .e15/.e10)
    .e29 <- (1/.e14 + .e23)/.e14 + .e27
    .e30 <- 0.5 * .e22
    .e31 <- 0.5 * geno_q
    .e33 <- 2 * (.e3 * .e14)
    .e34 <- 1 - .e31
    .e40 <- .e16 * .e6 * .e15/.e10
    .e41 <- .e13 + 2 * (.e10/.e20)
    .e43 <- .e22 - .e12/.e3
    .e44 <- .e30 - .e13
    .e46 <- .e23 - 2 * (.e29 * .e18 * .e10/.e20)
    .e47 <- 2 * .e14
    .e50 <- .e9 * .e10
    .e53 <- 2 * ((.e44 * .e10/.e33 + .e30)/.e14)
    .e54 <- 2 * ((.e21 + 1/.e47)/.e14)
    .e55 <- 2 + 2 * ((.e43 * .e10/.e33 + .e22)/.e14)
    .e57 <- (.e40 + 1 + .e53) * .e18 - 1
    .e63 <- .e46/.e20 + 0.5/.e10
    .e65 <- (.e55 + 2 * .e40) * .e18 - 2
    .e67 <- 0.5 - 0.5 * (.e7/.e9)
    .e68 <- 1 - (.e34 * .e6 * .e3/.e9 + .e31)
    .e69 <- .e54 + .e27
    .e70 <- .e23 + 2/.e14
    .e80 <- .e6/.e50
    .e81 <- .e22 - .e65 * .e10/.e20
    .e82 <- .e21 - .e69 * .e18 * .e10/.e20
    .e83 <- .e3^2
    .e84 <- .e30 - .e57 * .e10/.e20
    .e85 <- 2 * (.e67/.e10)
    .e86 <- 2 * (.e68/.e10)
    c(b2 = -(0.5 * (geno_b^2 * (.e63 * (0.5 - (1/(2 * .e10) + 
        2 * (.e82/.e20)) * .e6/.e41) - (((.e69 * .e46 + 2 * (.e29 * 
        .e82 + (.e70/.e47 - 2 * (.e83/.e9))/.e14 + (2 * .e29 + 
        2 * (.e54 - .e24/.e9)) * .e3 * .e15)) * .e18/.e20 + 2 * 
        (.e83/.e50))/.e20 + 0.5 * (.e3/.e50)) * .e6)/.e41)), 
        q0 = -(0.5 * (geno_b * ((.e86 - (.e65 * .e34 * .e46 + 
            2 * ((((.e43 * .e34 * .e70/.e33 + .e86)/.e14 + (2 * 
                (.e29 * .e34 * .e6) + 2 * (.e68 * .e16 + .e34 * 
                .e55 * .e3)) * .e15/.e10) * .e10 + .e29 * .e81 * 
                .e34) * .e18))/.e20)/.e20 - ((.e43/.e11 + 2 * 
            (.e81/.e20)) * .e63/.e41 + 0.5 * .e80) * .e34) * 
            .e5/.e41)), q2 = -(0.5 * (geno_b * geno_q * ((.e85 - 
            (.e57 * .e46 + 2 * ((((.e29 * .e6 + 2 * (.e67 * .e16 + 
                (1 + .e53) * .e3)) * .e15/.e10 + (.e44 * .e70/.e33 + 
                .e85)/.e14) * .e10 + .e29 * .e84) * .e18))/.e20)/.e20 - 
            ((.e44/.e11 + 2 * (.e84/.e20)) * .e63/.e41 + 0.25 * 
                .e80)) * .e5/.e41)))
}

d_f_j1_q0_qb_g <-
function (a0, a2, b0, b2, q0, q2, r0, tij, t0, geno_a, geno_b, 
    geno_q) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- b0 + geno_b * (b2 - b0)/2
    .e6 <- .e5^2
    .e7 <- .e6 * .e3
    .e9 <- .e4^2 + 2 * .e7
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e3
    .e12 <- .e4 + .e10
    .e13 <- .e12/.e11
    .e14 <- r0 - .e13
    .e15 <- tij - t0
    .e16 <- .e11 + 2 * (.e10/.e14)
    .e18 <- exp(2 * (.e10 * .e15))
    .e19 <- .e6/.e10
    .e21 <- .e16 * .e18 - .e11
    .e22 <- .e11^2
    .e24 <- 2 * (.e3 * .e10)
    .e26 <- .e6/.e24
    .e27 <- 2 * (.e12/.e22)
    .e28 <- 2 * .e19
    .e29 <- .e16 * .e6
    .e30 <- .e26 - .e27
    .e32 <- .e29 * .e15/.e10
    .e36 <- 2 * (.e30 * .e10/.e14) + .e28
    .e37 <- 2 * .e32
    .e40 <- .e36/.e14 + 2 + .e37
    .e41 <- 0.5 * .e19
    .e42 <- .e3/.e10
    .e44 <- .e40 * .e18 - 2
    .e45 <- .e12/.e3
    .e47 <- 2 * (.e3 * .e14)
    .e50 <- .e24^2
    .e51 <- .e13 + 2 * (.e10/.e21)
    .e53 <- .e28 - 2 * (.e44 * .e10/.e21)
    .e54 <- .e19 - .e45
    .e55 <- .e41 - .e13
    .e56 <- 2 * .e42
    .e59 <- .e16 * .e3 * .e15/.e10
    .e60 <- .e7/.e9
    .e63 <- .e54 * .e10/.e47 + .e19
    .e66 <- .e55 * .e10/.e47 + .e41
    .e67 <- .e42 + 1/(2 * .e14)
    .e69 <- 1/.e14 + .e56
    .e75 <- .e53/.e21 + .e26 - .e27
    .e76 <- .e7/.e50
    .e77 <- .e7/.e10
    .e79 <- .e5^4/(.e9 * .e10)
    .e81 <- 1 - 0.5 * geno_q
    .e83 <- 2 * (.e66/.e14)
    .e84 <- 2 + 2 * (.e63/.e14)
    .e86 <- (.e32 + 1 + .e83) * .e18 - 1
    .e90 <- (.e84 + .e37) * .e18 - 2
    .e91 <- 1 - .e60
    .e92 <- 2 - 2 * .e60
    .e94 <- 2 * (.e67/.e14) + 2 * .e59
    .e96 <- 2 * (.e69/.e14) + 4 * .e59
    .e99 <- .e40 * .e3
    .e116 <- (2 * .e76 + 2/.e22) * .e3
    .e117 <- .e29/.e9
    .e118 <- (4 * .e76 + 4/.e22) * .e3
    .e119 <- .e19 - .e90 * .e10/.e21
    .e120 <- .e42 - .e94 * .e18 * .e10/.e21
    .e121 <- .e41 - .e86 * .e10/.e21
    .e122 <- 1/.e11
    .e123 <- 1/.e3
    .e124 <- 2 * ((.e77 + .e10) * .e6/.e50)
    .e125 <- 2 * ((.e19 - 2 * .e45)/.e22)
    .e126 <- 2 * ((0.5 * .e77 + 0.5 * .e10) * .e6/.e50)
    .e127 <- 2 * ((.e41 - .e45)/.e22)
    .e128 <- 2 * (.e91/.e10)
    .e129 <- 2 * (.e92/.e10)
    .e130 <- 2 * .e79
    .e131 <- .e56 - .e96 * .e18 * .e10/.e21
    .e132 <- 2 * .e10
    c(q0 = 0.5 * ((((.e90 * .e53 + 2 * ((((.e54 * .e36/.e11 + 
        2 * (.e63 * .e30 - (.e124 + .e125) * .e10))/.e14 - .e130)/.e14 + 
        (2 * .e40 + 2 * (.e84 - .e117)) * .e6 * .e15/.e10) * 
        .e18 * .e10 + .e44 * .e119))/.e21 + .e130)/.e21 + (.e54/.e11 + 
        2 * (.e119/.e21)) * .e75/.e51 + .e124 + .e125) * .e81^2/.e51), 
        q2 = 0.5 * (geno_q * (((.e86 * .e53 + 2 * ((((.e55 * 
            .e36/.e11 + 2 * (.e66 * .e30 - (.e126 + .e127) * 
            .e10))/.e14 - .e79)/.e14 + (.e40 + 2 * (1 + .e83 - 
            0.5 * .e117)) * .e6 * .e15/.e10) * .e18 * .e10 + 
            .e44 * .e121))/.e21 + .e79)/.e21 + (.e55/.e11 + 2 * 
            (.e121/.e21)) * .e75/.e51 + .e126 + .e127) * .e81/.e51), 
        b0 = -(0.5 * (((.e123 - .e118)/.e10 + (.e129 - (.e96 * 
            .e53 * .e18 + 2 * ((((.e36/.e10 + 2 * (.e30 * .e69 + 
            .e123 - .e118))/.e14 + .e129)/.e14 + (2 * (.e92 * 
            .e16 + 2 * (.e69 * .e6/.e14)) + 4 * .e99) * .e15/.e10) * 
            .e18 * .e10 + .e44 * .e131))/.e21)/.e21 - .e75 * 
            (1/.e10 + 2 * (.e131/.e21))/.e51) * (1 - 0.5 * geno_b) * 
            .e81 * .e5/.e51)), b2 = -(0.5 * (geno_b * ((.e122 - 
            .e116)/.e10 + (.e128 - (.e94 * .e53 * .e18 + 2 * 
            ((((.e36/.e132 + 2 * (.e30 * .e67 + .e122 - .e116))/.e14 + 
                .e128)/.e14 + (2 * .e99 + 2 * (.e91 * .e16 + 
                2 * (.e67 * .e6/.e14))) * .e15/.e10) * .e18 * 
                .e10 + .e44 * .e120))/.e21)/.e21 - .e75 * (1/.e132 + 
            2 * (.e120/.e21))/.e51) * .e81 * .e5/.e51)))
}

d_f_j1_q2_qb_g <-
function (a0, a2, b0, b2, q0, q2, r0, tij, t0, geno_a, geno_b, 
    geno_q) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- b0 + geno_b * (b2 - b0)/2
    .e6 <- .e5^2
    .e7 <- .e6 * .e3
    .e9 <- .e4^2 + 2 * .e7
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e3
    .e12 <- .e4 + .e10
    .e13 <- .e12/.e11
    .e14 <- r0 - .e13
    .e15 <- tij - t0
    .e16 <- .e11 + 2 * (.e10/.e14)
    .e18 <- exp(2 * (.e10 * .e15))
    .e19 <- .e6/.e10
    .e21 <- .e16 * .e18 - .e11
    .e22 <- .e11^2
    .e24 <- 2 * (.e3 * .e10)
    .e27 <- .e6/.e24 - 2 * (.e12/.e22)
    .e28 <- 0.5 * .e19
    .e31 <- .e27 * .e10/.e14 + .e19
    .e34 <- .e16 * .e6 * .e15/.e10
    .e35 <- .e3/.e10
    .e38 <- .e31/.e14 + .e34 + 1
    .e40 <- .e38 * .e18 - 1
    .e41 <- .e28 - .e13
    .e42 <- 2 * .e35
    .e45 <- .e24^2
    .e48 <- .e16 * .e3 * .e15/.e10
    .e49 <- .e13 + 2 * (.e10/.e21)
    .e50 <- .e7/.e9
    .e51 <- .e19 - 2 * (.e40 * .e10/.e21)
    .e54 <- .e41 * .e10/(2 * (.e3 * .e14)) + .e28
    .e55 <- .e35 + 1/(2 * .e14)
    .e57 <- 1/.e14 + .e42
    .e58 <- (2 * (.e7/.e45) + 2/.e22) * .e3
    .e61 <- (.e34 + 1 + 2 * (.e54/.e14)) * .e18 - 1
    .e63 <- .e51/.e21 + 0.5 * .e27
    .e66 <- 1 - .e50
    .e67 <- 2 - 2 * .e50
    .e69 <- 2 * (.e55/.e14) + 2 * .e48
    .e71 <- 2 * (.e57/.e14) + 4 * .e48
    .e72 <- .e38 * .e3
    .e79 <- .e66/.e10
    .e80 <- .e67/.e10
    .e89 <- .e35 - .e69 * .e18 * .e10/.e21
    .e90 <- .e28 - .e61 * .e10/.e21
    .e91 <- 0.5 * (.e5^4/(.e9 * .e10))
    .e92 <- 1/.e11
    .e93 <- 1/.e3
    .e95 <- 2 * ((0.5 * (.e7/.e10) + 0.5 * .e10) * .e6/.e45) + 
        2 * ((.e28 - .e12/.e3)/.e22)
    .e96 <- 2 * .e58
    .e97 <- .e42 - .e71 * .e18 * .e10/.e21
    .e98 <- 2 * .e10
    c(q2 = 0.5 * (geno_q^2 * (((.e61 * .e51 + 2 * ((((.e31 * 
        .e41/.e11 + .e54 * .e27 - .e95 * .e10)/.e14 - .e91)/.e14 + 
        ((.e31 + 2 * .e54)/.e14 + (.e15/.e10 - 0.5/.e9) * .e16 * 
            .e6 + 2) * .e6 * .e15/.e10) * .e18 * .e10 + .e40 * 
        .e90))/.e21 + .e91)/.e21 + .e63 * (.e41/.e11 + 2 * (.e90/.e21))/.e49 + 
        0.5 * .e95)/.e49), b0 = -(0.5 * (geno_q * ((.e80 - (.e51 * 
        .e71 * .e18 + 2 * ((((.e31/.e10 + .e27 * .e57 + .e93 - 
        .e96)/.e14 + .e80)/.e14 + (.e67 * .e16 + 2 * (.e57 * 
        .e6/.e14) + 4 * .e72) * .e15/.e10) * .e18 * .e10 + .e40 * 
        .e97))/.e21)/.e21 + 0.5 * ((.e93 - .e96)/.e10) - .e63 * 
        (1/.e10 + 2 * (.e97/.e21))/.e49) * (1 - 0.5 * geno_b) * 
        .e5/.e49)), b2 = -(0.5 * (geno_b * geno_q * ((.e79 - 
        (.e51 * .e69 * .e18 + 2 * ((((.e31/.e98 + .e27 * .e55 + 
            .e92 - .e58)/.e14 + .e79)/.e14 + (.e66 * .e16 + 2 * 
            .e72 + 2 * (.e55 * .e6/.e14)) * .e15/.e10) * .e18 * 
            .e10 + .e40 * .e89))/.e21)/.e21 + 0.5 * ((.e92 - 
        .e58)/.e10) - .e63 * (1/.e98 + 2 * (.e89/.e21))/.e49) * 
        .e5/.e49)))
}

d_f_j2_a0_abqff1_g <- 
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, m0, r0, tij, yij, 
    t0, geno_a, geno_b, geno_q, geno_f) 
{
    .e1 <- a0 + geno_a * (a2 - a0)/2
    .e4 <- geno_q * (q2 - q0)/2 + q0
    .e5 <- .e1^2
    .e6 <- b0 + geno_b * (b2 - b0)/2
    .e7 <- .e6^2
    .e8 <- .e7 * .e4
    .e9 <- .e5 + 2 * .e8
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e4
    .e12 <- .e1 + .e10
    .e15 <- geno_f * (f2 - f0)/2
    .e16 <- .e12/.e11
    .e17 <- f0 + .e15
    .e18 <- r0 - .e16
    .e19 <- tij - t0
    .e20 <- .e17 - f1
    .e21 <- .e11 + 2 * (.e10/.e18)
    .e23 <- exp(2 * (.e10 * .e19))
    .e24 <- .e1/.e10
    .e25 <- .e21 * .e23
    .e26 <- .e17 - m0
    .e27 <- .e5 * .e20
    .e28 <- .e1 * .e20
    .e29 <- .e28/.e10
    .e31 <- 2 * (.e26 * .e10)
    .e34 <- 2 * (.e27/.e10) - .e31
    .e35 <- .e24 + 1
    .e37 <- .e4 * .e18
    .e38 <- exp(-(t0 * .e10))
    .e39 <- exp(tij * .e10)
    .e41 <- .e29 + f0 + .e15
    .e42 <- .e11 - .e25
    .e43 <- .e5/.e9
    .e44 <- .e25 - .e11
    .e45 <- 0.5 * geno_a
    .e46 <- 2 * .e24
    .e51 <- 2 * (.e34 * .e38 * .e39/.e12)
    .e52 <- 2 * (.e29 - .e17)
    .e53 <- .e51 - .e52
    .e54 <- .e21 * .e1
    .e55 <- 1 - .e45
    .e59 <- .e53 * .e4 - .e41 * .e21 * .e23
    .e60 <- .e59/.e42
    .e61 <- .e35 * .e10
    .e62 <- .e7/.e10
    .e64 <- .e61/.e37 + .e46
    .e66 <- .e54 * .e19/.e10
    .e67 <- .e64/.e18
    .e68 <- .e67 + 2 * .e66
    .e69 <- 2 * .e37
    .e70 <- 0.5 * .e24
    .e71 <- .e16 + 2 * (.e10/.e44)
    .e72 <- 4 * .e43
    .e73 <- t0 * .e34
    .e74 <- 0.5 * .e62
    .e77 <- 0.5 * .e73 + f0 + .e15
    .e78 <- 8 - .e72
    .e79 <- yij - .e60
    .e81 <- .e55 * .e1/.e10
    .e83 <- 2 * (.e77 - m0)
    .e84 <- 2 - 2 * .e43
    .e86 <- .e78 * .e20/2
    .e87 <- 1 - .e43
    .e88 <- 2 * .e26
    .e89 <- .e86 - .e83
    .e90 <- .e21 * .e7
    .e91 <- .e4/.e10
    .e92 <- .e60 - .e41
    .e93 <- .e27/.e9
    .e98 <- 2 * (.e89 * .e1/.e10 - .e35 * .e34/.e12) + 2 * (tij * 
        .e34 * .e1/.e10)
    .e99 <- 2 * .e93
    .e103 <- .e9 * .e10
    .e104 <- .e87 * .e4
    .e105 <- .e84 * .e21
    .e107 <- .e90 * .e19/.e10
    .e108 <- 0.5 + .e70
    .e110 <- .e46 - 2 * (.e68 * .e23 * .e10/.e44)
    .e111 <- .e99 + .e88
    .e113 <- .e105 * .e23/2
    .e114 <- 0.5 * geno_f
    .e115 <- 2 * .e104
    .e116 <- .e21 * .e4
    .e117 <- .e113 + .e115
    .e119 <- .e81 + 1 - .e45
    .e121 <- .e62 - .e12/.e4
    .e122 <- .e74 - .e16
    .e123 <- .e35/.e11
    .e124 <- .e123 + .e110/.e44
    .e126 <- .e116 * .e19/.e10
    .e127 <- .e1/.e9
    .e128 <- 0.5 * .e43
    .e129 <- .e28/.e9
    .e133 <- .e68 * .e92 * .e23 + .e98 * .e38 * .e39 * .e4/.e12 - 
        .e117 * .e20/.e10
    .e134 <- 1 - .e114
    .e138 <- 2 * ((.e122 * .e10/.e69 + .e74)/.e18)
    .e139 <- 2 * .e91
    .e140 <- 2 * .e10
    .e141 <- 2 + 2 * ((.e121 * .e10/.e69 + .e62)/.e18)
    .e142 <- .e35/.e10
    .e143 <- .e37^2
    .e144 <- .e55 * .e21
    .e149 <- .e107 + 1 + .e138
    .e150 <- .e41 - .e60
    .e152 <- 0.5 - .e128
    .e153 <- 1 - (.e55 * .e5/.e9 + .e45)
    .e156 <- 2 * (.e5/.e10) - .e140
    .e157 <- .e141 + 2 * .e107
    .e161 <- .e119 * .e10/.e69 + .e81
    .e164 <- 2 * ((.e108 * .e10/.e69 + .e70)/.e18)
    .e165 <- 2 * ((.e91 + 1/(2 * .e18))/.e18)
    .e166 <- 2 * ((1/.e18 + .e139)/.e18)
    .e168 <- .e144 * .e1
    .e169 <- 2 * (.e161/.e18)
    .e171 <- .e133/.e42 + 0.5 * (.e124 * .e79/.e71)
    .e172 <- .e66 + .e164
    .e173 <- .e165 + 2 * .e126
    .e174 <- .e166 + 4 * .e126
    .e175 <- .e149 * .e23
    .e178 <- .e157 * .e23
    .e180 <- .e1 * .e7/.e103
    .e181 <- .e4^2
    .e182 <- .e169 + 2 * (.e168 * .e19/.e10)
    .e184 <- .e134 * .e1/.e10
    .e187 <- 2 * .e129
    .e188 <- tij - (1/.e12 + t0)
    .e189 <- .e67 + .e35 * .e4 * .e10/.e143
    .e193 <- .e142 - .e127
    .e195 <- .e34/.e9
    .e198 <- .e54 * .e7 * .e20/.e103
    .e201 <- .e54 * .e20 * .e4/.e103
    .e202 <- 0.5 * geno_q
    .e203 <- 2 - .e43
    .e205 <- 2 * ((.e34 * .e188 - .e111) * .e38 * .e39/.e12) + 
        .e187
    .e207 <- 2 * ((1 - .e128) * .e20) + m0
    .e208 <- .e35/.e12
    .e209 <- .e9^2
    .e211 <- 0.5 * .e127
    .e212 <- 1 - .e202
    .e213 <- 2 * (.e203 * .e20)
    .e214 <- .e92 * .e19
    .e216 <- .e175 - 1
    .e217 <- .e35 * .e111
    .e218 <- .e152 * .e20
    .e219 <- .e152/.e10
    .e221 <- .e153 * .e20
    .e222 <- .e153/.e10
    .e223 <- .e184 + 1
    .e224 <- .e111/.e10
    .e225 <- .e21 * .e5
    .e226 <- .e90/.e9
    .e227 <- .e116/.e9
    .e228 <- .e178 - 2
    .e229 <- .e1 * .e4
    .e231 <- 0.5 * .e142 - .e211
    .e233 <- 0.5 * (tij * .e1/.e10) - .e108/.e12
    .e234 <- 0.5 * t0
    .e235 <- 0.5 * tij
    .e236 <- 1 - .e175
    .e237 <- 2 - .e178
    .e241 <- 2 * tij - (2 * t0 + 2/.e12)
    .e243 <- t0 * .e111/.e10
    .e247 <- tij * .e55 * .e1/.e10 - .e119/.e12
    .e253 <- ((.e129 + 2 * (((.e235 - (.e234 + 0.5/.e12)) * .e34 - 
        0.5 * .e111) * .e38 * .e39/.e12)) * .e7 * .e4/.e10 + 
        0.5 * .e53 - ((.e149 * .e41 - 0.5 * .e198) * .e23 + .e59 * 
        .e236/.e42))/.e42
    .e268 <- ((2 * ((.e233 * .e34 + (.e207 - .e77) * .e1/.e10) * 
        .e38 * .e39/.e12) - 2 * (.e218/.e10)) * .e4 - (.e172 * 
        .e150 + .e152 * .e21 * .e20/.e10) * .e23)/.e42
    .e269 <- ((2 * ((.e55 * (.e213 - (.e88 + .e73)) * .e1/.e10 + 
        .e34 * .e247) * .e38 * .e39/.e12) - 2 * (.e221/.e10)) * 
        .e4 - (.e150 * .e182 + .e153 * .e21 * .e20/.e10) * .e23)/.e42
    .e270 <- ((2 * ((.e34 * .e241 - 2 * .e111) * .e38 * .e39/.e12) + 
        4 * .e129) * .e181/.e10 - (.e150 * .e174 - 2 * .e201) * 
        .e23)/.e42
    .e271 <- (.e205 * .e7 * .e4/.e10 + .e51 - ((.e41 * .e157 - 
        .e198) * .e23 + .e59 * .e237/.e42 + .e52))/.e42
    .e272 <- (.e205 * .e181/.e10 - (.e150 * .e173 - .e201) * 
        .e23)/.e42
    .e274 <- (.e156 * .e38 * .e39/.e12 - 2 * (.e70 - 0.5)) * 
        .e4 - .e108 * .e21 * .e23
    .e280 <- .e71 * .e42
    .e281 <- .e81 - .e182 * .e23 * .e10/.e44
    .e289 <- (2 - 4 * (.e1 * .e38 * .e39/.e12)) * .e4 + .e25
    .e294 <- (2 * (.e134 * .e156 * .e38 * .e39/.e12) - 2 * (.e184 + 
        .e114 - 1)) * .e4 - (.e223 - .e114) * .e21 * .e23
    .e298 <- .e78/2
    .e299 <- .e62 - .e228 * .e10/.e44
    .e300 <- .e91 - .e173 * .e23 * .e10/.e44
    .e301 <- 0.5 * .e89
    .e302 <- .e70 - .e172 * .e23 * .e10/.e44
    .e303 <- .e74 - .e216 * .e10/.e44
    .e304 <- 2 * .e219
    .e305 <- 2 * .e222
    .e306 <- .e207 - .e17
    .e307 <- 2 * .e180
    .e308 <- 2 * .e127
    .e309 <- .e139 - .e174 * .e23 * .e10/.e44
    .e310 <- ((.e189 * .e119/2 + (.e193 * .e55 * .e1 + 1 - .e45)/.e18)/.e4 + 
        .e305)/.e18
    .e311 <- ((.e189 * .e108/2 + (.e231 * .e1 + 0.5)/.e18)/.e4 + 
        .e304)/.e18
    .e312 <- ((.e189/2 - 2 * (.e229/.e9))/.e10 + .e193/.e18)/.e18
    .e313 <- ((.e64 * .e121/2 + .e193 * .e7)/.e37 - (.e35 * (r0 - 
        (.e121/2 + .e16)) * .e10/.e143 + .e307))/.e18
    .e314 <- ((.e64 * .e122/2 + .e231 * .e7)/.e37 - (.e35 * (0.5 * 
        .e18 - .e122/2) * .e10/.e143 + .e180))/.e18
    .e315 <- ((.e67 + (.e61/.e143 - 4 * .e127) * .e4)/.e10 + 
        (2 * .e142 - .e308)/.e18)/.e18
    .e318 <- .e68 * .e7
    .e319 <- .e68 * .e4
    .e322 <- (.e119/.e11 + 2 * (.e281/.e44)) * .e79/.e71 + .e269
    .e323 <- .e253 + (.e122/.e11 + 2 * (.e303/.e44)) * .e79/.e71
    .e326 <- (.e121/.e11 + 2 * (.e299/.e44)) * .e79/.e71 + .e271
    .e329 <- (.e108/.e11 + 2 * (.e302/.e44)) * .e79/.e71 + .e268
    .e331 <- .e117 * .e7/.e9
    .e332 <- .e270 + (1/.e10 + 2 * (.e309/.e44)) * .e79/.e71
    .e333 <- .e272 + (1/.e140 + 2 * (.e300/.e44)) * .e79/.e71
    .e335 <- .e144 + (.e169 - .e168/.e9) * .e1
    .e336 <- (1 + .e138 - 0.5 * .e226) * .e1
    .e338 <- (.e164 - 0.5 * (.e54/.e9)) * .e1 + 0.5 * .e21
    .e339 <- (.e165 - .e227) * .e1
    .e340 <- (.e166 - 2 * .e227) * .e1
    .e343 <- .e225 * .e7/.e209
    .e345 <- .e225 * .e4/.e209
    .e346 <- (.e141 - .e226) * .e1
    .e347 <- .e12 * .e10
    .e348 <- .e129 + 2 * .e214
    .e349 <- .e229/.e103
    .e351 <- 0.5 * .e195
    .e353 <- 2 * ((((.e298 - .e72) * .e20 - .e83)/.e9 - .e243) * 
        .e1 - ((.e208 + .e127) * .e34 + .e217)/.e12) + 2 * (tij * 
        (.e224 + .e195) * .e1)
    .e354 <- 2 * .e208
    .e355 <- .e213 - .e88
    .e356 <- 2 * (.e4 * .e10)
    .e358 <- t0 * .e98 * .e1
    c(a0 = (((((.e310 + 2 * (.e335 * .e19/.e10)) * .e92 + .e133 * 
        .e182/.e42 + .e68 * (.e269 + (2 * (.e92 * .e55 * .e1 * 
        .e19) - .e221)/.e10)) * .e23 + (.e55 * (2 * (tij * ((((2 + 
        2 * .e203) * .e20 - .e88)/.e10 - .e195) * .e5 - .e31)) - 
        .e358)/.e10 + .e98 * .e247 + 2 * ((.e86 - ((((.e298 + 
        4 * .e87) * .e20 - .e83)/.e9 + t0 * .e355/.e10) * .e5 + 
        .e83)) * .e55/.e10 - ((.e222 - .e119 * .e35/.e12) * .e34 + 
        .e35 * .e55 * .e355 * .e1/.e10)/.e12)) * .e38 * .e39 * 
        .e4/.e12 - (0.5 * ((.e55 * (2 * (.e84 * .e19/.e10) - 
        4 * (.e87/.e9)) * .e21 * .e1 + 2 * (.e161 * .e84/.e18)) * 
        .e23) - (.e113 + 6 * .e104) * .e55 * .e1/.e9) * .e20/.e10)/.e42 + 
        0.5 * (((.e153/.e356 + (.e305 - (.e182 * .e110 + 2 * 
            ((.e310 + (2 * (.e68 * .e55 * .e1) + 2 * .e335) * 
                .e19/.e10) * .e10 + .e68 * .e281)) * .e23/.e44)/.e44) * 
            .e79 - .e322 * .e124)/.e71)) * .e79 - .e171 * .e322) * 
        .e55/.e71, a2 = geno_a * (((((.e311 + 2 * (.e338 * .e19/.e10)) * 
        .e92 + ((.e92 * .e1 * .e19 - .e218)/.e10 + .e268) * .e68 + 
        .e133 * .e172/.e42) * .e23 + (.e233 * .e98 + (2 * (tij * 
        ((.e306/.e10 - .e351) * .e5 + 0.5 * .e34)) - 0.5 * .e358)/.e10 + 
        2 * ((.e301 - ((.e301 + 2 * (.e87 * .e20))/.e9 + t0 * 
            .e306/.e10) * .e5)/.e10 - ((.e219 - .e35 * .e108/.e12) * 
            .e34 + .e35 * .e306 * .e1/.e10)/.e12)) * .e38 * .e39 * 
        .e4/.e12 - (0.5 * ((.e172 * .e84 - 2 * (.e87 * .e21 * 
        .e1/.e9)) * .e23) - (0.5 * .e117 + .e115) * .e1/.e9) * 
        .e20/.e10)/.e42 + 0.5 * (((.e152/.e356 + (.e304 - (.e172 * 
        .e110 + 2 * ((.e311 + (.e68 * .e1 + 2 * .e338) * .e19/.e10) * 
        .e10 + .e68 * .e302)) * .e23/.e44)/.e44) * .e79 - .e329 * 
        .e124)/.e71)) * .e79 - .e171 * .e329) * .e55/.e71, b0 = (((((.e315 + 
        2 * (.e340 * .e19/.e10)) * .e92 + .e133 * .e174/.e42 + 
        .e68 * (.e270 + (.e187 + 4 * .e214) * .e4/.e10)) * .e23 + 
        ((.e98 * .e241 - (2 * (((2 * .e89 - 8 * .e93)/.e9 - 2 * 
            .e243) * .e1 - ((.e354 + .e308) * .e34 + 2 * .e217)/.e12) + 
            2 * (tij * (2 * .e224 + 2 * .e195) * .e1))) * .e38 * 
            .e39 * .e181/.e12 - (0.5 * ((.e84 * .e174 + 8 * .e345) * 
            .e23) - (2 * .e117 - 8 * (.e5 * .e4/.e9)) * .e4/.e9) * 
            .e20)/.e10)/.e42 - 0.5 * (((((.e174 * .e110 + 2 * 
        ((.e315 + (2 * .e340 + 4 * .e319) * .e19/.e10) * .e10 + 
            .e68 * .e309)) * .e23/.e44 + 4 * .e349)/.e44 + .e1/.e103) * 
        .e79 + .e332 * .e124)/.e71)) * .e79 - .e171 * .e332) * 
        .e55 * (1 - 0.5 * geno_b) * .e6/.e71, b2 = geno_b * (((((.e312 + 
        2 * (.e339 * .e19/.e10)) * .e92 + .e133 * .e173/.e42 + 
        .e68 * (.e272 + .e348 * .e4/.e10)) * .e23 + ((.e98 * 
        .e188 - .e353) * .e38 * .e39 * .e181/.e12 - (0.5 * ((.e84 * 
        .e173 + 4 * .e345) * .e23) - (.e113 + (2 * .e87 - .e72) * 
        .e4) * .e4/.e9) * .e20)/.e10)/.e42 - 0.5 * (((((.e173 * 
        .e110 + 2 * ((.e312 + (2 * .e319 + 2 * .e339) * .e19/.e10) * 
        .e10 + .e68 * .e300)) * .e23/.e44 + 2 * .e349)/.e44 + 
        .e1/(2 * .e103)) * .e79 + .e333 * .e124)/.e71)) * .e79 - 
        .e171 * .e333) * .e55 * .e6/.e71, q0 = ((((((.e313 + 
        2 * (.e346 * .e19/.e10)) * .e92 + .e68 * (.e271 + .e348 * 
        .e7/.e10)) * .e23 - (.e133 * .e237/.e42 + (0.5 * ((.e84 * 
        .e157 + 4 * .e343) * .e23) + 2 * ((2 * (.e8/.e9) - 1) * 
        .e5/.e9 + 1) - .e331) * .e20/.e10)) * .e212 + ((.e98 * 
        .e19 - .e353) * .e212 * .e7 * .e4/.e10 + (1 - (.e212 * 
        .e7 * .e4/.e347 + .e202)) * .e98) * .e38 * .e39/.e12)/.e42 - 
        0.5 * (((((.e228 * .e110 + 2 * (((.e313 + (2 * .e318 + 
            2 * .e346) * .e19/.e10) * .e10 + .e68 * .e299) * 
            .e23))/.e44 + .e307)/.e44 + (.e35/.e4 + .e180)/.e11) * 
            .e79 + .e326 * .e124) * .e212/.e71)) * .e79 - .e171 * 
        .e326 * .e212) * .e55/.e71, q2 = geno_q * (((((.e314 + 
        2 * (.e336 * .e19/.e10)) * .e92 + ((.e214 + 0.5 * .e129) * 
        .e7/.e10 + .e253) * .e68) * .e23 + (((.e235 - .e234) * 
        .e98 - (2 * (((.e301 - .e99)/.e9 - 0.5 * .e243) * .e1 - 
        ((0.5 * .e208 + .e211) * .e34 + 0.5 * .e217)/.e12) + 
        2 * (tij * (0.5 * .e224 + .e351) * .e1))) * .e7 * .e4/.e10 + 
        (0.5 - 0.5 * (.e8/.e347)) * .e98) * .e38 * .e39/.e12 - 
        (.e133 * .e236/.e42 + (0.5 * ((.e149 * .e84 + 2 * .e343) * 
            .e23) + 2 * (.e5 * .e7 * .e4/.e209 + 0.5 * .e87) - 
            0.5 * .e331) * .e20/.e10))/.e42 - 0.5 * (((((.e216 * 
        .e110 + 2 * (((.e314 + (.e318 + 2 * .e336) * .e19/.e10) * 
        .e10 + .e68 * .e303) * .e23))/.e44 + .e180)/.e44 + (.e123 + 
        0.5 * .e180)/.e11) * .e79 + .e323 * .e124)/.e71)) * .e79 - 
        .e171 * .e323) * .e55/.e71, f0 = ((.e68 * (.e294/.e42 + 
        .e114 - .e223) * .e23 + (2 * ((0.5 * (.e134 * .e78) - 
        2 * (0.5 * (t0 * .e134 * .e156) + 1 - .e114)) * .e1/.e10 - 
        .e35 * .e134 * .e156/.e12) + 2 * (tij * .e134 * .e156 * 
        .e1/.e10)) * .e38 * .e39 * .e4/.e12 - (.e117 * .e134/.e10 + 
        0.5 * (.e124 * .e294/.e71))) * .e79 - .e171 * .e294) * 
        .e55/.e280, f2 = geno_f * (((.e274/.e42 - .e108) * .e68 * 
        .e23 + (2 * ((0.25 * .e78 - 2 * (0.25 * (t0 * .e156) + 
        0.5)) * .e1/.e10 - 0.5 * (.e35 * .e156/.e12)) + tij * 
        .e156 * .e1/.e10) * .e38 * .e39 * .e4/.e12 - (0.5 * (.e274 * 
        .e124/.e71) + 0.5 * (.e117/.e10))) * .e79 - .e171 * .e274) * 
        .e55/.e280, f1 = ((((.e68 * (.e289/.e42 + 1) * .e1 + 
        .e105/2) * .e23 + .e115)/.e10 - ((2 * ((0.5 * .e78 - 
        (.e354 + 2 * (t0 * .e1/.e10)) * .e1)/.e10) + 4 * (tij * 
        .e5/.e9)) * .e38 * .e39 * .e4/.e12 + 0.5 * (.e124 * .e289/(.e71 * 
        .e10))) * .e1) * .e79 - .e171 * .e289 * .e1/.e10) * .e55/.e280)
}

d_f_j2_a2_abqff1_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, m0, r0, tij, yij, 
    t0, geno_a, geno_b, geno_q, geno_f) 
{
    .e1 <- a0 + geno_a * (a2 - a0)/2
    .e3 <- geno_q * (q2 - q0)/2
    .e4 <- .e3 + q0
    .e5 <- .e1^2
    .e6 <- b0 + geno_b * (b2 - b0)/2
    .e7 <- .e6^2
    .e8 <- .e7 * .e4
    .e9 <- .e5 + 2 * .e8
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e4
    .e12 <- .e1 + .e10
    .e15 <- geno_f * (f2 - f0)/2
    .e16 <- .e12/.e11
    .e17 <- f0 + .e15
    .e18 <- r0 - .e16
    .e19 <- tij - t0
    .e20 <- .e17 - f1
    .e21 <- .e11 + 2 * (.e10/.e18)
    .e23 <- exp(2 * (.e10 * .e19))
    .e24 <- .e1/.e10
    .e25 <- .e21 * .e23
    .e26 <- .e5 * .e20
    .e27 <- .e17 - m0
    .e28 <- .e1 * .e20
    .e29 <- .e28/.e10
    .e33 <- 2 * (.e26/.e10) - 2 * (.e27 * .e10)
    .e34 <- .e24 + 1
    .e36 <- exp(-(t0 * .e10))
    .e37 <- exp(tij * .e10)
    .e38 <- .e4 * .e18
    .e39 <- 2 * .e38
    .e40 <- .e11 - .e25
    .e42 <- .e29 + f0 + .e15
    .e43 <- .e25 - .e11
    .e44 <- .e5/.e9
    .e49 <- 2 * (.e33 * .e36 * .e37/.e12)
    .e50 <- 2 * (.e29 - .e17)
    .e51 <- .e7/.e10
    .e52 <- .e21 * .e1
    .e53 <- .e49 - .e50
    .e57 <- .e53 * .e4 - .e42 * .e21 * .e23
    .e58 <- .e34 * .e10
    .e59 <- .e57/.e40
    .e61 <- .e58/.e39 + .e24
    .e63 <- .e52 * .e19/.e10
    .e64 <- .e61/.e18
    .e65 <- .e64 + .e63
    .e66 <- 0.5 * .e24
    .e67 <- 0.5 * .e51
    .e68 <- .e16 + 2 * (.e10/.e43)
    .e69 <- 2 * .e44
    .e70 <- 2 * .e12
    .e71 <- yij - .e59
    .e74 <- 0.5 * (t0 * .e33) + f0 + .e15
    .e75 <- 4 - .e69
    .e76 <- .e21 * .e7
    .e77 <- .e4/.e10
    .e78 <- .e26/.e9
    .e79 <- .e34 * .e33
    .e83 <- .e75 * .e20/2 + m0 - .e74
    .e85 <- .e76 * .e19/.e10
    .e86 <- 0.5 + .e66
    .e87 <- 1 - .e44
    .e89 <- 2 * .e78 + 2 * .e27
    .e90 <- .e59 - .e42
    .e91 <- .e9 * .e10
    .e92 <- .e21 * .e4
    .e93 <- 0.5 * geno_f
    .e102 <- .e25/2 + .e3 + q0
    .e103 <- .e24 - 2 * (.e65 * .e23 * .e10/.e43)
    .e105 <- 2 * (.e83 * .e1/.e10 - .e79/.e70) + tij * .e33 * 
        .e1/.e10
    .e107 <- .e51 - .e12/.e4
    .e108 <- .e67 - .e16
    .e110 <- .e92 * .e19/.e10
    .e111 <- 0.5 * .e44
    .e112 <- 4 * .e4
    .e113 <- 2 * .e18
    .e114 <- .e102 * .e87
    .e116 <- .e103/.e43 + .e34/.e112
    .e117 <- .e28/.e9
    .e120 <- 1 - .e93
    .e122 <- 2 * ((.e108 * .e10/.e39 + .e67)/.e18)
    .e123 <- 2 * .e77
    .e124 <- 2 * .e10
    .e125 <- 2 + 2 * ((.e107 * .e10/.e39 + .e51)/.e18)
    .e129 <- .e65 * .e90 * .e23 + .e105 * .e36 * .e37 * .e4/.e12 - 
        .e114 * .e20/.e10
    .e131 <- .e85 + 1 + .e122
    .e132 <- .e1/.e9
    .e134 <- 0.5 - .e111
    .e137 <- 2 * (.e5/.e10) - .e124
    .e138 <- .e125 + 2 * .e85
    .e142 <- .e86 * .e10/.e39 + .e66
    .e144 <- 2 * ((.e77 + 1/.e113)/.e18)
    .e145 <- 2 * ((1/.e18 + .e123)/.e18)
    .e147 <- .e34/.e10
    .e148 <- .e39^2
    .e149 <- 2 * (.e142/.e18)
    .e150 <- .e131 * .e23
    .e151 <- .e63 + .e149
    .e152 <- .e42 - .e59
    .e153 <- 0.5 * geno_q
    .e154 <- .e144 + 2 * .e110
    .e155 <- .e145 + 4 * .e110
    .e157 <- .e129/.e40 + 0.5 * (.e116 * .e71/.e68)
    .e158 <- .e138 * .e23
    .e159 <- .e1 * .e7
    .e160 <- .e4^2
    .e162 <- .e120 * .e1/.e10
    .e163 <- 1 - .e153
    .e166 <- 2 * .e117
    .e167 <- tij - (1/.e12 + t0)
    .e174 <- .e52 * .e7 * .e20/.e91
    .e177 <- .e52 * .e20 * .e4/.e91
    .e178 <- .e159/.e91
    .e180 <- 2 * ((.e33 * .e167 - .e89) * .e36 * .e37/.e12) + 
        .e166
    .e182 <- 2 * ((1 - .e111) * .e20) + m0
    .e183 <- .e33/.e9
    .e184 <- .e70^2
    .e185 <- .e90 * .e19
    .e186 <- .e64 + 2 * (.e34 * .e4 * .e10/.e148)
    .e187 <- .e151 * .e23
    .e188 <- .e150 - 1
    .e189 <- .e34 * .e89
    .e190 <- .e79/.e184
    .e191 <- .e147 - .e132
    .e192 <- .e134 * .e20
    .e194 <- .e162 + 1
    .e195 <- .e89/.e10
    .e197 <- .e33 * .e1/.e9
    .e198 <- .e76/.e9
    .e199 <- .e92/.e9
    .e200 <- .e158 - 2
    .e201 <- .e1 * .e4
    .e203 <- 0.5 * .e147 - 0.5 * .e132
    .e205 <- 0.5 * (tij * .e1/.e10) - .e86/.e12
    .e206 <- 0.5 * t0
    .e207 <- 0.5 * tij
    .e208 <- 1 - .e150
    .e209 <- 2 - .e158
    .e214 <- 2 * tij - (2 * t0 + 2/.e12)
    .e216 <- t0 * .e89/.e10
    .e222 <- ((.e117 + 2 * (((.e207 - (.e206 + 0.5/.e12)) * .e33 - 
        0.5 * .e89) * .e36 * .e37/.e12)) * .e7 * .e4/.e10 + 0.5 * 
        .e53 - ((.e131 * .e42 - 0.5 * .e174) * .e23 + .e57 * 
        .e208/.e40))/.e40
    .e233 <- ((2 * ((.e205 * .e33 + (.e182 - .e74) * .e1/.e10) * 
        .e36 * .e37/.e12) - 2 * (.e192/.e10)) * .e4 - (.e151 * 
        .e152 + .e134 * .e21 * .e20/.e10) * .e23)/.e40
    .e234 <- ((2 * ((.e33 * .e214 - 2 * .e89) * .e36 * .e37/.e12) + 
        4 * .e117) * .e160/.e10 - (.e152 * .e155 - 2 * .e177) * 
        .e23)/.e40
    .e235 <- (.e180 * .e7 * .e4/.e10 + .e49 - ((.e42 * .e138 - 
        .e174) * .e23 + .e57 * .e209/.e40 + .e50))/.e40
    .e236 <- (.e180 * .e160/.e10 - (.e152 * .e154 - .e177) * 
        .e23)/.e40
    .e238 <- (.e137 * .e36 * .e37/.e12 - 2 * (.e66 - 0.5)) * 
        .e4 - .e86 * .e21 * .e23
    .e243 <- .e68 * .e40
    .e244 <- .e134/.e10
    .e252 <- (2 - 4 * (.e1 * .e36 * .e37/.e12)) * .e4 + .e25
    .e257 <- (2 * (.e120 * .e137 * .e36 * .e37/.e12) - 2 * (.e162 + 
        .e93 - 1)) * .e4 - (.e194 - .e93) * .e21 * .e23
    .e261 <- .e51 - .e200 * .e10/.e43
    .e262 <- .e77 - .e154 * .e23 * .e10/.e43
    .e263 <- 0.5 * .e83
    .e264 <- 0.5 * .e178
    .e265 <- .e66 - .e187 * .e10/.e43
    .e266 <- .e67 - .e188 * .e10/.e43
    .e267 <- 0.5 * .e75
    .e268 <- .e182 - .e17
    .e269 <- .e123 - .e155 * .e23 * .e10/.e43
    .e270 <- ((.e186 * .e86/2 + (.e203 * .e1 + 0.5)/.e113)/.e4 + 
        .e244)/.e18
    .e271 <- ((.e186/2 - .e201/.e9)/.e10 + .e191/.e113)/.e18
    .e272 <- ((.e61 * .e107/2 + .e191 * .e7/2)/.e38 - (.e178 + 
        2 * (.e34 * (r0 - (.e107/2 + .e16)) * .e10/.e148)))/.e18
    .e273 <- ((.e61 * .e108/2 + .e203 * .e7/2)/.e38 - (.e264 + 
        2 * (.e34 * (0.5 * .e18 - .e108/2) * .e10/.e148)))/.e18
    .e274 <- ((.e64 + (2 * (.e58/.e148) - 2 * .e132) * .e4)/.e10 + 
        (2 * .e147 - 2 * .e132)/.e113)/.e18
    .e276 <- .e65 * .e7
    .e277 <- .e65 * .e4
    .e278 <- .e222 + (.e108/.e11 + 2 * (.e266/.e43)) * .e71/.e68
    .e284 <- (.e107/.e11 + 2 * (.e261/.e43)) * .e71/.e68 + .e235
    .e287 <- (.e86/.e11 + 2 * (.e265/.e43)) * .e71/.e68 + .e233
    .e288 <- .e234 + (1/.e10 + 2 * (.e269/.e43)) * .e71/.e68
    .e289 <- .e236 + (1/.e124 + 2 * (.e262/.e43)) * .e71/.e68
    .e290 <- .e34/.e112^2
    .e292 <- .e9 * .e4 * .e10
    .e293 <- (1 + .e122 - 0.5 * .e198) * .e1
    .e294 <- (.e144 - .e199) * .e1
    .e295 <- (.e145 - 2 * .e199) * .e1
    .e297 <- (.e125 - .e198) * .e1
    .e298 <- .e12 * .e10
    .e299 <- .e117 + 2 * .e185
    .e300 <- .e201/.e91
    .e301 <- 0.5 * .e183
    .e302 <- 0.5 * .e21
    .e303 <- 1 - 3 * .e44
    .e304 <- 2 * ((.e189 + .e197)/.e70 + 2 * .e190 - (((.e75/2 - 
        .e69) * .e20 + m0 - .e74)/.e9 - 0.5 * .e216) * .e1)
    .e305 <- t0 * .e137
    .e307 <- tij * (.e195 + .e183) * .e1
    c(a2 = geno_a^2 * (((((.e270 + ((.e149 - 0.5 * (.e52/.e9)) * 
        .e1 + .e302) * .e19/.e10) * .e90 + ((.e90 * .e1 * .e19 - 
        .e192)/.e10 + .e233) * .e65 + .e129 * .e151/.e40) * .e23 + 
        (.e205 * .e105 + (tij * ((.e268/.e10 - .e301) * .e5 + 
            0.5 * .e33) - 0.5 * (t0 * .e105 * .e1))/.e10 + 2 * 
            ((.e263 - (((.e87 * .e20 + .e263)/.e9 + 0.5 * (t0 * 
                .e268/.e10)) * .e5 + (.e34 * .e268 * .e1 + .e134 * 
                .e33)/.e70))/.e10 + 2 * (.e34 * .e86 * .e33/.e184))) * 
            .e36 * .e37 * .e4/.e12 - (0.5 * .e187 - 1.5 * (.e102 * 
        .e1/.e9)) * .e87 * .e20/.e10)/.e40 + 0.5 * ((((.e244 - 
        (.e151 * .e103 + 2 * ((.e270 + (((.e61 + 2 * .e142)/.e18 + 
            (.e19/.e10 - 0.5/.e9) * .e21 * .e1) * .e1 + .e302) * 
            .e19/.e10) * .e10 + .e65 * .e265)) * .e23/.e43)/.e43 + 
        .e134/(4 * (.e4 * .e10))) * .e71 - .e287 * .e116)/.e68)) * 
        .e71 - .e157 * .e287)/.e68, b0 = geno_a * (((((.e274 + 
        .e295 * .e19/.e10) * .e90 + .e129 * .e155/.e40 + .e65 * 
        (.e234 + (.e166 + 4 * .e185) * .e4/.e10)) * .e23 + ((.e105 * 
        .e214 + 2 * ((2 * .e189 + 2 * .e197)/.e70 + 4 * .e190 - 
        ((2 * .e83 - 4 * .e78)/.e9 - .e216) * .e1) - tij * (2 * 
        .e195 + 2 * .e183) * .e1) * .e36 * .e37 * .e160/.e12 - 
        (0.5 * (.e87 * .e155 * .e23) - .e102 * (2 * .e87 - 4 * 
            .e44) * .e4/.e9) * .e20)/.e10)/.e40 - 0.5 * (((((.e103 * 
        .e155 + 2 * ((.e274 + (.e295 + 4 * .e277) * .e19/.e10) * 
        .e10 + .e65 * .e269)) * .e23/.e43 + 2 * .e300)/.e43 + 
        .e1/(2 * .e91)) * .e71 + .e288 * .e116)/.e68)) * .e71 - 
        .e157 * .e288) * (1 - 0.5 * geno_b) * .e6/.e68, b2 = geno_a * 
        geno_b * (((((.e271 + .e294 * .e19/.e10) * .e90 + .e129 * 
        .e154/.e40 + .e65 * (.e236 + .e299 * .e4/.e10)) * .e23 + 
        ((.e105 * .e167 + .e304 - .e307) * .e36 * .e37 * .e160/.e12 - 
            (0.5 * (.e87 * .e154 * .e23) - .e102 * .e303 * .e4/.e9) * 
                .e20)/.e10)/.e40 - 0.5 * (((((.e103 * .e154 + 
        2 * ((.e271 + (.e294 + 2 * .e277) * .e19/.e10) * .e10 + 
            .e65 * .e262)) * .e23/.e43 + .e300)/.e43 + .e1/(4 * 
        .e91)) * .e71 + .e289 * .e116)/.e68)) * .e71 - .e157 * 
        .e289) * .e6/.e68, q0 = geno_a * ((((((.e272 + .e297 * 
        .e19/.e10) * .e90 + .e65 * (.e235 + .e299 * .e7/.e10)) * 
        .e23 - .e129 * .e209/.e40) * .e163 + ((.e105 * .e19 + 
        .e304 - .e307) * .e163 * .e7 * .e4/.e10 + (1 - (.e163 * 
        .e7 * .e4/.e298 + .e153)) * .e105) * .e36 * .e37/.e12 - 
        ((0.5 * (.e163 * .e138 * .e23) + 1 - .e153) * .e87 - 
            .e102 * .e163 * .e303 * .e7/.e9) * .e20/.e10)/.e40 - 
        0.5 * (((((.e200 * .e103 + 2 * (((.e272 + (.e297 + 2 * 
            .e276) * .e19/.e10) * .e10 + .e65 * .e261) * .e23))/.e43 + 
            .e178)/.e43 + .e159/(4 * .e292) + 4 * .e290) * .e71 + 
            .e284 * .e116) * .e163/.e68)) * .e71 - .e157 * .e284 * 
        .e163)/.e68, q2 = geno_a * geno_q * (((((.e273 + .e293 * 
        .e19/.e10) * .e90 + ((.e185 + 0.5 * .e117) * .e7/.e10 + 
        .e222) * .e65) * .e23 + (((.e207 - .e206) * .e105 + 2 * 
        (.e190 + (0.5 * .e189 + 0.5 * .e197)/.e70 - ((.e263 - 
            .e78)/.e9 - 0.25 * .e216) * .e1) - tij * (0.5 * .e195 + 
        .e301) * .e1) * .e7 * .e4/.e10 + (0.5 - 0.5 * (.e8/.e298)) * 
        .e105) * .e36 * .e37/.e12 - (.e129 * .e208/.e40 + ((0.5 + 
        0.5 * .e150) * .e87 - .e102 * (0.5 * .e87 - .e44) * .e7/.e9) * 
        .e20/.e10))/.e40 - 0.5 * (((((.e188 * .e103 + 2 * (((.e273 + 
        (.e276 + .e293) * .e19/.e10) * .e10 + .e65 * .e266) * 
        .e23))/.e43 + .e264)/.e43 + .e159/(8 * .e292) + 2 * .e290) * 
        .e71 + .e278 * .e116)/.e68)) * .e71 - .e157 * .e278)/.e68, 
        f0 = geno_a * ((.e65 * (.e257/.e40 + .e93 - .e194) * 
            .e23 + (2 * (((.e267 - 0.5 * .e305) * .e120 + .e93 - 
            1) * .e1/.e10 - .e34 * .e120 * .e137/.e70) + tij * 
            .e120 * .e137 * .e1/.e10) * .e36 * .e37 * .e4/.e12 - 
            (.e114 * .e120/.e10 + 0.5 * (.e116 * .e257/.e68))) * 
            .e71 - .e157 * .e257)/.e243, f2 = geno_a * geno_f * 
            (((.e238/.e40 - .e86) * .e65 * .e23 + (0.5 * (tij * 
                .e137 * .e1/.e10) + 2 * ((0.5 * (.e267 - 1) - 
                0.25 * .e305) * .e1/.e10 - .e34 * .e137/(4 * 
                .e12))) * .e36 * .e37 * .e4/.e12 - (0.5 * (.e238 * 
                .e116/.e68) + 0.5 * (.e114/.e10))) * .e71 - .e157 * 
                .e238)/.e243, f1 = geno_a * (((.e65 * (.e252/.e40 + 
            1) * .e1 * .e23 + .e114)/.e10 - ((2 * ((.e267 - (.e34/.e12 + 
            t0 * .e1/.e10) * .e1)/.e10) + 2 * (tij * .e5/.e9)) * 
            .e36 * .e37 * .e4/.e12 + 0.5 * (.e116 * .e252/(.e68 * 
            .e10))) * .e1) * .e71 - .e157 * .e252 * .e1/.e10)/.e243)
}

d_f_j2_b0_bqff1_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, m0, r0, tij, yij, 
    t0, geno_a, geno_b, geno_q, geno_f) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- .e4^2
    .e6 <- b0 + geno_b * (b2 - b0)/2
    .e7 <- .e6^2
    .e8 <- .e7 * .e3
    .e9 <- .e5 + 2 * .e8
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e3
    .e12 <- .e4 + .e10
    .e15 <- geno_f * (f2 - f0)/2
    .e16 <- f0 + .e15
    .e17 <- .e12/.e11
    .e18 <- r0 - .e17
    .e19 <- tij - t0
    .e20 <- .e16 - f1
    .e21 <- 2 * (.e10/.e18)
    .e22 <- .e11 + .e21
    .e24 <- exp(2 * (.e10 * .e19))
    .e25 <- .e5 * .e20
    .e26 <- .e4 * .e20
    .e27 <- .e22 * .e24
    .e28 <- .e16 - m0
    .e29 <- .e26/.e10
    .e33 <- 2 * (.e25/.e10) - 2 * (.e28 * .e10)
    .e35 <- exp(-(t0 * .e10))
    .e36 <- exp(tij * .e10)
    .e37 <- .e3/.e10
    .e38 <- .e11 - .e27
    .e39 <- .e27 - .e11
    .e41 <- .e29 + f0 + .e15
    .e42 <- 4 * .e37
    .e43 <- .e22 * .e3
    .e44 <- .e7/.e10
    .e45 <- 2 * .e10
    .e47 <- .e43 * .e19/.e10
    .e52 <- 2 * (.e33 * .e35 * .e36/.e12)
    .e53 <- 2 * (.e29 - .e16)
    .e54 <- .e52 - .e53
    .e58 <- .e54 * .e3 - .e41 * .e22 * .e24
    .e59 <- 4 * .e47
    .e60 <- .e45^2
    .e61 <- .e58/.e38
    .e63 <- (2/.e18 + .e42)/.e18 + .e59
    .e64 <- 0.5 * .e44
    .e65 <- .e26/.e9
    .e67 <- 2 * (.e3 * .e18)
    .e68 <- .e17 + 2 * (.e10/.e39)
    .e69 <- .e22 * .e4
    .e70 <- .e3^2
    .e71 <- yij - .e61
    .e72 <- .e33/.e12
    .e73 <- .e60 * .e10
    .e75 <- 2 * .e72
    .e76 <- 2 * (.e25/.e9)
    .e77 <- 2 * .e28
    .e79 <- .e69 * .e20 * .e3
    .e86 <- 0.5 * geno_f
    .e90 <- 4 * (tij * .e33) - 2 * (.e75 + 4 * (0.5 * (t0 * .e33) + 
        4 * (.e25/.e60) + f0 + .e15 - m0))
    .e91 <- .e9 * .e10
    .e94 <- .e22 * .e7 * .e19/.e10
    .e95 <- 0.5 * geno_q
    .e96 <- .e76 + .e77
    .e97 <- .e61 - .e41
    .e98 <- 4 * .e65
    .e103 <- .e42 - 2 * (.e63 * .e24 * .e10/.e39)
    .e106 <- .e90 * .e35 * .e36/.e12
    .e108 <- .e44 - .e12/.e3
    .e109 <- .e64 - .e17
    .e110 <- 1/.e10
    .e112 <- .e97 * .e63 + 8 * (.e79/.e73)
    .e113 <- 1 - .e95
    .e115 <- .e103/.e39 + .e110
    .e116 <- .e106 + .e98
    .e117 <- 1 - .e86
    .e120 <- 2 * ((.e108 * .e10/.e67 + .e44)/.e18)
    .e121 <- 2 * ((.e109 * .e10/.e67 + .e64)/.e18)
    .e122 <- 2 * .e37
    .e124 <- .e112 * .e24 + .e116 * .e70/.e10
    .e125 <- 2 * .e18
    .e126 <- 2 + .e120
    .e127 <- .e5/.e10
    .e129 <- .e94 + 1 + .e121
    .e130 <- .e37 + 1/.e125
    .e132 <- 1/.e18 + .e122
    .e134 <- .e126 + 2 * .e94
    .e137 <- 2 * (.e130/.e18)
    .e138 <- 2 * (.e132/.e18)
    .e139 <- .e124/.e38
    .e142 <- 0.5 * (.e115 * .e71/.e68)
    .e143 <- .e139 + .e142
    .e144 <- .e129 * .e24
    .e145 <- .e117 * .e4
    .e146 <- .e134 * .e24
    .e149 <- .e137 + 2 * .e47
    .e150 <- .e138 + .e59
    .e151 <- .e42 + 4/.e18
    .e152 <- tij - (1/.e12 + t0)
    .e153 <- .e145/.e10
    .e155 <- 0.5 * (.e4/.e10)
    .e157 <- 1 - 0.5 * geno_b
    .e161 <- .e113 * .e7
    .e164 <- .e69 * .e7 * .e20/.e91
    .e165 <- .e79/.e91
    .e166 <- .e41 - .e61
    .e167 <- .e127 - .e10
    .e169 <- 2 * ((.e33 * .e152 - .e96) * .e35 * .e36/.e12) + 
        2 * .e65
    .e171 <- 2 * .e127 - .e45
    .e175 <- .e12 * .e10
    .e177 <- 0.5 - 0.5 * (.e8/.e9)
    .e178 <- 1 - (.e161 * .e3/.e9 + .e95)
    .e179 <- .e144 - 1
    .e180 <- .e73^2
    .e181 <- .e117 * .e171
    .e182 <- .e153 + 1
    .e183 <- .e43/.e9
    .e184 <- .e60/.e10
    .e186 <- .e146 - 2
    .e187 <- .e25/.e45^4
    .e188 <- .e70/.e9
    .e189 <- 0.5 * .e96
    .e193 <- 0.5 * tij - (0.5 * t0 + 0.5/.e12)
    .e194 <- 0.5 + .e155
    .e195 <- 1 - .e144
    .e196 <- 2 - .e146
    .e197 <- 2 * .e96
    .e201 <- 2 * tij - (2 * t0 + 2/.e12)
    .e203 <- t0 * .e96/.e10
    .e204 <- tij * .e96
    .e209 <- ((.e65 + 2 * ((.e193 * .e33 - .e189) * .e35 * .e36/.e12)) * 
        .e7 * .e3/.e10 + 0.5 * .e54 - ((.e129 * .e41 - 0.5 * 
        .e164) * .e24 + .e58 * .e195/.e38))/.e38
    .e217 <- ((2 * ((.e33 * .e201 - .e197) * .e35 * .e36/.e12) + 
        .e98) * .e70/.e10 - (.e166 * .e150 - 2 * .e165) * .e24)/.e38
    .e218 <- (.e169 * .e7 * .e3/.e10 + .e52 - ((.e41 * .e134 - 
        .e164) * .e24 + .e58 * .e196/.e38 + .e53))/.e38
    .e219 <- (.e169 * .e70/.e10 - (.e166 * .e149 - .e165) * .e24)/.e38
    .e222 <- .e68 * .e38
    .e235 <- (1 + .e121) * .e3
    .e237 <- (2 - 4 * (.e4 * .e35 * .e36/.e12)) * .e3 + .e27
    .e239 <- (2 * (.e167 * .e35 * .e36/.e12) - 2 * (.e155 - 0.5)) * 
        .e3 - .e194 * .e22 * .e24
    .e244 <- (2 * (.e181 * .e35 * .e36/.e12) - 2 * (.e153 + .e86 - 
        1)) * .e3 - (.e182 - .e86) * .e22 * .e24
    .e248 <- .e44 - .e186 * .e10/.e39
    .e249 <- .e37 - .e149 * .e24 * .e10/.e39
    .e250 <- .e64 - .e179 * .e10/.e39
    .e251 <- .e122 - .e150 * .e24 * .e10/.e39
    .e252 <- 4 * (.e177/.e10)
    .e253 <- 4 * (.e178/.e10)
    .e256 <- .e112 * .e7 * .e19/.e10
    .e258 <- .e112 * .e19/.e10
    .e262 <- ((.e90 * .e152 - 4 * .e204)/.e10 + 2 * (2 * ((.e72 + 
        .e76 + .e77)/.e175) + 4 * (0.5 * .e203 + 32 * .e187))) * 
        .e35 * .e36/.e12 - (.e106 + 12 * .e65)/.e9
    .e263 <- .e209 + (.e109/.e11 + 2 * (.e250/.e39)) * .e71/.e68
    .e264 <- (.e108 * .e113 * .e151/.e67 + .e253)/.e18
    .e267 <- (.e108/.e11 + 2 * (.e248/.e39)) * .e71/.e68 + .e218
    .e268 <- (.e109 * .e151/.e67 + .e252)/.e18
    .e269 <- .e217 + (.e110 + 2 * (.e251/.e39)) * .e71/.e68
    .e270 <- .e219 + (1/.e45 + 2 * (.e249/.e39)) * .e71/.e68
    .e271 <- (.e184 + 8 * .e10) * .e22
    .e272 <- (.e151/.e125 - 4 * .e188)/.e18
    .e273 <- (.e151/.e18 - 8 * .e188)/.e18
    .e275 <- .e177 * .e22 + .e235
    .e277 <- .e178 * .e22 + .e113 * .e126 * .e3
    .e279 <- .e60 * .e18 * .e10
    .e282 <- .e4 * .e7 * .e20/.e91
    .e284 <- .e26 * .e3/.e91
    .e285 <- .e5/.e60
    .e286 <- .e3/.e91
    .e287 <- .e70/.e91
    .e288 <- .e3^3
    .e289 <- .e137 - .e183
    .e290 <- .e138 - 2 * .e183
    .e291 <- 2 * .e116
    c(b0 = (((((.e124 * .e150/.e38 + (.e217 + 2 * .e284) * .e63 + 
        .e97 * (.e273 + 4 * (.e290 * .e3 * .e19))/.e10 + (4 * 
        .e258 + 8 * ((2 * (.e132/.e279) - (16 * .e10 + 2 * .e184) * 
        .e22 * .e3/.e180) * .e4 * .e20)) * .e3) * .e24 + (((.e201 * 
        .e90 - 8 * .e204)/.e10 + 2 * (2 * ((.e75 + .e197)/.e175) + 
        4 * (64 * .e187 + .e203))) * .e35 * .e36/.e12 - (16 * 
        .e65 + .e291)/.e9) * .e288/.e10)/.e38 - 0.5 * (((((.e150 * 
        .e103 + 2 * (.e63 * .e251 + .e273 + (4 * .e63 + 4 * .e290) * 
        .e3 * .e19)) * .e24/.e39 + 8 * .e287)/.e39 + 2 * .e286) * 
        .e71 + .e269 * .e115)/.e68)) * .e7 + .e139 + .e142) * 
        .e71 - .e143 * .e269 * .e7) * .e157^2/.e68, b2 = geno_b * 
        (((((.e124 * .e149/.e38 + (.e219 + .e284) * .e63 + .e97 * 
            (.e272 + 4 * (.e289 * .e3 * .e19))/.e10 + (2 * .e258 + 
            8 * ((2 * (.e130/.e279) - .e271 * .e3/.e180) * .e4 * 
                .e20)) * .e3) * .e24 + .e262 * .e288/.e10)/.e38 - 
            0.5 * (((((.e149 * .e103 + 2 * (.e63 * .e249 + .e272 + 
                (2 * .e63 + 4 * .e289) * .e3 * .e19)) * .e24/.e39 + 
                4 * .e287)/.e39 + .e286) * .e71 + .e270 * .e115)/.e68)) * 
            .e7 + 0.5 * .e143) * .e71 - .e143 * .e270 * .e7) * 
        .e157/.e68, q0 = (((((.e262 * .e7 * .e3 + .e291) * .e3/.e10 - 
        .e124 * .e196/.e38) * .e113 + (((.e218 + .e282) * .e63 + 
        2 * .e256 + 8 * ((((.e120 + 4) * .e3 + .e21)/.e73 - .e271 * 
        .e7 * .e3/.e180) * .e4 * .e20)) * .e113 + (.e264 + 4 * 
        (.e277 * .e19/.e10)) * .e97) * .e24)/.e38 + 0.5 * ((((.e253 - 
        (.e186 * .e113 * .e103 + 2 * (((.e264 + (2 * (.e63 * 
            .e113 * .e7) + 4 * .e277) * .e19/.e10) * .e10 + .e63 * 
            .e248 * .e113) * .e24))/.e39)/.e39 - .e161/.e91) * 
        .e71 - .e267 * .e115 * .e113)/.e68)) * .e71 - .e143 * 
        .e267 * .e113) * .e157 * .e6/.e68, q2 = geno_q * (((((((.e193 * 
        .e90 - 2 * .e204)/.e10 + 2 * (2 * ((0.5 * .e72 + .e189)/.e175) + 
        4 * (0.25 * .e203 + 16 * .e187))) * .e35 * .e36/.e12 - 
        (0.5 * .e116 + .e98)/.e9) * .e7 * .e3 + .e106 + .e98) * 
        .e3/.e10 + (.e256 + (.e209 + 0.5 * .e282) * .e63 + (.e268 + 
        4 * (.e275 * .e19/.e10)) * .e97 + 8 * (((.e235 + 0.5 * 
        .e22)/.e73 - (0.5 * .e184 + 4 * .e10) * .e22 * .e7 * 
        .e3/.e180) * .e4 * .e20)) * .e24 - .e124 * .e195/.e38)/.e38 + 
        0.5 * ((((.e252 - (.e179 * .e103 + 2 * ((((.e63 * .e7 + 
            4 * .e275) * .e19/.e10 + .e268) * .e10 + .e63 * .e250) * 
            .e24))/.e39)/.e39 - 0.5 * (.e7/.e91)) * .e71 - .e263 * 
            .e115)/.e68)) * .e71 - .e143 * .e263) * .e157 * .e6/.e68, 
        f0 = ((((.e244/.e38 + .e86 - .e182) * .e63 + 8 * (.e117 * 
            .e22 * .e4 * .e3/.e73)) * .e24 + ((4 * (tij * .e117 * 
            .e171) - 2 * (2 * (.e181/.e12) + 4 * ((0.5 * (t0 * 
            .e171) + 4 * .e285) * .e117 + 1 - .e86))) * .e35 * 
            .e36/.e12 + 4 * (.e145/.e9)) * .e70/.e10 - 0.5 * 
            (.e244 * .e115/.e68)) * .e71 - .e143 * .e244) * .e157 * 
            .e6/.e222, f2 = geno_f * ((((.e239/.e38 - .e194) * 
            .e63 + 4 * (.e69 * .e3/.e73)) * .e24 + ((4 * (tij * 
            .e167) - 2 * (2 * (.e167/.e12) + 4 * (0.5 + 0.5 * 
            (t0 * .e167) + 2 * .e285))) * .e35 * .e36/.e12 + 
            2 * (.e4/.e9)) * .e70/.e10 - 0.5 * (.e239 * .e115/.e68)) * 
            .e71 - .e143 * .e239) * .e157 * .e6/.e222, f1 = ((((.e237/.e38 + 
            1) * .e63 - 8 * (.e43/.e60)) * .e24 + ((2 * (4 * 
            (4/.e60 + t0/.e10) + 4/.e175) - 8 * (tij/.e10)) * 
            .e4 * .e35 * .e36/.e12 - 4/.e9) * .e70 - 0.5 * (.e237 * 
            .e115/.e68)) * .e71 - .e143 * .e237) * .e157 * .e4 * 
            .e6/(.e222 * .e10))
}

d_f_j2_b2_bqff1_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, m0, r0, tij, yij, 
    t0, geno_a, geno_b, geno_q, geno_f) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- .e4^2
    .e6 <- b0 + geno_b * (b2 - b0)/2
    .e7 <- .e6^2
    .e8 <- .e7 * .e3
    .e9 <- .e5 + 2 * .e8
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e3
    .e12 <- .e4 + .e10
    .e15 <- geno_f * (f2 - f0)/2
    .e16 <- .e12/.e11
    .e17 <- f0 + .e15
    .e18 <- r0 - .e16
    .e19 <- tij - t0
    .e20 <- .e17 - f1
    .e21 <- 2 * (.e10/.e18)
    .e22 <- .e11 + .e21
    .e24 <- exp(2 * (.e10 * .e19))
    .e25 <- .e5 * .e20
    .e26 <- .e22 * .e24
    .e27 <- .e4 * .e20
    .e28 <- .e17 - m0
    .e29 <- .e27/.e10
    .e33 <- 2 * (.e25/.e10) - 2 * (.e28 * .e10)
    .e35 <- exp(-(t0 * .e10))
    .e36 <- exp(tij * .e10)
    .e37 <- .e3/.e10
    .e38 <- .e26 - .e11
    .e39 <- .e11 - .e26
    .e41 <- .e29 + f0 + .e15
    .e42 <- .e7/.e10
    .e43 <- 2 * .e37
    .e44 <- 2 * .e10
    .e49 <- 2 * (.e33 * .e35 * .e36/.e12)
    .e50 <- 2 * (.e29 - .e17)
    .e51 <- .e22 * .e3
    .e52 <- .e49 - .e50
    .e55 <- 2 * (.e51 * .e19/.e10)
    .e59 <- .e52 * .e3 - .e41 * .e22 * .e24
    .e60 <- .e44^2
    .e61 <- .e59/.e39
    .e63 <- (1/.e18 + .e43)/.e18 + .e55
    .e64 <- 0.5 * .e42
    .e66 <- 2 * (.e3 * .e18)
    .e67 <- .e16 + 2 * (.e10/.e38)
    .e68 <- .e27/.e9
    .e69 <- .e22 * .e4
    .e70 <- 0.5 * geno_f
    .e73 <- .e22 * .e7 * .e19/.e10
    .e74 <- 0.5 * geno_q
    .e75 <- yij - .e61
    .e76 <- .e33/.e12
    .e77 <- .e60 * .e10
    .e78 <- 2 * .e68
    .e79 <- .e3^2
    .e83 <- .e42 - .e12/.e3
    .e84 <- .e64 - .e16
    .e86 <- 2 * (.e25/.e9)
    .e87 <- 2 * .e28
    .e89 <- 2 * (tij * .e33) - 2 * (.e76 + 2 * (0.5 * (t0 * .e33) + 
        4 * (.e25/.e60) + f0 + .e15 - m0))
    .e90 <- 1 - .e74
    .e94 <- .e61 - .e41
    .e95 <- .e9 * .e10
    .e97 <- .e69 * .e20 * .e3
    .e99 <- .e86 + .e87
    .e100 <- .e43 - 2 * (.e63 * .e24 * .e10/.e38)
    .e103 <- .e89 * .e35 * .e36/.e12
    .e104 <- 1 - .e70
    .e107 <- 2 * ((.e83 * .e10/.e66 + .e42)/.e18)
    .e108 <- 2 * ((.e84 * .e10/.e66 + .e64)/.e18)
    .e110 <- .e94 * .e63 + 4 * (.e97/.e77)
    .e112 <- .e100/.e38 + 0.5/.e10
    .e113 <- 2 * .e18
    .e114 <- 2 + .e107
    .e115 <- .e103 + .e78
    .e116 <- .e5/.e10
    .e118 <- .e73 + 1 + .e108
    .e119 <- .e37 + 1/.e113
    .e121 <- .e114 + 2 * .e73
    .e123 <- .e110 * .e24 + .e115 * .e79/.e10
    .e125 <- 2 * (.e119/.e18)
    .e126 <- .e118 * .e24
    .e127 <- .e104 * .e4
    .e128 <- .e121 * .e24
    .e131 <- .e125 + .e55
    .e132 <- tij - (1/.e12 + t0)
    .e134 <- .e123/.e39 + 0.5 * (.e112 * .e75/.e67)
    .e135 <- .e127/.e10
    .e137 <- 0.5 * (.e4/.e10)
    .e141 <- .e90 * .e7
    .e144 <- .e69 * .e7 * .e20/.e95
    .e145 <- .e116 - .e10
    .e147 <- 2 * ((.e33 * .e132 - .e99) * .e35 * .e36/.e12) + 
        .e78
    .e149 <- 2 * .e116 - .e44
    .e150 <- .e43 + 2/.e18
    .e155 <- 0.5 - 0.5 * (.e8/.e9)
    .e156 <- 1 - (.e141 * .e3/.e9 + .e74)
    .e157 <- .e126 - 1
    .e158 <- .e104 * .e149
    .e159 <- .e135 + 1
    .e160 <- .e128 - 2
    .e161 <- .e12 * .e10
    .e162 <- 0.5 * .e99
    .e166 <- 0.5 * tij - (0.5 * t0 + 0.5/.e12)
    .e167 <- 0.5 + .e137
    .e168 <- 1 - .e126
    .e169 <- 2 - .e128
    .e174 <- ((.e68 + 2 * ((.e166 * .e33 - .e162) * .e35 * .e36/.e12)) * 
        .e7 * .e3/.e10 + 0.5 * .e52 - ((.e118 * .e41 - 0.5 * 
        .e144) * .e24 + .e59 * .e168/.e39))/.e39
    .e181 <- (.e147 * .e7 * .e3/.e10 + .e49 - ((.e41 * .e121 - 
        .e144) * .e24 + .e59 * .e169/.e39 + .e50))/.e39
    .e182 <- (.e147 * .e79/.e10 - ((.e41 - .e61) * .e131 - .e97/.e95) * 
        .e24)/.e39
    .e183 <- .e77^2
    .e186 <- .e67 * .e39
    .e199 <- (1 + .e108) * .e3
    .e201 <- (2 - 4 * (.e4 * .e35 * .e36/.e12)) * .e3 + .e26
    .e203 <- (2 * (.e145 * .e35 * .e36/.e12) - 2 * (.e137 - 0.5)) * 
        .e3 - .e167 * .e22 * .e24
    .e208 <- (2 * (.e158 * .e35 * .e36/.e12) - 2 * (.e135 + .e70 - 
        1)) * .e3 - (.e159 - .e70) * .e22 * .e24
    .e209 <- .e60/.e10
    .e211 <- .e25/.e44^4
    .e212 <- .e42 - .e160 * .e10/.e38
    .e213 <- .e37 - .e131 * .e24 * .e10/.e38
    .e214 <- .e64 - .e157 * .e10/.e38
    .e215 <- 2 * (.e155/.e10)
    .e216 <- 2 * (.e156/.e10)
    .e218 <- t0 * .e99/.e10
    .e219 <- tij * .e99
    .e222 <- .e110 * .e7 * .e19/.e10
    .e226 <- ((.e89 * .e132 - 2 * .e219)/.e10 + 2 * ((.e76 + 
        .e86 + .e87)/.e161 + 2 * (0.5 * .e218 + 32 * .e211))) * 
        .e35 * .e36/.e12 - (.e103 + 6 * .e68)/.e9
    .e227 <- .e174 + (.e84/.e11 + 2 * (.e214/.e38)) * .e75/.e67
    .e228 <- (.e83 * .e90 * .e150/.e66 + .e216)/.e18
    .e231 <- (.e83/.e11 + 2 * (.e212/.e38)) * .e75/.e67 + .e181
    .e232 <- (.e84 * .e150/.e66 + .e215)/.e18
    .e233 <- .e182 + (1/.e44 + 2 * (.e213/.e38)) * .e75/.e67
    .e234 <- (.e150/.e113 - 2 * (.e79/.e9))/.e18
    .e235 <- (.e209 + 8 * .e10) * .e22
    .e237 <- .e155 * .e22 + .e199
    .e239 <- .e156 * .e22 + .e90 * .e114 * .e3
    .e243 <- .e4 * .e7 * .e20/.e95
    .e244 <- .e5/.e60
    .e245 <- .e125 - .e51/.e9
    c(b2 = geno_b^2 * (((((.e123 * .e131/.e39 + (.e182 + .e27 * 
        .e3/.e95) * .e63 + .e94 * (.e234 + 2 * (.e245 * .e3 * 
        .e19))/.e10 + (2 * (.e110 * .e19/.e10) + 4 * ((2 * (.e119/(.e60 * 
        .e18 * .e10)) - .e235 * .e3/.e183) * .e4 * .e20)) * .e3) * 
        .e24 + .e226 * .e3^3/.e10)/.e39 - 0.5 * (((((.e131 * 
        .e100 + 2 * (.e63 * .e213 + .e234 + (2 * .e63 + 2 * .e245) * 
        .e3 * .e19)) * .e24/.e38 + 2 * (.e79/.e95))/.e38 + 0.5 * 
        (.e3/.e95)) * .e75 + .e233 * .e112)/.e67)) * .e7 + 0.5 * 
        .e134) * .e75 - .e134 * .e233 * .e7)/.e67, q0 = geno_b * 
        (((((.e226 * .e7 * .e3 + 2 * .e115) * .e3/.e10 - .e123 * 
            .e169/.e39) * .e90 + (((.e181 + .e243) * .e63 + 2 * 
            .e222 + 4 * ((((.e107 + 4) * .e3 + .e21)/.e77 - .e235 * 
            .e7 * .e3/.e183) * .e4 * .e20)) * .e90 + (.e228 + 
            2 * (.e239 * .e19/.e10)) * .e94) * .e24)/.e39 + 0.5 * 
            ((((.e216 - (.e160 * .e90 * .e100 + 2 * (((.e228 + 
                (2 * (.e63 * .e90 * .e7) + 2 * .e239) * .e19/.e10) * 
                .e10 + .e63 * .e212 * .e90) * .e24))/.e38)/.e38 - 
                0.5 * (.e141/.e95)) * .e75 - .e231 * .e112 * 
                .e90)/.e67)) * .e75 - .e134 * .e231 * .e90) * 
        .e6/.e67, q2 = geno_b * geno_q * (((((((.e166 * .e89 - 
        .e219)/.e10 + 2 * ((0.5 * .e76 + .e162)/.e161 + 2 * (0.25 * 
        .e218 + 16 * .e211))) * .e35 * .e36/.e12 - (0.5 * .e115 + 
        .e78)/.e9) * .e7 * .e3 + .e103 + .e78) * .e3/.e10 + (.e222 + 
        (.e174 + 0.5 * .e243) * .e63 + (.e232 + 2 * (.e237 * 
        .e19/.e10)) * .e94 + 4 * (((.e199 + 0.5 * .e22)/.e77 - 
        (0.5 * .e209 + 4 * .e10) * .e22 * .e7 * .e3/.e183) * 
        .e4 * .e20)) * .e24 - .e123 * .e168/.e39)/.e39 + 0.5 * 
        ((((.e215 - (.e157 * .e100 + 2 * ((((.e63 * .e7 + 2 * 
            .e237) * .e19/.e10 + .e232) * .e10 + .e63 * .e214) * 
            .e24))/.e38)/.e38 - 0.25 * (.e7/.e95)) * .e75 - .e227 * 
            .e112)/.e67)) * .e75 - .e134 * .e227) * .e6/.e67, 
        f0 = geno_b * ((((.e208/.e39 + .e70 - .e159) * .e63 + 
            4 * (.e104 * .e22 * .e4 * .e3/.e77)) * .e24 + ((2 * 
            (tij * .e104 * .e149) - 2 * (.e158/.e12 + 2 * ((0.5 * 
            (t0 * .e149) + 4 * .e244) * .e104 + 1 - .e70))) * 
            .e35 * .e36/.e12 + 2 * (.e127/.e9)) * .e79/.e10 - 
            0.5 * (.e208 * .e112/.e67)) * .e75 - .e134 * .e208) * 
            .e6/.e186, f2 = geno_b * geno_f * ((((.e203/.e39 - 
            .e167) * .e63 + 2 * (.e69 * .e3/.e77)) * .e24 + ((2 * 
            (tij * .e145) - 2 * (.e145/.e12 + 2 * (0.5 + 0.5 * 
            (t0 * .e145) + 2 * .e244))) * .e35 * .e36/.e12 + 
            .e4/.e9) * .e79/.e10 - 0.5 * (.e203 * .e112/.e67)) * 
            .e75 - .e134 * .e203) * .e6/.e186, f1 = geno_b * 
            ((((.e201/.e39 + 1) * .e63 - 4 * (.e51/.e60)) * .e24 + 
                ((2 * (2 * (4/.e60 + t0/.e10) + 2/.e161) - 4 * 
                  (tij/.e10)) * .e4 * .e35 * .e36/.e12 - 2/.e9) * 
                  .e79 - 0.5 * (.e201 * .e112/.e67)) * .e75 - 
                .e134 * .e201) * .e4 * .e6/(.e186 * .e10))
}

d_f_j2_q0_qff1b_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, m0, r0, tij, yij, 
    t0, geno_a, geno_b, geno_q, geno_f) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- b0 + geno_b * (b2 - b0)/2
    .e6 <- .e5^2
    .e7 <- .e4^2
    .e8 <- .e6 * .e3
    .e9 <- .e7 + 2 * .e8
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e3
    .e12 <- .e4 + .e10
    .e13 <- .e12/.e11
    .e16 <- geno_f * (f2 - f0)/2
    .e17 <- r0 - .e13
    .e18 <- f0 + .e16
    .e19 <- tij - t0
    .e20 <- .e11 + 2 * (.e10/.e17)
    .e21 <- .e18 - f1
    .e23 <- exp(2 * (.e10 * .e19))
    .e24 <- .e6/.e10
    .e25 <- .e7 * .e21
    .e26 <- .e20 * .e23
    .e27 <- .e11^2
    .e29 <- 2 * (.e3 * .e10)
    .e30 <- .e18 - m0
    .e31 <- .e4 * .e21
    .e33 <- .e6/.e29
    .e34 <- 2 * (.e12/.e27)
    .e35 <- .e31/.e10
    .e39 <- 2 * (.e25/.e10) - 2 * (.e30 * .e10)
    .e40 <- .e33 - .e34
    .e41 <- 2 * .e24
    .e42 <- .e20 * .e6
    .e44 <- .e42 * .e19/.e10
    .e46 <- exp(-(t0 * .e10))
    .e47 <- exp(tij * .e10)
    .e48 <- .e26 - .e11
    .e52 <- 2 * (.e40 * .e10/.e17) + .e41
    .e53 <- 2 * .e44
    .e55 <- .e35 + f0 + .e16
    .e56 <- .e11 - .e26
    .e58 <- .e52/.e17 + 2
    .e59 <- .e58 + .e53
    .e60 <- 2 * .e10
    .e65 <- 2 * (.e39 * .e46 * .e47/.e12)
    .e66 <- 2 * (.e35 - .e18)
    .e67 <- .e60^2
    .e68 <- .e65 - .e66
    .e72 <- .e68 * .e3 - .e55 * .e20 * .e23
    .e73 <- 0.5 * .e24
    .e74 <- .e59 * .e23
    .e75 <- .e8/.e9
    .e76 <- .e3/.e10
    .e78 <- 2 * (.e3 * .e17)
    .e79 <- .e12/.e3
    .e80 <- .e72/.e56
    .e81 <- .e13 + 2 * (.e10/.e48)
    .e82 <- .e20 * .e4
    .e83 <- .e9 * .e10
    .e84 <- yij - .e80
    .e85 <- .e67 * .e10
    .e86 <- 1 - .e75
    .e89 <- 2 * (.e25/.e9) + 2 * .e30
    .e90 <- .e24 - .e79
    .e91 <- .e73 - .e13
    .e92 <- .e74 - 2
    .e93 <- .e82 * .e6
    .e94 <- 2 - .e74
    .e95 <- .e93 * .e21
    .e101 <- 0.5 * (t0 * .e39) + 4 * (.e25/.e67) + f0 + .e16 - 
        m0
    .e102 <- .e29^2
    .e103 <- .e40 * .e39
    .e104 <- 2 * .e76
    .e109 <- .e90 * .e10/.e78 + .e24
    .e112 <- .e91 * .e10/.e78 + .e73
    .e115 <- .e20 * .e3 * .e19/.e10
    .e116 <- 0.5 * geno_f
    .e118 <- .e41 - 2 * (.e92 * .e10/.e48)
    .e125 <- 2 * (2 * (.e103 * .e3/.e12) + 2 * (.e101 * .e6/.e10))
    .e126 <- 2 * (tij * .e39 * .e6/.e10)
    .e127 <- .e76 + 1/(2 * .e17)
    .e129 <- 1/.e17 + .e104
    .e130 <- .e126 - .e125
    .e136 <- 2 * (.e112/.e17)
    .e137 <- 2 + 2 * (.e109/.e17)
    .e139 <- 4 * (.e95/.e85) - .e59 * .e55
    .e142 <- .e118/.e48 + .e33 - .e34
    .e143 <- .e86 * .e4
    .e144 <- .e31/.e9
    .e145 <- 1 - .e116
    .e150 <- .e44 + 1 + .e136
    .e156 <- .e130 * .e46 * .e47 * .e3/.e12 + .e139 * .e23 - 
        (.e72 * .e94/.e56 + 2 * (.e143 * .e21/.e10 - .e18))
    .e157 <- .e137 + .e53
    .e158 <- .e7/.e10
    .e159 <- .e8/.e102
    .e160 <- .e8/.e10
    .e161 <- .e5^4
    .e164 <- 2 - 2 * .e75
    .e166 <- 2 * (.e127/.e17) + 2 * .e115
    .e168 <- 2 * (.e129/.e17) + 4 * .e115
    .e169 <- .e150 * .e23
    .e170 <- .e157 * .e23
    .e171 <- .e161/.e83
    .e174 <- tij - (1/.e12 + t0)
    .e178 <- .e156/.e56 + 0.5 * (.e142 * .e84/.e81)
    .e180 <- 1 - 0.5 * geno_q
    .e181 <- .e59 * .e3
    .e185 <- .e95/.e83
    .e188 <- .e82 * .e21 * .e3/.e83
    .e189 <- .e42/.e9
    .e190 <- .e3^2
    .e192 <- 2 * ((.e39 * .e174 - .e89) * .e46 * .e47/.e12) + 
        2 * .e144
    .e196 <- .e145 * .e4/.e10
    .e198 <- .e158 - .e10
    .e199 <- .e160 + .e10
    .e200 <- 0.5 * (.e4/.e10)
    .e202 <- 0.5 * .e160 + 0.5 * .e10
    .e203 <- 1/.e11
    .e204 <- 1/.e3
    .e205 <- 2 * ((.e24 - 2 * .e79)/.e27)
    .e206 <- 2 * ((.e73 - .e79)/.e27)
    .e208 <- 2 * .e158 - .e60
    .e209 <- 2 * .e159
    .e210 <- 2/.e27
    .e211 <- 4 * .e159
    .e212 <- 4/.e27
    .e213 <- .e80 - .e55
    .e214 <- .e169 - 1
    .e215 <- .e85^2
    .e218 <- .e40 * .e89
    .e219 <- .e127 * .e6
    .e226 <- (.e209 + .e210) * .e3
    .e227 <- .e67/.e10
    .e229 <- .e170 - 2
    .e230 <- (.e211 + .e212) * .e3
    .e231 <- .e25/.e60^4
    .e235 <- 0.5 * tij - (0.5 * t0 + 0.5/.e12)
    .e236 <- 1 - .e169
    .e237 <- 1 + .e136
    .e238 <- 2 - .e170
    .e239 <- 2 * (.e199 * .e6/.e102)
    .e240 <- 2 * (.e202 * .e6/.e102)
    .e241 <- 2 * (.e86/.e10)
    .e242 <- 2 * (.e129 * .e6/.e17)
    .e243 <- 2 * (.e164/.e10)
    .e244 <- 2 * .e171
    .e248 <- 2 * tij - (2 * t0 + 2/.e12)
    .e250 <- t0 * .e89/.e10
    .e251 <- ((.e90 * .e52/.e11 + 2 * (.e109 * .e40 - (.e239 + 
        .e205) * .e10))/.e17 - .e244)/.e17
    .e252 <- ((.e91 * .e52/.e11 + 2 * (.e112 * .e40 - (.e240 + 
        .e206) * .e10))/.e17 - .e171)/.e17
    .e253 <- ((.e52/.e60 + 2 * (.e40 * .e127 + .e203 - .e226))/.e17 + 
        .e241)/.e17
    .e254 <- ((.e52/.e10 + 2 * (.e40 * .e129 + .e204 - .e230))/.e17 + 
        .e243)/.e17
    .e255 <- (.e150 * .e55 - 0.5 * .e185) * .e23
    .e258 <- (.e55 * .e157 - .e185) * .e23
    .e268 <- .e81 * .e56
    .e272 <- (.e144 + 2 * ((.e235 * .e39 - 0.5 * .e89) * .e46 * 
        .e47/.e12)) * .e6 * .e3/.e10 + 0.5 * .e68
    .e275 <- .e86 * .e20 + 2 * (.e219/.e17)
    .e277 <- .e196 + 1 - .e116
    .e279 <- .e94/.e56 + 0.5 * (.e142/.e81)
    .e281 <- .e164 * .e20 + .e242
    .e283 <- (2 * ((.e39 * .e248 - 2 * .e89) * .e46 * .e47/.e12) + 
        4 * .e144) * .e190/.e10
    .e287 <- .e192 * .e6 * .e3/.e10 + .e65
    .e289 <- .e192 * .e190/.e10
    .e296 <- .e24 - .e229 * .e10/.e48
    .e297 <- .e76 - .e166 * .e23 * .e10/.e48
    .e299 <- .e73 - .e214 * .e10/.e48
    .e300 <- 0.5 + .e200
    .e301 <- .e237 - 0.5 * .e189
    .e302 <- 2 * .e188
    .e303 <- .e104 - .e168 * .e23 * .e10/.e48
    .e304 <- .e137 - .e189
    .e306 <- ((.e213 * .e166 + .e188) * .e23 + .e289)/.e56 + 
        (1/.e60 + 2 * (.e297/.e48)) * .e84/.e81
    .e308 <- ((.e213 * .e168 + .e302) * .e23 + .e283)/.e56 + 
        (1/.e10 + 2 * (.e303/.e48)) * .e84/.e81
    .e309 <- (.e251 + (2 * .e59 + 2 * .e304) * .e6 * .e19/.e10) * 
        .e23
    .e310 <- (.e252 + (.e59 + 2 * .e301) * .e6 * .e19/.e10) * 
        .e23
    .e311 <- .e253 + (2 * .e181 + 2 * .e275) * .e19/.e10
    .e312 <- .e254 + (2 * .e281 + 4 * .e181) * .e19/.e10
    .e315 <- (.e272 - (.e255 + .e72 * .e236/.e56))/.e56 + (.e91/.e11 + 
        2 * (.e299/.e48)) * .e84/.e81
    .e320 <- (.e90/.e11 + 2 * (.e296/.e48)) * .e84/.e81 + (.e287 - 
        (.e258 + .e72 * .e238/.e56 + .e66))/.e56
    .e323 <- .e181/.e83
    .e324 <- .e59/.e83
    .e326 <- (.e227 + 8 * .e10) * .e20 * .e6
    .e331 <- .e218 * .e6/.e10
    .e332 <- .e218 * .e3
    .e333 <- .e40/(.e12 * .e10)
    .e334 <- .e40/.e12
    .e335 <- .e101/.e9
    .e338 <- .e143/.e10
    .e345 <- (2 - 3 * .e75) * .e4
    .e347 <- (2 - 4 * (.e4 * .e46 * .e47/.e12)) * .e3 + .e26
    .e349 <- (2 * (.e198 * .e46 * .e47/.e12) - 2 * (.e200 - 0.5)) * 
        .e3 - .e300 * .e20 * .e23
    .e351 <- (2 * (.e145 * .e208 * .e46 * .e47/.e12) - 2 * (.e196 + 
        .e116 - 1)) * .e3 - .e277 * .e20 * .e23
    .e354 <- .e89 * .e6 * .e3/.e10
    .e355 <- .e89/.e10
    .e356 <- .e39/.e9
    .e359 <- .e139 * .e3 * .e19/.e10
    .e361 <- .e139 * .e19/.e10
    .e362 <- .e7/.e67
    .e363 <- 0.5 * .e250
    .e364 <- 2 * .e86
    .e365 <- 32 * .e231
    .e366 <- 4/.e67
    c(q0 = ((((((.e324 + 4 * (.e137/.e85 - .e326/.e215)) * .e4 * 
        .e21 + 2 * .e361) * .e6 - (.e251 + 2 * (.e304 * .e6 * 
        .e19/.e10)) * .e55) * .e23 + (((.e130 * .e174 - 2 * (tij * 
        (.e355 + .e356) * .e6)) * .e6/.e10 - 2 * (2 * ((.e103 - 
        (((.e333 + 2 * (.e199/.e102)) * .e6 + .e205) * .e39 + 
            .e331) * .e3)/.e12) - 2 * ((.e335 + .e363 + .e365) * 
        .e161/.e10))) * .e3 + .e126 - .e125) * .e46 * .e47/.e12 + 
        2 * (.e345 * .e6 * .e21/.e83) - ((.e287 - (.e258 + .e66)) * 
        .e94 + .e156 * .e238 - (.e309 + .e94 * .e238/.e56) * 
        .e72)/.e56)/.e56 - 0.5 * (((((.e229 * .e118 + 2 * (.e309 * 
        .e10 + .e92 * .e296))/.e48 + .e244)/.e48 + .e239 + .e205) * 
        .e84 + .e320 * .e142)/.e81)) * .e84 - .e320 * .e178) * 
        .e180^2/.e81, q2 = geno_q * ((((((.e235 * .e130 - 2 * 
        (tij * (0.5 * .e355 + 0.5 * .e356) * .e6)) * .e6/.e10 - 
        2 * (2 * ((0.5 * .e103 - (((0.5 * .e333 + 2 * (.e202/.e102)) * 
            .e6 + .e206) * .e39 + 0.5 * .e331) * .e3)/.e12) - 
            2 * ((0.25 * .e250 + 0.5 * .e335 + 16 * .e231) * 
                .e161/.e10))) * .e3 + 0.5 * .e130) * .e46 * .e47/.e12 + 
        (((0.5 * .e324 + 4 * (.e237/.e85 - (0.5 * .e227 + 4 * 
            .e10) * .e20 * .e6/.e215)) * .e4 * .e21 + .e361) * 
            .e6 - (.e252 + 2 * (.e301 * .e6 * .e19/.e10)) * .e55) * 
            .e23 + 2 * ((0.5 + 0.5 * .e86 - .e75) * .e4 * .e6 * 
        .e21/.e83) - ((.e272 - .e255) * .e94 + .e156 * .e236 - 
        (.e310 + .e236 * .e94/.e56) * .e72)/.e56)/.e56 - 0.5 * 
        (((((.e214 * .e118 + 2 * (.e310 * .e10 + .e92 * .e299))/.e48 + 
            .e171)/.e48 + .e240 + .e206) * .e84 + .e315 * .e142)/.e81)) * 
        .e84 - .e315 * .e178) * .e180/.e81, f0 = (((2 * (tij * 
        .e145 * .e208 * .e6/.e10) - 2 * (2 * (((0.5 * (t0 * .e208) + 
        4 * .e362) * .e145 + 1 - .e116) * .e6/.e10) + 2 * (.e40 * 
        .e145 * .e208 * .e3/.e12))) * .e46 * .e47 * .e3/.e12 + 
        (4 * (.e145 * .e20 * .e4 * .e6/.e85) - .e277 * .e59) * 
            .e23 - (.e279 * .e351 + 2 * ((.e338 - 1) * .e145))) * 
        .e84 - .e178 * .e351) * .e180/.e268, f2 = geno_f * (((2 * 
        (.e93/.e85) - .e59 * .e300) * .e23 + (2 * (tij * .e198 * 
        .e6/.e10) - 2 * (2 * (.e198 * .e40 * .e3/.e12) + 2 * 
        ((0.5 + 0.5 * (t0 * .e198) + 2 * .e362) * .e6/.e10))) * 
        .e46 * .e47 * .e3/.e12 + 1 - (.e279 * .e349 + .e338)) * 
        .e84 - .e178 * .e349) * .e180/.e268, f1 = (((2 * ((2 * 
        ((.e366 + t0/.e10) * .e6) + 4 * (.e40 * .e3/.e12))/.e10) - 
        4 * (tij * .e6/.e9)) * .e4 * .e46 * .e47 * .e3/.e12 + 
        (.e364 - (.e279 * .e347 + (.e20 * (.e366 - 2 * (.e19/.e10)) * 
            .e6 - .e58) * .e23))/.e10) * .e84 - .e178 * .e347/.e10) * 
        .e180 * .e4/.e268, b0 = (((((.e130 * .e248 * .e3 + 2 * 
        (tij * (.e164 * .e39 - 2 * .e354)) - 2 * (2 * (((.e204 - 
        (2 * .e334 + .e211 + .e212) * .e3) * .e39 - 2 * .e332) * 
        .e3/.e12) + 2 * (.e101 * .e164 - (64 * .e231 + .e250) * 
        .e6 * .e3))) * .e46 * .e47/.e12 + 2 * ((2 + .e364 - 4 * 
        .e75) * .e4 * .e21/.e9)) * .e3/.e10 + ((2 * .e323 + 4 * 
        ((.e242 + 2 * .e20)/.e85 - (16 * .e10 + 2 * .e227) * 
            .e20 * .e6 * .e3/.e215)) * .e4 * .e21 + 4 * .e359 - 
        (.e254 + 2 * (.e281 * .e19/.e10)) * .e55) * .e23 - ((.e283 - 
        (.e55 * .e168 - .e302) * .e23) * .e94 - ((.e312 - .e94 * 
        .e168/.e56) * .e72 + .e156 * .e168) * .e23)/.e56)/.e56 + 
        0.5 * ((((.e204 - .e230)/.e10 + (.e243 - (.e168 * .e118 * 
            .e23 + 2 * (.e312 * .e23 * .e10 + .e92 * .e303))/.e48)/.e48) * 
            .e84 - .e308 * .e142)/.e81)) * .e84 - .e308 * .e178) * 
        (1 - 0.5 * geno_b) * .e180 * .e5/.e81, b2 = geno_b * 
        (((((.e323 + 4 * (((2 * .e219 + .e60)/.e17 + .e11)/.e85 - 
            .e326 * .e3/.e215)) * .e4 * .e21 + 2 * .e359 - (.e253 + 
            2 * (.e275 * .e19/.e10)) * .e55) * .e23 + ((.e130 * 
            .e3 * .e174 + 2 * (tij * (.e86 * .e39 - .e354)) - 
            2 * (2 * (((.e203 - (.e334 + .e209 + .e210) * .e3) * 
                .e39 - .e332) * .e3/.e12) + 2 * (.e101 * .e86 - 
                (.e363 + .e365) * .e6 * .e3))) * .e46 * .e47/.e12 + 
            2 * (.e345 * .e21/.e9)) * .e3/.e10 - ((.e289 - (.e55 * 
            .e166 - .e188) * .e23) * .e94 - ((.e311 - .e94 * 
            .e166/.e56) * .e72 + .e156 * .e166) * .e23)/.e56)/.e56 + 
            0.5 * ((((.e203 - .e226)/.e10 + (.e241 - (.e166 * 
                .e118 * .e23 + 2 * (.e311 * .e23 * .e10 + .e92 * 
                .e297))/.e48)/.e48) * .e84 - .e306 * .e142)/.e81)) * 
            .e84 - .e306 * .e178) * .e180 * .e5/.e81)
}

d_f_j2_q2_qff1b_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, m0, r0, tij, yij, 
    t0, geno_a, geno_b, geno_q, geno_f) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- b0 + geno_b * (b2 - b0)/2
    .e6 <- .e5^2
    .e7 <- .e4^2
    .e8 <- .e6 * .e3
    .e9 <- .e7 + 2 * .e8
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e3
    .e12 <- .e4 + .e10
    .e13 <- .e12/.e11
    .e14 <- r0 - .e13
    .e17 <- geno_f * (f2 - f0)/2
    .e18 <- f0 + .e17
    .e19 <- tij - t0
    .e20 <- .e11 + 2 * (.e10/.e14)
    .e22 <- exp(2 * (.e10 * .e19))
    .e23 <- .e18 - f1
    .e24 <- .e20 * .e22
    .e25 <- .e7 * .e23
    .e26 <- .e6/.e10
    .e27 <- .e11^2
    .e29 <- 2 * (.e3 * .e10)
    .e30 <- .e4 * .e23
    .e31 <- .e18 - m0
    .e34 <- .e6/.e29 - 2 * (.e12/.e27)
    .e35 <- .e30/.e10
    .e39 <- 2 * (.e25/.e10) - 2 * (.e31 * .e10)
    .e41 <- .e24 - .e11
    .e42 <- exp(-(t0 * .e10))
    .e43 <- exp(tij * .e10)
    .e44 <- .e20 * .e6
    .e47 <- .e34 * .e10/.e14 + .e26
    .e49 <- .e44 * .e19/.e10
    .e51 <- .e35 + f0 + .e17
    .e52 <- .e11 - .e24
    .e55 <- .e47/.e14 + .e49 + 1
    .e56 <- 2 * .e10
    .e57 <- 0.5 * .e26
    .e63 <- 2 * (.e39 * .e42 * .e43/.e12) - 2 * (.e35 - .e18)
    .e64 <- .e56^2
    .e68 <- .e63 * .e3 - .e51 * .e20 * .e22
    .e69 <- .e3/.e10
    .e70 <- .e55 * .e22
    .e71 <- .e68/.e52
    .e72 <- .e13 + 2 * (.e10/.e41)
    .e73 <- .e57 - .e13
    .e74 <- yij - .e71
    .e75 <- .e8/.e9
    .e76 <- 2 * .e69
    .e77 <- .e70 - 1
    .e80 <- .e73 * .e10/(2 * (.e3 * .e14)) + .e57
    .e83 <- .e20 * .e3 * .e19/.e10
    .e85 <- 0.5 * geno_f
    .e86 <- 1 - .e70
    .e88 <- 2 * (.e25/.e9) + 2 * .e31
    .e90 <- 2 * (.e24/.e64)
    .e92 <- .e3/.e9 + .e90
    .e93 <- .e69 + 1/(2 * .e14)
    .e95 <- 1/.e14 + .e76
    .e98 <- .e92 * .e6
    .e99 <- .e29^2
    .e101 <- .e26 - 2 * (.e77 * .e10/.e41)
    .e106 <- 0.5 * (t0 * .e39) + 4 * (.e25/.e64) + f0 + .e17 - 
        m0
    .e108 <- .e9 * .e10
    .e109 <- .e98 - 1
    .e110 <- 2 * (.e80/.e14)
    .e116 <- .e101/.e41 + 0.5 * .e34
    .e117 <- .e30/.e9
    .e122 <- tij * .e39 * .e6/.e10 - 2 * (.e34 * .e39 * .e3/.e12 + 
        .e106 * .e6/.e10)
    .e124 <- .e49 + 1 + .e110
    .e125 <- 1 - .e85
    .e127 <- .e42 * .e43 * .e3
    .e128 <- .e109 * .e4
    .e131 <- .e7/.e10
    .e133 <- 2 * (.e93/.e14)
    .e134 <- 2 * (.e95/.e14)
    .e135 <- 2 * (.e8/.e99)
    .e136 <- 2/.e27
    .e145 <- .e128 * .e23/.e10 + .e127 * .e122/.e12 + f0 + .e17 - 
        (.e55 * .e51 * .e22 + .e68 * .e86/.e52)
    .e146 <- .e20 * .e4
    .e147 <- 1 - .e75
    .e148 <- 2 - 2 * .e75
    .e149 <- .e133 + 2 * .e83
    .e150 <- .e134 + 4 * .e83
    .e151 <- .e135 + .e136
    .e152 <- .e124 * .e22
    .e153 <- .e151 * .e3
    .e154 <- .e3^2
    .e156 <- .e145/.e52 + 0.5 * (.e116 * .e74/.e72)
    .e159 <- .e146 * .e23 * .e3/.e108
    .e160 <- .e5^4
    .e165 <- .e125 * .e4/.e10
    .e167 <- .e131 - .e10
    .e168 <- .e19/.e10
    .e169 <- 0.5 * (.e4/.e10)
    .e170 <- 1/.e11
    .e171 <- 1/.e3
    .e173 <- 2 * ((0.5 * (.e8/.e10) + 0.5 * .e10) * .e6/.e99) + 
        2 * ((.e57 - .e12/.e3)/.e27)
    .e175 <- 2 * .e131 - .e56
    .e176 <- .e55 * .e3
    .e177 <- .e71 - .e51
    .e178 <- .e152 - 1
    .e179 <- .e147/.e10
    .e180 <- .e148/.e10
    .e182 <- 0.5 * (.e160/.e108)
    .e186 <- 0.5 * tij - (0.5 * t0 + 0.5/.e12)
    .e187 <- 1 - .e152
    .e190 <- 2 * .e153
    .e191 <- 2 * .e117
    .e195 <- 2 * tij - (2 * t0 + 2/.e12)
    .e196 <- tij - (1/.e12 + t0)
    .e197 <- ((.e47 * .e73/.e11 + .e80 * .e34 - .e173 * .e10)/.e14 - 
        .e182)/.e14
    .e198 <- ((.e47/.e56 + .e34 * .e93 + .e170 - .e153)/.e14 + 
        .e179)/.e14
    .e199 <- ((.e47/.e10 + .e34 * .e95 + .e171 - .e190)/.e14 + 
        .e180)/.e14
    .e200 <- (.e124 * .e51 - 0.5 * (.e146 * .e6 * .e23/.e108)) * 
        .e22
    .e213 <- .e72 * .e52
    .e217 <- (.e117 + 2 * ((.e186 * .e39 - 0.5 * .e88) * .e42 * 
        .e43/.e12)) * .e6 * .e3/.e10 + 0.5 * .e63
    .e218 <- .e51 * .e19
    .e219 <- .e34 * .e88
    .e223 <- .e86/.e52 + 0.5 * (.e116/.e72)
    .e224 <- .e147 * .e20
    .e226 <- .e165 + 1 - .e85
    .e230 <- .e148 * .e20 + 2 * (.e95 * .e6/.e14)
    .e232 <- (2 * ((.e39 * .e195 - 2 * .e88) * .e42 * .e43/.e12) + 
        4 * .e117) * .e154/.e10
    .e234 <- (2 * ((.e39 * .e196 - .e88) * .e42 * .e43/.e12) + 
        .e191) * .e154/.e10
    .e242 <- .e25/.e56^4
    .e243 <- .e69 - .e149 * .e22 * .e10/.e41
    .e244 <- .e57 - .e178 * .e10/.e41
    .e245 <- 0.5 + .e169
    .e246 <- 2 * (.e93 * .e6/.e14)
    .e247 <- 2 * .e159
    .e248 <- .e76 - .e150 * .e22 * .e10/.e41
    .e250 <- t0 * .e88/.e10
    .e251 <- (.e197 + ((.e47 + 2 * .e80)/.e14 + (.e168 - 0.5/.e9) * 
        .e20 * .e6 + 2) * .e6 * .e19/.e10) * .e22
    .e253 <- ((.e177 * .e149 + .e159) * .e22 + .e234)/.e52 + 
        (1/.e56 + 2 * (.e243/.e41)) * .e74/.e72
    .e255 <- ((.e177 * .e150 + .e247) * .e22 + .e232)/.e52 + 
        (1/.e10 + 2 * (.e248/.e41)) * .e74/.e72
    .e256 <- .e198 + (.e224 + 2 * .e176 + .e246) * .e19/.e10
    .e257 <- .e199 + (.e230 + 4 * .e176) * .e19/.e10
    .e260 <- (.e217 - (.e200 + .e68 * .e187/.e52))/.e52 + (.e73/.e11 + 
        2 * (.e244/.e41)) * .e74/.e72
    .e267 <- .e219 * .e3
    .e268 <- .e34/.e12
    .e278 <- (2 - 4 * (.e4 * .e42 * .e43/.e12)) * .e3 + .e24
    .e280 <- (2 * (.e167 * .e42 * .e43/.e12) - 2 * (.e169 - 0.5)) * 
        .e3 - .e245 * .e20 * .e22
    .e282 <- (2 * (.e125 * .e175 * .e42 * .e43/.e12) - 2 * (.e165 + 
        .e85 - 1)) * .e3 - .e226 * .e20 * .e22
    .e285 <- .e88 * .e6 * .e3/.e10
    .e286 <- .e7/.e64
    .e287 <- .e154/.e9^2
    .e288 <- 4/.e64
    c(q2 = geno_q^2 * (((((.e186 * .e6 * .e3/.e10 + 0.5) * .e122 - 
        (2 * ((.e34 * (0.5 - 0.5 * (.e8/(.e12 * .e10))) * .e39 - 
            (.e173 * .e39 + 0.5 * (.e219 * .e6/.e10)) * .e3)/.e12 - 
            (0.25 * .e250 + 0.5 * (.e106/.e9) + 16 * .e242) * 
                .e160/.e10) + tij * (0.5 * (.e88/.e10) + 0.5 * 
            (.e39/.e9)) * .e160/.e10) * .e3) * .e42 * .e43/.e12 + 
        ((0.5 - (.e75 + 0.5 * .e109))/.e9 + 2 * (((.e168 - .e288) * 
            .e20 * .e6 + 1 + .e110) * .e22/.e64)) * .e4 * .e6 * 
            .e23/.e10 - (((.e197 + (1 + .e110 - 0.5 * (.e44/.e9)) * 
        .e6 * .e19/.e10) * .e51 + .e55 * (.e218 - 0.5 * .e117) * 
        .e6/.e10) * .e22 + (.e145 * .e187 + (.e217 - .e200) * 
        .e86 - (.e251 + .e86 * .e187/.e52) * .e68)/.e52))/.e52 - 
        0.5 * (((((.e178 * .e101 + 2 * (.e251 * .e10 + .e77 * 
            .e244))/.e41 + .e182)/.e41 + 0.5 * .e173) * .e74 + 
            .e260 * .e116)/.e72)) * .e74 - .e156 * .e260)/.e72, 
        f0 = geno_q * ((.e109 * .e125 * .e4/.e10 + 1 + .e127 * 
            (tij * .e125 * .e175 * .e6/.e10 - 2 * (((0.5 * (t0 * 
                .e175) + 4 * .e286) * .e125 + 1 - .e85) * .e6/.e10 + 
                .e34 * .e125 * .e175 * .e3/.e12))/.e12 - (.e55 * 
            .e226 * .e22 + .e223 * .e282 + .e85)) * .e74 - .e156 * 
            .e282)/.e213, f2 = geno_f * geno_q * ((0.5 * (.e128/.e10 + 
            1) + .e127 * (tij * .e167 * .e6/.e10 - 2 * (.e167 * 
            .e34 * .e3/.e12 + (0.5 + 0.5 * (t0 * .e167) + 2 * 
            .e286) * .e6/.e10))/.e12 - (.e55 * .e245 * .e22 + 
            .e223 * .e280)) * .e74 - .e156 * .e280)/.e213, f1 = geno_q * 
            (((2 * (((.e288 + t0/.e10) * .e6 + 2 * (.e34 * .e3/.e12))/.e10) - 
                2 * (tij * .e6/.e9)) * .e4 * .e42 * .e43 * .e3/.e12 - 
                (.e223 * .e278 + .e98 - (.e70 + 1))/.e10) * .e74 - 
                .e156 * .e278/.e10) * .e4/.e213, b0 = geno_q * 
            ((((((2 * ((.e20 * (4 * .e168 - 16/.e64) * .e3 + 
                .e134) * .e22/.e64) - 4 * .e287) * .e6 + 2 * 
                .e92 - 2 * (.e109 * .e3/.e9)) * .e4 * .e23 + 
                (.e195 * .e3 * .e122 + tij * (.e148 * .e39 - 
                  2 * .e285) - 2 * ((((.e171 - (2 * .e268 + 2 * 
                  .e151) * .e3) * .e39 - 2 * .e267)/.e12 - (64 * 
                  .e242 + .e250) * .e6) * .e3 + .e106 * .e148)) * 
                  .e42 * .e43 * .e3/.e12)/.e10 - (((.e199 + .e230 * 
                .e19/.e10) * .e51 + .e55 * (4 * .e218 - .e191) * 
                .e3/.e10) * .e22 + ((.e232 - (.e51 * .e150 - 
                .e247) * .e22) * .e86 - ((.e257 - .e86 * .e150/.e52) * 
                .e68 + .e145 * .e150) * .e22)/.e52))/.e52 + 0.5 * 
                ((((.e180 - (.e101 * .e150 * .e22 + 2 * (.e257 * 
                  .e22 * .e10 + .e77 * .e248))/.e41)/.e41 + 0.5 * 
                  ((.e171 - .e190)/.e10)) * .e74 - .e255 * .e116)/.e72)) * 
                .e74 - .e255 * .e156) * (1 - 0.5 * geno_b) * 
            .e5/.e72, b2 = geno_b * geno_q * ((((((2 - .e98) * 
            .e3/.e9 + (2 * (((2 * .e168 - 8/.e64) * .e20 * .e3 + 
            .e133) * .e22/.e64) - 2 * .e287) * .e6 + .e90) * 
            .e4 * .e23 + (.e3 * .e196 * .e122 + tij * (.e147 * 
            .e39 - .e285) - 2 * ((((.e170 - (.e268 + .e135 + 
            .e136) * .e3) * .e39 - .e267)/.e12 - (0.5 * .e250 + 
            32 * .e242) * .e6) * .e3 + .e106 * .e147)) * .e42 * 
            .e43 * .e3/.e12)/.e10 - (((.e198 + (.e224 + .e246) * 
            .e19/.e10) * .e51 + .e55 * (2 * .e218 - .e117) * 
            .e3/.e10) * .e22 + ((.e234 - (.e51 * .e149 - .e159) * 
            .e22) * .e86 - ((.e256 - .e86 * .e149/.e52) * .e68 + 
            .e145 * .e149) * .e22)/.e52))/.e52 + 0.5 * ((((.e179 - 
            (.e101 * .e149 * .e22 + 2 * (.e256 * .e22 * .e10 + 
                .e77 * .e243))/.e41)/.e41 + 0.5 * ((.e170 - .e153)/.e10)) * 
            .e74 - .e253 * .e116)/.e72)) * .e74 - .e253 * .e156) * 
            .e5/.e72)
}

d_f_j2_f0_ff1_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, m0, r0, tij, yij, 
    t0, geno_a, geno_b, geno_q, geno_f) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- .e4^2
    .e7 <- sqrt(.e5 + 2 * ((b0 + geno_b * (b2 - b0)/2)^2 * .e3))
    .e8 <- 2 * .e3
    .e9 <- .e4 + .e7
    .e10 <- .e9/.e8
    .e11 <- .e8 + 2 * (.e7/(r0 - .e10))
    .e13 <- exp(2 * (.e7 * (tij - t0)))
    .e14 <- .e4/.e7
    .e15 <- 0.5 * geno_f
    .e16 <- .e11 * .e13
    .e18 <- 1 - .e15
    .e19 <- exp(-(t0 * .e7))
    .e20 <- exp(tij * .e7)
    .e23 <- 2 * (.e5/.e7) - 2 * .e7
    .e26 <- .e23 * .e19 * .e20/.e9
    .e27 <- (.e10 + 2 * (.e7/(.e16 - .e8))) * (.e8 - .e16)^2
    .e31 <- (2 * .e26 - 2 * (.e14 - 1)) * .e3 - (.e14 + 1) * 
        .e11 * .e13
    .e33 <- .e18 * .e4/.e7
    .e34 <- 0.5 * .e14
    c(f0 = -(((2 * (.e18 * .e23 * .e19 * .e20/.e9) - 2 * (.e33 + 
        .e15 - 1)) * .e3 - (.e33 + 1 - .e15) * .e11 * .e13) * 
        .e31 * .e18/.e27), f2 = -(geno_f * ((.e26 - 2 * (.e34 - 
        0.5)) * .e3 - (0.5 + .e34) * .e11 * .e13) * .e31 * .e18/.e27), 
        f1 = .e31 * ((4 * (.e4 * .e19 * .e20/.e9) - 2) * .e3 - 
            .e16) * .e18 * .e4/(.e27 * .e7))
}

d_f_j2_f2_ff1_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, m0, r0, tij, yij, 
    t0, geno_a, geno_b, geno_q, geno_f) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- .e4^2
    .e7 <- sqrt(.e5 + 2 * ((b0 + geno_b * (b2 - b0)/2)^2 * .e3))
    .e8 <- 2 * .e3
    .e9 <- .e4 + .e7
    .e10 <- .e9/.e8
    .e11 <- .e8 + 2 * (.e7/(r0 - .e10))
    .e13 <- exp(2 * (.e7 * (tij - t0)))
    .e14 <- .e4/.e7
    .e15 <- .e11 * .e13
    .e17 <- exp(-(t0 * .e7))
    .e18 <- exp(tij * .e7)
    .e21 <- (2 * (.e5/.e7) - 2 * .e7) * .e17 * .e18/.e9
    .e23 <- (.e21 + 1 - .e14) * .e3 - 0.5 * ((.e14 + 1) * .e11 * 
        .e13)
    .e24 <- (.e10 + 2 * (.e7/(.e15 - .e8))) * (.e8 - .e15)^2
    .e25 <- 0.5 * .e14
    c(f2 = -(geno_f^2 * ((.e21 - 2 * (.e25 - 0.5)) * .e3 - (0.5 + 
        .e25) * .e11 * .e13) * .e23/.e24), f1 = geno_f * .e23 * 
        ((4 * (.e4 * .e17 * .e18/.e9) - 2) * .e3 - .e15) * .e4/(.e24 * 
        .e7))
}

d_f_j2_f1_f1_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, m0, r0, tij, yij, 
    t0, geno_a, geno_b, geno_q, geno_f) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- .e4^2
    .e6 <- .e5 + 2 * ((b0 + geno_b * (b2 - b0)/2)^2 * .e3)
    .e7 <- sqrt(.e6)
    .e8 <- 2 * .e3
    .e9 <- .e4 + .e7
    .e10 <- .e9/.e8
    .e11 <- (.e8 + 2 * (.e7/(r0 - .e10))) * exp(2 * (.e7 * (tij - 
        t0)))
    .e16 <- 4 * (.e4 * exp(-(t0 * .e7)) * exp(tij * .e7)/.e9)
    ((2 - .e16) * .e3 + .e11) * ((.e16 - 2) * .e3 - .e11) * .e5/((.e10 + 
        2 * (.e7/(.e11 - .e8))) * (.e8 - .e11)^2 * .e6^1)
}

deriv_mu_int_a0_abqff1_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    tij, r0, m0, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    .e3 <- geno_a * (a2 - a0)/2
    .e4 <- a0 + .e3
    .e7 <- geno_q * (q2 - q0)/2 + q0
    .e8 <- .e4^2
    .e9 <- b0 + geno_b * (b2 - b0)/2
    .e10 <- .e9^2
    .e11 <- .e10 * .e7
    .e12 <- .e8 + 2 * .e11
    .e13 <- sqrt(.e12)
    .e14 <- 2 * .e7
    .e15 <- .e4 + .e13
    .e16 <- .e15/.e14
    .e17 <- r0 - .e16
    .e20 <- geno_f * (f2 - f0)/2
    .e21 <- f0 + .e20
    .e22 <- 2 * (.e13/.e17)
    .e23 <- .e4/.e13
    .e24 <- .e14 + .e22
    .e25 <- .e21 - f1
    .e26 <- tij - t0
    .e27 <- .e7 * .e17
    .e28 <- .e23 + 1
    .e29 <- .e21 - m0
    .e30 <- .e8 * .e25
    .e32 <- exp(2 * (.e13 * .e26))
    .e35 <- 0.5 * geno_a
    .e37 <- 2 * (.e30/.e13) - 2 * (.e29 * .e13)
    .e38 <- 2 * .e13
    .e40 <- .e28 * .e13/.e27
    .e41 <- 2 * .e23
    .e42 <- .e40 + .e41
    .e43 <- 1 - .e35
    .e45 <- .e14 - .e24 * .e32
    .e46 <- t0 * .e13
    .e47 <- .e42/.e17
    .e48 <- .e8/.e12
    .e49 <- .e38^2
    .e50 <- .e10/.e13
    .e51 <- .e24 * .e4
    .e53 <- exp(-.e46)
    .e54 <- 2 * .e27
    .e56 <- .e51 * .e26/.e13
    .e57 <- t0 * .e24
    .e59 <- .e57 * .e4/.e13
    .e60 <- .e47 - 2 * .e59
    .e61 <- 2 * .e56
    .e62 <- .e47 + .e61
    .e63 <- 4 * .e48
    .e64 <- t0 * .e37
    .e65 <- 8 - .e63
    .e66 <- .e43 * .e4
    .e67 <- 0.5 * .e64
    .e71 <- 2 * (.e67 + f0 + .e20 - m0)
    .e73 <- .e66/.e13
    .e74 <- 0.5 * .e23
    .e75 <- exp(-(2 * .e46))
    .e77 <- .e65 * .e25/2
    .e79 <- .e27/.e38 + 0.5
    .e81 <- .e7/.e45 - 0.5
    .e83 <- .e77 - .e71
    .e84 <- exp(-(tij * .e13))
    .e85 <- 0.5 * .e50
    .e86 <- .e43 * .e8
    .e89 <- .e83 * .e4/.e13 - .e28 * .e37/.e15
    .e90 <- .e7/.e13
    .e91 <- .e62 * .e32
    .e93 <- .e86/.e12 + .e35
    .e94 <- .e45^2
    .e95 <- .e24 * .e49
    .e97 <- (-.e22)^2
    .e98 <- 2 * .e29
    .e99 <- 1 - .e93
    .e100 <- .e97 * .e17
    .e102 <- .e73 + 1 - .e35
    .e103 <- 0.5 + .e74
    .e104 <- .e30/.e12
    .e105 <- 2 * .e104
    .e106 <- t0 * .e79
    .e107 <- tij * .e81
    .e109 <- .e50 - .e15/.e7
    .e110 <- .e85 - .e16
    .e111 <- .e42 * .e7
    .e112 <- .e12 * .e13
    .e114 <- .e24 * .e15^2 * .e75
    .e115 <- .e106 * .e4
    .e117 <- .e107 * .e4/.e13
    .e124 <- .e111/.e100 + .e115/.e13
    .e128 <- 2 * (.e60 * .e13) + 4 * (.e51/.e13)
    .e130 <- 4 * .e89 - 2 * (.e60 * .e37/.e24)
    .e131 <- .e117 - .e91 * .e7/.e94
    .e132 <- .e4 * .e10
    .e133 <- .e105 + .e98
    .e134 <- .e4 * .e7
    .e135 <- .e25^2
    .e136 <- 0.5 * .e48
    .e137 <- .e53^2
    .e139 <- .e124 * .e53 + .e84 * .e131
    .e140 <- 2 * .e90
    .e142 <- (-(4 * (.e12/.e17)))^2
    .e145 <- .e102 * .e13/.e54 + .e73
    .e148 <- .e103 * .e13/.e54 + .e74
    .e149 <- .e90 + 1/(2 * .e17)
    .e151 <- 1/.e17 + .e140
    .e152 <- .e24 * .e10
    .e153 <- .e24 * .e7
    .e154 <- 32 * .e37
    .e155 <- .e142 * .e17
    .e156 <- (2 * (.e45 * .e13))^2
    .e158 <- .e79 * .e53 + .e81 * .e84
    .e161 <- .e109 * .e13/.e54 + .e50
    .e164 <- .e110 * .e13/.e54 + .e85
    .e165 <- 0.5 * geno_q
    .e168 <- .e99 * .e4
    .e169 <- .e128 * .e37
    .e170 <- .e45 * .e4
    .e172 <- 2 * (.e164/.e17)
    .e173 <- 2 + 2 * (.e161/.e17)
    .e177 <- (32 * .e89 - 64 * (.e169 * .e13/.e95)) * .e4 + .e154
    .e178 <- .e132/.e112
    .e179 <- .e170/.e13
    .e182 <- 2 * (.e8/.e13) - .e38
    .e184 <- t0 * .e49/.e13
    .e188 <- .e168 * .e135/.e49
    .e191 <- 2 * (.e42 * .e13) + 4 * .e4
    .e193 <- 2 * .e179 - 2 * (.e91 * .e13)
    .e195 <- .e152 * .e26/.e13
    .e197 <- .e153 * .e26/.e13
    .e198 <- .e132/.e12
    .e199 <- .e134/.e112
    .e200 <- .e134/.e12
    .e201 <- 0.5 - .e136
    .e202 <- 0.5 * geno_f
    .e203 <- 1 - .e165
    .e205 <- .e43 * .e24
    .e207 <- 2 * (.e149/.e17)
    .e208 <- 2 * (.e151/.e17)
    .e209 <- 64 * .e188
    .e210 <- .e139 * .e37
    .e216 <- (2 * (.e37 * .e53 * .e7/.e15))^2
    .e217 <- .e24 * .e75
    .e218 <- 1 - .e202
    .e220 <- 2 * (.e43 * .e37 * .e130 * .e137 * .e7/.e114) + 
        .e209
    .e221 <- .e158 * .e177
    .e223 <- .e17/.e38 + 1/.e45
    .e225 <- .e221 - 32 * (.e210 * .e4)
    .e226 <- .e99/.e49
    .e227 <- .e152/.e12
    .e228 <- .e153/.e12
    .e229 <- 1 - .e48
    .e230 <- 1 + .e172
    .e234 <- .e191/.e155 + .e193/.e156
    .e236 <- .e95 * .e15 * .e75
    .e237 <- 2 * (.e145/.e17)
    .e238 <- 2 * (.e148/.e17)
    .e239 <- 2 * .e12
    .e240 <- (.e4 * .e25/.e38)^2
    .e242 <- .e109/2 + .e16
    .e243 <- .e110/2
    .e245 <- .e205 * .e4
    .e249 <- 2 * ((1 - .e136) * .e25) + m0 - .e21
    .e250 <- 2 * ((2 - .e48) * .e25)
    .e251 <- .e99/.e13
    .e252 <- .e250 - .e98
    .e254 <- 8 - 2 * .e184
    .e255 <- .e62 * .e10
    .e256 <- .e62 * .e7
    .e257 <- .e145 * .e28
    .e258 <- .e148 * .e28
    .e259 <- (.e195 + 1 + .e172) * .e32
    .e261 <- .e28 * (.e50 - (r0 - .e242) * .e13/.e27)
    .e263 <- .e28 * .e149 - .e200
    .e264 <- .e28 * (.e85 - (0.5 * .e17 - .e243) * .e13/.e27)
    .e266 <- .e28 * .e151 - 2 * .e200
    .e271 <- .e86/.e12^2
    .e273 <- .e216/.e217 + 32 * (.e240 * .e7)
    .e275 <- .e37 * .e4/.e12
    .e276 <- .e37/.e15
    .e277 <- .e56 + .e238
    .e278 <- (.e173 + 2 * .e195) * .e32
    .e279 <- 0.5 * .e198
    .e280 <- .e237 + 2 * (.e245 * .e26/.e13)
    .e281 <- .e207 + 2 * .e197
    .e282 <- 2 * (.e201/.e13)
    .e283 <- 2 * .e251
    .e284 <- .e208 + 4 * .e197
    .e285 <- 2 * .e178
    .e286 <- 2 * .e199
    .e287 <- 4 * .e199
    .e289 <- t0 * .e133/.e13
    .e290 <- .e100^2
    .e291 <- .e155^2
    .e292 <- .e91 + .e42 * .e45/.e38
    .e294 <- .e114^2
    .e295 <- .e277 * .e32
    .e296 <- .e217^2
    .e297 <- .e229 * .e43
    .e298 <- .e280 * .e32
    .e299 <- .e281 * .e32
    .e300 <- .e284 * .e32
    .e301 <- .e45 * .e10
    .e302 <- .e45 * .e7
    .e303 <- .e24 * (4 - .e184)
    .e304 <- .e24 * .e254
    .e305 <- .e65/2
    .e306 <- .e27/.e12
    .e308 <- 0.5 * .e83
    .e309 <- 1 - .e259
    .e310 <- .e230 - 0.5 * .e227
    .e311 <- 2 - .e278
    .e312 <- .e207 - .e228
    .e313 <- .e208 - 2 * .e228
    .e314 <- .e173 - .e227
    .e316 <- 32 * (.e89 * .e4) + .e154
    .e317 <- 8 * .e226
    .e319 <- t0 * .e124 * .e53
    .e321 <- tij * .e84 * .e131
    .e322 <- ((.e42 * .e109/2 + .e261 - .e198)/.e27 - .e285)/.e17
    .e323 <- ((.e42 * .e110/2 + .e264 - .e279)/.e27 - .e178)/.e17
    .e325 <- (.e257 + .e42 * .e102/2 + 1 - .e93)/.e27 + .e283
    .e326 <- (.e263/.e7 + .e42/.e38)/.e17
    .e327 <- (.e266/.e7 + .e42/.e13)/.e17
    .e329 <- (.e42 * .e103/2 + .e258 + 0.5 - .e136)/.e27 + .e282
    .e330 <- t0 * .e130
    .e331 <- t0 * .e4
    .e332 <- .e325/.e17
    .e333 <- (.e326 - .e286)/.e17
    .e334 <- (.e327 - .e287)/.e17
    .e335 <- .e329/.e17
    .e336 <- .e60 * .e133
    .e338 <- .e62 * .e43 * .e4
    .e339 <- .e62 * .e4
    .e343 <- ((.e276 + .e105 + .e98) * .e28 + .e275)/.e15 + (((.e63 - 
        .e305) * .e25 + .e71)/.e12 + .e289) * .e4
    .e347 <- .e201 * .e24 + 2 * (.e148 * .e4/.e17)
    .e349 <- .e297 * .e24 + 2 * (.e145 * .e4/.e17)
    .e352 <- .e43 * .e252 * .e4/.e13
    .e353 <- .e43 * .e45
    .e354 <- .e310 * .e4
    .e355 <- .e312 * .e4
    .e357 <- .e249 * .e4/.e13
    .e358 <- .e313 * .e4
    .e359 <- .e133 * .e130
    .e360 <- .e302/.e12
    .e361 <- .e38^3
    .e362 <- .e314 * .e4
    .e363 <- .e15 * .e13
    .e364 <- 0.5 * .e133
    .e366 <- 2 * .e271 - .e317
    .e367 <- 2 * .e133
    .e368 <- 4 * .e226
    .e369 <- t0 * .e43
    .e370 <- t0 * .e15
    .e371 <- .e331/.e13
    .e372 <- .e322 + (2 * .e255 + 2 * .e362) * .e26/.e13
    .e373 <- .e323 + (.e255 + 2 * .e354) * .e26/.e13
    .e374 <- .e335 + (.e339 + 2 * .e347) * .e26/.e13
    .e375 <- .e139 * .e133
    .e377 <- (.e257 + 1 - .e93)/.e27 + .e283
    .e379 <- (.e258 + 0.5 - .e136)/.e27 + .e282
    .e383 <- (.e261 - .e198)/.e27 - .e285
    .e385 <- .e263/.e27 - .e286
    .e387 <- (.e264 - .e279)/.e27 - .e178
    .e389 <- .e266/.e27 - .e287
    .e394 <- .e168 * .e25
    .e395 <- .e353 * .e4
    .e398 <- .e205 * .e254 * .e4 + 2 * (.e145 * .e49/.e17)
    .e400 <- .e203 * .e10 * .e7
    .e402 <- .e230 * .e49 + .e303 * .e10
    .e407 <- (16 - 4 * .e184) * .e24 * .e7 + 2 * (.e151 * .e49/.e17)
    .e412 <- (2 * .e338 + 2 * .e349) * .e26/.e13
    .e414 <- (2 * .e256 + 2 * .e355) * .e26/.e13
    .e415 <- .e299/.e94
    .e416 <- .e366 * .e4
    .e417 <- .e300/.e94
    .e419 <- (2 * .e358 + 4 * .e256) * .e26/.e13
    .e420 <- .e301/.e12
    .e422 <- .e303 * .e4 + 2 * (.e148 * .e49/.e17)
    .e424 <- .e304 * .e10 + .e49 * .e173
    .e426 <- .e304 * .e7 + 2 * (.e149 * .e49/.e17)
    .e428 <- .e306 + 1/.e38
    .e429 <- 0.5 - .e11/.e239
    .e431 <- 1/.e13 + 2 * .e306
    .e432 <- 2 * .e64
    .e433 <- 32 - 64 * (.e128 * .e4 * .e13/.e95)
    .e434 <- .e319 + .e321
    .e435 <- .e369 * .e4
    .e436 <- .e332 + .e412
    .e437 <- .e333 + .e414
    .e438 <- .e334 + .e419
    .e439 <- .e139 * .e43
    .e441 <- .e375 * .e7/.e13
    .e444 <- .e60 * .e43
    .e446 <- .e336 * .e10/.e13
    .e448 <- .e336 * .e7/.e13
    .e449 <- .e60 * .e4
    .e451 <- .e60 * .e10/.e13
    .e453 <- .e60 * .e7/.e13
    .e454 <- .e255/.e13
    .e455 <- .e256/.e13
    .e460 <- .e225 * .e53 * .e25 * .e7/.e236 + .e234 * .e273
    .e464 <- (.e28 * (0.5 * .e276 + .e364) + 0.5 * .e275)/.e15 + 
        ((.e105 - .e308)/.e12 + 0.5 * .e289) * .e4
    .e466 <- (.e28 * (2 * .e276 + .e367) + 2 * .e275)/.e15 + 
        ((8 * .e104 - 2 * .e83)/.e12 + 2 * .e289) * .e4
    .e468 <- .e42 * .e10/.e13
    .e469 <- .e111/.e13
    .e475 <- .e102/.e15 + .e435/.e13
    .e477 <- .e102/2 + .e66 * .e7 * .e17/.e12
    .e481 <- (.e271 - .e368) * .e4 * .e10 * .e135/.e49
    .e483 <- .e295 * .e7/.e94
    .e486 <- (.e77 - ((((.e305 + 4 * .e229) * .e25 - .e71)/.e12 + 
        t0 * .e252/.e13) * .e8 + .e71)) * .e43/.e13 - ((.e352 - 
        .e102 * .e37/.e15) * .e28 + .e99 * .e37/.e13)/.e15
    .e492 <- .e28/.e14
    .e495 <- .e428/.e38
    .e496 <- .e79 * .e43
    .e498 <- .e79 * .e10/.e12
    .e499 <- .e79/.e12
    .e500 <- .e81 * .e43
    .e501 <- .e81/.e12
    .e504 <- .e223 * .e220 * .e7/.e38
    .e507 <- (0.25 * .e65 - 2 * (0.25 * (t0 * .e182) + 0.5)) * 
        .e4/.e13 - 0.5 * (.e28 * .e182/.e15)
    .e508 <- (0.5 - .e309 * .e7/.e45)/.e45
    .e510 <- .e429 * .e17 - .e243
    .e511 <- .e201 * .e43
    .e514 <- (0.5 * (.e218 * .e65) - 2 * (0.5 * (t0 * .e218 * 
        .e182) + 1 - .e202)) * .e4/.e13 - .e28 * .e218 * .e182/.e15
    .e516 <- (.e308 - ((.e308 + 2 * (.e229 * .e25))/.e12 + t0 * 
        .e249/.e13) * .e8)/.e13 - ((.e357 - .e103 * .e37/.e15) * 
        .e28 + .e201 * .e37/.e13)/.e15
    .e518 <- (0.5 * .e99 - (.e297/.e12 + .e368) * .e8) * .e135/.e49
    .e520 <- .e103/.e15 + 0.5 * .e371
    .e522 <- .e103/2 + .e134 * .e17/.e239
    .e524 <- (1 - ((.e43 * (1 + 2 * .e229)/.e12 + .e317) * .e8 + 
        .e35)) * .e135/.e49
    .e527 <- .e99 * .e218 * .e4 * .e25
    .e529 <- .e394 * .e26/.e49
    .e531 <- .e395/.e12 + .e298
    .e534 <- .e43/.e112
    .e535 <- .e218 * .e182
    .e542 <- .e431/.e38
    .e543 <- (2 - 2 * .e370) * .e24
    .e544 <- .e128 * (.e133 + .e432)
    .e546 <- .e298 * .e7/.e94
    .e550 <- .e299 + .e360
    .e551 <- .e220 * .e4
    .e552 <- .e220/.e12
    .e555 <- .e416 * .e10 * .e135/.e49
    .e556 <- .e300 + 2 * .e360
    .e558 <- .e359 * .e10/.e13
    .e560 <- .e359 * .e7/.e13
    .e562 <- .e133 * .e10/.e13
    .e564 <- .e133 * .e7/.e13
    .e568 <- .e37 * .e182 * .e137 * .e7/.e114
    .e569 <- .e37 * .e130
    .e571 <- .e301/.e13
    .e572 <- .e302/.e13
    .e573 <- .e114 * .e13
    .e578 <- .e8 * .e10 * .e135 * .e7/(.e361 * .e13)
    .e579 <- .e30/.e49
    .e581 <- .e8 * .e135/.e361
    .e583 <- .e10 * .e17
    .e585 <- .e7^2
    .e586 <- .e17 * .e13
    .e587 <- 0.5 - 0.5 * (.e11/.e363)
    .e589 <- 0.5 * .e65 - (2 * (.e28/.e15) + 2 * .e371) * .e4
    .e591 <- 0.5 * .e319 + 0.5 * .e321
    .e592 <- 1 - (.e203 * .e311 * .e7/.e45 + .e165)
    .e593 <- 1 - (.e400/.e363 + .e165)
    .e595 <- 1/.e15 + t0
    .e597 <- 2 - (.e420 + .e278)
    .e598 <- 2 * (.e7 * .e13)
    .e599 <- 2 * (t0 * (.e205 + (.e237 - .e245/.e12) * .e4)/.e13)
    .e600 <- 2 * (t0 * ((.e238 - 0.5 * (.e51/.e12)) * .e4 + 0.5 * 
        .e24)/.e13)
    .e601 <- 2 * (t0 * .e310 * .e4/.e13)
    .e602 <- 2 * (t0 * .e312 * .e4/.e13)
    .e603 <- 2 * (t0 * .e313 * .e4/.e13)
    .e604 <- 2 * (t0 * .e314 * .e4/.e13)
    .e607 <- 2 * t0 + 2/.e15
    .e609 <- 4 * .e343 - 2 * .e330
    .e611 <- 4 * .e271 - 16 * .e226
    .e612 <- 8 * .e188
    .e613 <- r0 - (.e242 + .e11 * .e17/.e12)
    .e616 <- t0 * .e225 * .e10/.e13
    .e617 <- .e106 * .e10
    .e619 <- .e57 * .e10/.e13
    .e621 <- .e57 * .e7/.e13
    .e623 <- t0 * .e8/.e13
    .e624 <- .e107 * .e10
    .e625 <- .e107/.e13
    c(a0 = (((.e99/.e598 + 8 * .e524) * .e7 - .e251) * .e26 - 
        0.5 * (((.e332 + .e292 * .e280/.e45 + .e412) * .e32 + 
            (.e377 * .e45 - .e42 * .e531)/.e38)/.e45)) * .e43 + 
        (((.e298/.e94 - (.e102/.e14 + .e66 * .e17/.e12)/.e38) * 
            .e220 + .e223 * .e43 * (2 * (((.e43 * (.e250 - (.e98 + 
            .e432)) * .e130 * .e4/.e13 + .e37 * (4 * .e486 - 
            2 * ((((.e325 - 2 * (.e60 * .e145/.e24))/.e17 - .e599) * 
                .e37 + .e444 * .e252 * .e4/.e13)/.e24)))/.e114 - 
            ((2 * .e102 - 2 * (.e435 * .e15/.e13)) * .e24 + 2 * 
                (.e145 * .e15/.e17)) * .e37 * .e130 * .e15 * 
                .e75/.e294) * .e137 * .e7) + 64 * .e524 - .e551/.e12)) * 
            .e7/.e38 - ((((.e546 - .e107 * .e43 * .e4/.e13) * 
            .e84 - (.e477/2 + .e106 * .e43 * .e4) * .e53/.e13) * 
            .e177 + .e158 * (32 * (.e486 * .e4 + .e89 * .e43) + 
            32 * .e352 - (.e398 * .e316 + 64 * (((.e43 * .e128 * 
            .e252 * .e4/.e13 + (2 * ((.e332 - .e599) * .e13 + 
            .e444 * .e4/.e13) + 4 * (.e349/.e13)) * .e37) * .e4 + 
            .e43 * (1 - 2 * .e623) * .e128 * .e37) * .e13 + (.e73 - 
            2 * (.e398 * .e13/.e95)) * .e128 * .e37 * .e4))/.e95) - 
            (.e225 * .e475 + 32 * (((((.e377/.e100 - .e42 * (8 * 
                (.e145 * .e13/.e17) - .e97 * .e102/.e14)/.e290) * 
                .e7 + t0 * (.e496 - (.e477/.e38 + .e496 * .e4/.e12) * 
                .e4)/.e13) * .e53 + .e84 * (tij * ((.e546 - .e500 * 
                .e4/.e12) * .e4 + .e500)/.e13 - (.e436 + 2 * 
                (.e62 * .e280 * .e32/.e45)) * .e32 * .e7/.e94) - 
                (.e139 * .e398/.e95 + .e66 * .e434/.e13)) * .e37 + 
                .e439 * .e252 * .e4/.e13) * .e4 + .e439 * .e37))) * 
            .e53 * .e25 * .e7/.e236 + ((2 * (.e377 * .e13 + .e42 * 
            .e43 * .e4/.e13) + 4 * .e43)/.e155 + (2 * ((.e353 - 
            .e531 * .e4)/.e13) - (2 * ((.e436 * .e13 + .e338/.e13) * 
            .e32) + 8 * ((.e395/.e13 - .e298 * .e13) * .e193 * 
            .e45 * .e13/.e156)))/.e156 - .e191 * (32 * ((.e102 * 
            .e12/.e54 + 2 * .e66) * .e12/.e17) - .e142 * .e102/.e14)/.e291) * 
            .e273 + .e234 * ((.e209 + 8 * ((.e352 - .e475 * .e37) * 
            .e37 * .e137 * .e7/.e114)) * .e7 - (.e237 - 2 * (.e369 * 
            .e24 * .e4/.e13)) * .e216 * .e75/.e296)) * .e43) * 
            .e7, a2 = geno_a * ((((.e295/.e94 - (.e103/.e14 + 
        .e4 * .e17/.e239)/.e38) * .e220 + .e223 * (2 * (((.e249 * 
        .e130 * .e4/.e13 + .e37 * (4 * .e516 - (2 * ((((.e329 - 
        2 * (.e60 * .e148/.e24))/.e17 - .e600) * .e37 + .e60 * 
        .e249 * .e4/.e13)/.e24) + .e330 * .e4/.e13)))/.e114 - 
        ((2 * .e103 - .e331 * .e15/.e13) * .e24 + 2 * (.e148 * 
            .e15/.e17)) * .e37 * .e130 * .e15 * .e75/.e294) * 
        .e43 * .e137 * .e7) + 64 * .e518 - .e551/.e239)) * .e7/.e38 - 
        ((((.e483 - 0.5 * .e117) * .e84 - (.e522/2 + 0.5 * .e115) * 
            .e53/.e13) * .e177 + .e158 * (32 * (.e516 * .e4 + 
            0.5 * .e89) + 32 * .e357 - (.e422 * .e316 + 64 * 
            ((((2 * ((.e335 - .e600) * .e13 + 0.5 * (.e449/.e13)) + 
                4 * (.e347/.e13)) * .e37 + .e128 * .e249 * .e4/.e13) * 
                .e4 + (0.5 - .e623) * .e128 * .e37) * .e13 + 
                (.e74 - 2 * (.e422 * .e13/.e95)) * .e128 * .e37 * 
                  .e4))/.e95) - (.e225 * .e520 + 32 * (((((.e379/.e100 - 
            .e42 * (8 * (.e148 * .e13/.e17) - .e97 * .e103/.e14)/.e290) * 
            .e7 + t0 * (0.5 * .e79 - (.e522/.e38 + 0.5 * (.e79 * 
            .e4/.e12)) * .e4)/.e13) * .e53 + .e84 * (tij * ((.e483 - 
            0.5 * (.e81 * .e4/.e12)) * .e4 + 0.5 * .e81)/.e13 - 
            (.e374 + 2 * (.e62 * .e277 * .e32/.e45)) * .e32 * 
                .e7/.e94) - (.e139 * .e422/.e95 + .e591 * .e4/.e13)) * 
            .e37 + .e139 * .e249 * .e4/.e13) * .e4 + 0.5 * .e210))) * 
            .e53 * .e25 * .e7/.e236 + .e234 * ((64 * ((0.5 - 
            .e8/.e239) * .e4 * .e135/.e49) + 8 * ((.e357 - .e520 * 
            .e37) * .e37 * .e137 * .e7/.e114)) * .e7 - (.e238 - 
            .e59) * .e216 * .e75/.e296) + ((2 * ((0.5 * .e45 - 
            (.e295 + 0.5 * (.e170/.e12)) * .e4)/.e13) - (2 * 
            ((.e374 * .e13 + 0.5 * (.e339/.e13)) * .e32) + 8 * 
            ((0.5 * .e179 - .e295 * .e13) * .e193 * .e45 * .e13/.e156)))/.e156 + 
            (2 + 2 * (.e379 * .e13 + 0.5 * (.e42 * .e4/.e13)))/.e155 - 
            .e191 * (32 * ((.e12 * .e103/.e54 + a0 + .e3) * .e12/.e17) - 
                .e142 * .e103/.e14)/.e291) * .e273) * .e43) * 
        .e7 + ((.e511/.e598 + 8 * .e518) * .e7 - .e511/.e13) * 
        .e26 - 0.5 * (((.e374 + .e292 * .e277/.e45) * .e32 + 
        (.e379 * .e45 - (.e295 + .e170/.e239) * .e42)/.e38) * 
        .e43/.e45)), b0 = ((((.e417 - .e542) * .e220 + .e223 * 
        (2 * (((((4 * .e466 - 4 * .e330) * .e7/.e13 - 2 * ((((.e327 - 
            (2 * (.e60 * .e151/.e24) + .e287))/.e17 - .e603) * 
            .e37 - 2 * .e448)/.e24)) * .e37 - 2 * .e560)/.e114 - 
            (.e24 * (4 - 4 * .e370) * .e7/.e13 + 2 * (.e151 * 
                .e15/.e17)) * .e37 * .e130 * .e15 * .e75/.e294) * 
            .e43 * .e137) + 64 * (.e611 * .e4 * .e135/.e49) - 
            2 * .e552) * .e7) * .e7/.e38 + (.e534 + 8 * (.e611 * 
        .e135 * .e7/.e49)) * .e4 * .e26 - (((((.e417 - 2 * .e625) * 
        .e84 - (.e431/2 + 2 * .e106) * .e53/.e13) * .e177 - .e225 * 
        .e607/.e13) * .e7 + .e158 * ((32 * (.e466 * .e7/.e13) - 
        64 * ((((2 * ((.e334 - .e603) * .e13 + 2 * .e453) + 4 * 
            (.e358/.e13)) * .e37 - .e128 * (.e367 + 4 * .e64) * 
            .e7/.e13) * .e13 + .e169 * (.e140 - 2 * (.e407 * 
            .e13/.e95)))/.e95)) * .e4 - (.e407 * .e316/.e95 + 
        64 * .e564)) - 32 * (((((.e389/.e100 - (.e42 * (8 * (.e151 * 
        .e13/.e17) - .e97/.e13)/.e290 + t0 * (.e542 + 2 * .e499) * 
        .e4/.e13)) * .e53 + .e84 * (tij * (.e417 - 2 * .e501) * 
        .e4/.e13 - (.e438 + 2 * (.e62 * .e284 * .e32/.e45)) * 
        .e32/.e94) - (2 * .e319 + 2 * .e321)/.e13) * .e7 - .e139 * 
        .e407/.e95) * .e37 - 2 * .e441) * .e4)) * .e53 * .e25 * 
        .e7/.e236 + .e273 * (2 * ((.e389 * .e13 + 2 * .e469)/.e155) - 
        ((2 * ((.e438 * .e13 + 2 * .e455) * .e32) + 2 * (.e556 * 
            .e4/.e13) + 8 * (.e193 * (2 * .e572 - .e300 * .e13) * 
            .e45 * .e13/.e156))/.e156 + .e191 * (32 * ((.e12/.e586 + 
            4 * .e7) * .e12/.e17) - .e142/.e13)/.e291)) - .e234 * 
        ((.e208 - 4 * .e621) * .e216 * .e75/.e296 + (256 * .e581 + 
            8 * ((.e37 * .e607 + .e367) * .e37 * .e137 * .e7/.e114)) * 
            .e585/.e13)) * .e43) * .e7 - 0.5 * (((.e334 + .e292 * 
        .e284/.e45 + .e419) * .e32 + (.e389 * .e45 - .e42 * .e556)/.e38) * 
        .e43/.e45)) * (1 - 0.5 * geno_b) * .e9, b2 = geno_b * 
        ((((.e415 - .e495) * .e220 + .e223 * (2 * ((((.e609 * 
            .e7/.e13 - 2 * ((((.e326 - (2 * (.e60 * .e149/.e24) + 
            .e286))/.e17 - .e602) * .e37 - .e448)/.e24)) * .e37 - 
            .e560)/.e114 - (.e543 * .e7/.e13 + 2 * (.e149 * .e15/.e17)) * 
            .e37 * .e130 * .e15 * .e75/.e294) * .e43 * .e137) + 
            64 * (.e416 * .e135/.e49) - .e552) * .e7) * .e7/.e38 + 
            (0.5 * .e534 + 8 * (.e366 * .e135 * .e7/.e49)) * 
                .e4 * .e26 - (((((.e415 - .e625) * .e84 - (.e428/2 + 
            .e106) * .e53/.e13) * .e177 - .e225 * .e595/.e13) * 
            .e7 + .e158 * ((32 * (.e343 * .e7/.e13) - 64 * ((((2 * 
            ((.e333 - .e602) * .e13 + .e453) + 4 * (.e355/.e13)) * 
            .e37 - .e544 * .e7/.e13) * .e13 + (.e90 - 2 * (.e426 * 
            .e13/.e95)) * .e128 * .e37)/.e95)) * .e4 - (.e426 * 
            .e316/.e95 + 32 * .e564)) - 32 * (((((.e385/.e100 - 
            (.e42 * (8 * (.e149 * .e13/.e17) - .e97/.e38)/.e290 + 
                t0 * (.e495 + .e499) * .e4/.e13)) * .e53 + .e84 * 
            (tij * (.e415 - .e501) * .e4/.e13 - (.e437 + 2 * 
                (.e62 * .e281 * .e32/.e45)) * .e32/.e94) - .e434/.e13) * 
            .e7 - .e139 * .e426/.e95) * .e37 - .e441) * .e4)) * 
            .e53 * .e25 * .e7/.e236 + .e273 * (2 * ((.e385 * 
            .e13 + .e469)/.e155) - ((2 * ((.e437 * .e13 + .e455) * 
            .e32) + 2 * (.e550 * .e4/.e13) + 8 * ((.e572 - .e299 * 
            .e13) * .e193 * .e45 * .e13/.e156))/.e156 + .e191 * 
            (32 * ((.e12/(2 * .e586) + .e14) * .e12/.e17) - .e142/.e38)/.e291)) - 
            ((128 * .e581 + 8 * ((.e595 * .e37 + .e105 + .e98) * 
                .e37 * .e137 * .e7/.e114)) * .e585/.e13 + (.e207 - 
                2 * .e621) * .e216 * .e75/.e296) * .e234) * .e43) * 
            .e7 - 0.5 * (((.e333 + .e292 * .e281/.e45 + .e414) * 
            .e32 + (.e385 * .e45 - .e42 * .e550)/.e38) * .e43/.e45)) * 
        .e9, q0 = (((.e492 + .e178) * .e43 + (8 * .e555 - (.e28/.e7 + 
        .e178) * .e43/.e14) * .e7 + .e612) * .e26 + .e504 - (.e460 + 
        0.5 * ((.e372 * .e32 + (.e383 * .e45 + .e42 * .e597)/.e38 - 
            .e292 * .e311/.e45)/.e45)) * .e43) * .e203 + (((.e223 * 
        (2 * (((((.e609 * .e10/.e13 - 2 * (((.e322 - (.e60 * 
            .e173/.e24 + .e604)) * .e37 - .e446)/.e24)) * .e37 - 
            .e558) * .e7 + .e569)/.e114 - (.e543 * .e10/.e13 + 
            .e173 * .e15) * .e37 * .e130 * .e15 * .e75 * .e7/.e294) * 
            .e43 * .e137) + 64 * .e555) - ((.e109/.e14 + .e583/.e12)/.e38 + 
        .e311/.e94) * .e220) * .e203 * .e7 + .e223 * (1 - (.e400/.e12 + 
        .e165)) * .e220)/.e38 - ((((.e158 * ((32 * (.e343 * .e10/.e13) - 
        64 * ((((2 * ((.e322 - .e604) * .e13 + .e451) + 4 * (.e362/.e13)) * 
            .e37 - .e544 * .e10/.e13) * .e13 + (.e50 - 2 * (.e424 * 
            .e13/.e95)) * .e128 * .e37)/.e95)) * .e4 - (.e424 * 
        .e316/.e95 + 32 * .e562)) - .e616) * .e203 + (((.e613/2 - 
        .e617) * .e53 - .e624 * .e84) * .e203/.e13 + .e592 * 
        .e84/.e45) * .e177 - 32 * ((((((.e383 * .e7 + .e40 + 
        .e41)/.e100 + t0 * (.e613/.e38 - .e498) * .e4/.e13 - 
        .e42 * (8 * (.e161 * .e13/.e17) - .e97 * .e109/.e14) * 
            .e7/.e290) * .e53 - (.e139 * .e424/.e95 + .e10 * 
        .e434/.e13)) * .e203 + .e84 * (tij * (.e592/.e45 - .e81 * 
        .e203 * .e10/.e12) * .e4/.e13 - ((.e372 - 2 * (.e62 * 
        .e311/.e45)) * .e7 + .e47 + .e61) * .e203 * .e32/.e94)) * 
        .e37 - .e139 * .e203 * .e133 * .e10/.e13) * .e4)) * .e7 + 
        .e225 * .e593) * .e53 * .e25/.e236 + (.e203 * (32 * (.e240 - 
        4 * .e578) - .e216 * (.e173 - 2 * .e619) * .e75/.e296) + 
        8 * ((.e593 * .e37 - .e203 * (.e133 + .e64) * .e10 * 
            .e7/.e13) * .e37 * .e137 * .e7/.e114)) * .e234 + 
        ((2 * (.e597 * .e4/.e13) - (2 * ((.e372 * .e13 + .e454) * 
            .e32) + 8 * ((.e311 * .e13 + .e571) * .e193 * .e45 * 
            .e13/.e156)))/.e156 + 2 * ((.e383 * .e13 + .e468)/.e155) - 
            .e191 * (32 * ((.e12 * .e109/.e54 + 2 * .e10) * .e12/.e17) - 
                .e142 * .e109/.e14)/.e291) * .e273 * .e203) * 
        .e43) * .e7, q2 = geno_q * ((((.e223 * (2 * ((((((4 * 
        .e464 - .e330) * .e10/.e13 - 2 * (((.e323 - (.e60 * .e230/.e24 + 
        .e601)) * .e37 - 0.5 * .e446)/.e24)) * .e37 - 0.5 * .e558) * 
        .e7 + 0.5 * .e569)/.e114 - ((1 - .e370) * .e24 * .e10/.e13 + 
        .e230 * .e15) * .e37 * .e130 * .e15 * .e75 * .e7/.e294) * 
        .e43 * .e137) + 64 * .e481) - ((.e110/.e14 + .e583/.e239)/.e38 + 
        .e309/.e94) * .e220) * .e7 + .e223 * .e429 * .e220)/.e38 - 
        (((((.e510/2 - 0.5 * .e617) * .e53/.e13 + (.e508 - 0.5 * 
            (.e624/.e13)) * .e84) * .e177 + .e158 * ((32 * (.e464 * 
            .e10/.e13) - 64 * ((((2 * ((.e323 - .e601) * .e13 + 
            0.5 * .e451) + 4 * (.e354/.e13)) * .e37 - (.e364 + 
            .e64) * .e128 * .e10/.e13) * .e13 + (.e85 - 2 * (.e402 * 
            .e13/.e95)) * .e128 * .e37)/.e95)) * .e4 - (.e402 * 
            .e316/.e95 + 16 * .e562)) - (0.5 * .e616 + 32 * (((((.e387 * 
            .e7 + 0.5 * .e42)/.e100 + t0 * (.e510/.e38 - 0.5 * 
            .e498) * .e4/.e13 - .e42 * (8 * (.e164 * .e13/.e17) - 
            .e97 * .e110/.e14) * .e7/.e290) * .e53 + .e84 * (tij * 
            (.e508 - 0.5 * (.e81 * .e10/.e12)) * .e4/.e13 - ((.e373 - 
            2 * (.e62 * .e309/.e45)) * .e7 + 0.5 * .e62) * .e32/.e94) - 
            (.e139 * .e402/.e95 + .e591 * .e10/.e13)) * .e37 - 
            0.5 * (.e375 * .e10/.e13)) * .e4))) * .e7 + .e225 * 
            .e587) * .e53 * .e25/.e236 + .e234 * (32 * (0.5 * 
            .e240 - 2 * .e578) + 8 * ((.e587 * .e37 - (.e364 + 
            .e67) * .e10 * .e7/.e13) * .e37 * .e137 * .e7/.e114) - 
            (.e230 - .e619) * .e216 * .e75/.e296) + ((2 * ((1 - 
            (.e259 + 0.5 * .e420)) * .e4/.e13) - (2 * ((.e373 * 
            .e13 + 0.5 * .e454) * .e32) + 8 * ((.e309 * .e13 + 
            0.5 * .e571) * .e193 * .e45 * .e13/.e156)))/.e156 + 
            2 * ((.e387 * .e13 + 0.5 * .e468)/.e155) - .e191 * 
            (32 * ((.e12 * .e110/.e54 + .e10) * .e12/.e17) - 
                .e142 * .e110/.e14)/.e291) * .e273) * .e43) * 
        .e7 + ((8 * .e481 - (.e492 + 0.5 * .e178) * .e43/.e14) * 
        .e7 + 0.5 * (.e28 * .e43/.e14 + .e612) + 0.5 * (.e66 * 
        .e10/.e112)) * .e26 + 0.5 * (.e504 - .e460 * .e43) - 
        0.5 * ((.e373 * .e32 + (.e387 * .e45 + .e42 * (1 - (.e259 + 
            .e301/.e239)))/.e38 - .e292 * .e309/.e45) * .e43/.e45)), 
        f0 = ((.e223 * (128 * (.e527/.e49) + 2 * ((.e535 * .e130 + 
            .e37 * (4 * .e514 - 2 * (.e60 * .e218 * .e182/.e24))) * 
            .e43 * .e137 * .e7/.e114))/.e38 - (((.e158 * (.e535 * 
            .e433 + 32 * (.e514 * .e4)) - 32 * (.e139 * .e218 * 
            .e182 * .e4)) * .e25 + .e225 * .e218) * .e53/.e236 + 
            .e234 * .e218 * (64 * .e579 + 8 * .e568)) * .e43) * 
            .e7 + 16 * (.e527 * .e26/.e49)) * .e7, f2 = geno_f * 
            ((.e223 * (2 * ((.e37 * (4 * .e507 - .e60 * .e182/.e24) + 
                0.5 * (.e182 * .e130)) * .e43 * .e137 * .e7/.e114) + 
                64 * (.e394/.e49))/.e38 - (((.e158 * (0.5 * (.e182 * 
                .e433) + 32 * (.e507 * .e4)) - 16 * (.e139 * 
                .e182 * .e4)) * .e25 + 0.5 * .e225) * .e53/.e236 + 
                .e234 * (32 * .e579 + 4 * .e568)) * .e43) * .e7 + 
                8 * .e529) * .e7, f1 = ((.e223 * (2 * ((.e37 * 
            (4 * (.e449/.e24) - 4 * .e589) - 2 * (.e130 * .e4)) * 
            .e43 * .e137 * .e7/.e573) - 128 * (.e99 * .e25/.e49)) * 
            .e4/.e38 - ((((64 * (.e139 * .e4) - .e158 * (2 * 
            .e433 + 32 * .e589)) * .e4 * .e25/.e13 + 32 * .e210) * 
            .e4 - .e221) * .e53/.e236 - .e234 * (16 * (.e37 * 
            .e137 * .e7/.e573) + 64 * (.e25/.e49)) * .e8) * .e43) * 
            .e7 - 16 * .e529) * .e7)
}

deriv_mu_int_a2_abqff1_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    tij, r0, m0, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    .e3 <- geno_a * (a2 - a0)/2
    .e4 <- a0 + .e3
    .e7 <- geno_q * (q2 - q0)/2 + q0
    .e8 <- .e4^2
    .e9 <- b0 + geno_b * (b2 - b0)/2
    .e10 <- .e9^2
    .e11 <- .e10 * .e7
    .e12 <- .e8 + 2 * .e11
    .e13 <- sqrt(.e12)
    .e14 <- 2 * .e7
    .e15 <- .e4 + .e13
    .e16 <- .e15/.e14
    .e17 <- r0 - .e16
    .e20 <- geno_f * (f2 - f0)/2
    .e21 <- f0 + .e20
    .e22 <- .e4/.e13
    .e23 <- 2 * (.e13/.e17)
    .e24 <- .e14 + .e23
    .e25 <- .e21 - f1
    .e26 <- .e7 * .e17
    .e27 <- tij - t0
    .e28 <- .e22 + 1
    .e29 <- .e8 * .e25
    .e30 <- .e21 - m0
    .e34 <- 2 * (.e29/.e13) - 2 * (.e30 * .e13)
    .e36 <- exp(2 * (.e13 * .e27))
    .e37 <- 2 * .e26
    .e38 <- 2 * .e13
    .e39 <- .e28 * .e13
    .e41 <- .e14 - .e24 * .e36
    .e42 <- t0 * .e13
    .e43 <- .e39/.e37
    .e44 <- .e43 + .e22
    .e45 <- .e38^2
    .e46 <- .e10/.e13
    .e47 <- .e24 * .e4
    .e49 <- exp(-.e42)
    .e50 <- .e8/.e12
    .e51 <- 2 * .e22
    .e53 <- .e39/.e26 + .e51
    .e54 <- t0 * .e24
    .e56 <- .e47 * .e27/.e13
    .e58 <- .e54 * .e4/.e13
    .e61 <- 0.5 * (.e53/.e17) - .e58
    .e62 <- 2 * .e50
    .e63 <- 2 * .e15
    .e64 <- .e44/.e17
    .e65 <- 4 - .e62
    .e66 <- t0 * .e34
    .e67 <- .e64 + .e56
    .e68 <- 0.5 * .e66
    .e70 <- exp(-(2 * .e42))
    .e71 <- .e28 * .e34
    .e75 <- .e65 * .e25/2 + m0 - (.e68 + f0 + .e20)
    .e76 <- 0.5 * .e22
    .e79 <- .e26/.e38 + 0.5
    .e81 <- .e7/.e41 - 0.5
    .e82 <- 0.5 * .e46
    .e83 <- exp(-(tij * .e13))
    .e86 <- .e75 * .e4/.e13 - .e71/.e63
    .e87 <- 2 * .e12
    .e88 <- .e67 * .e36
    .e89 <- .e24 * .e45
    .e90 <- .e41^2
    .e92 <- (-.e23)^2
    .e93 <- .e29/.e12
    .e94 <- .e7/.e13
    .e95 <- .e92 * .e17
    .e96 <- .e28/.e13
    .e98 <- .e4/.e12
    .e99 <- .e46 - .e15/.e7
    .e100 <- .e82 - .e16
    .e101 <- 0.5 + .e76
    .e102 <- 2 * .e93
    .e103 <- 2 * .e30
    .e104 <- .e102 + .e103
    .e105 <- t0 * .e79
    .e106 <- tij * .e81
    .e108 <- .e24 * .e15^2 * .e70
    .e110 <- 0.5 - .e8/.e87
    .e115 <- 4 * .e86 - 2 * (.e61 * .e34/.e24)
    .e116 <- .e44 * .e7
    .e117 <- .e12 * .e13
    .e118 <- 0.5 * (.e106 * .e4/.e13)
    .e119 <- .e105 * .e4
    .e123 <- .e116/.e95 + 0.5 * (.e119/.e13)
    .e126 <- .e25^2
    .e127 <- .e118 - .e88 * .e7/.e90
    .e129 <- 2 * (.e61 * .e13) + 2 * (.e47/.e13)
    .e130 <- .e37^2
    .e131 <- .e49^2
    .e132 <- 2 * .e17
    .e133 <- .e24 * .e10
    .e134 <- .e24 * .e7
    .e136 <- .e123 * .e49 + .e127 * .e83
    .e137 <- 0.5 * .e50
    .e139 <- (-(4 * (.e12/.e17)))^2
    .e140 <- 16 * .e34
    .e141 <- 2 * .e94
    .e144 <- .e99 * .e13/.e37 + .e46
    .e147 <- .e100 * .e13/.e37 + .e82
    .e150 <- .e101 * .e13/.e37 + .e76
    .e151 <- .e94 + 1/.e132
    .e153 <- 1/.e17 + .e141
    .e154 <- .e139 * .e17
    .e158 <- .e79 * .e49 + .e81 * .e83
    .e159 <- (2 * (.e41 * .e13))^2
    .e160 <- .e4/.e117
    .e162 <- 2 * (.e147/.e17)
    .e163 <- 2 + 2 * (.e144/.e17)
    .e164 <- .e110 * .e4
    .e165 <- .e129 * .e34
    .e168 <- 2 * (.e8/.e13) - .e38
    .e171 <- .e41 * .e4
    .e173 <- (32 * .e86 - 64 * (.e165 * .e13/.e89)) * .e4 + .e140
    .e174 <- 0.5 * geno_q
    .e175 <- .e96 - .e98
    .e177 <- .e164 * .e126/.e45
    .e178 <- .e34 * .e115
    .e179 <- .e171/.e13
    .e181 <- .e133 * .e27/.e13
    .e183 <- .e134 * .e27/.e13
    .e184 <- 0.5 - .e137
    .e186 <- 0.5 * .e96 - 0.5 * .e98
    .e191 <- .e179 - 2 * (.e88 * .e13)
    .e193 <- 2 * (.e44 * .e13) + 2 * .e4
    .e194 <- 2 * (.e151/.e17)
    .e195 <- 2 * (.e153/.e17)
    .e196 <- 64 * .e177
    .e198 <- t0 * .e45/.e13
    .e202 <- 0.5 * geno_f
    .e203 <- 1 - .e174
    .e205 <- 2 * (.e178 * .e131 * .e7/.e108) + .e196
    .e206 <- .e136 * .e34
    .e207 <- .e158 * .e173
    .e208 <- .e28/.e130
    .e209 <- (2 * (.e34 * .e49 * .e7/.e15))^2
    .e211 <- .e89 * .e15 * .e70
    .e212 <- .e133/.e12
    .e213 <- .e134/.e12
    .e214 <- .e24 * .e70
    .e216 <- .e17/.e38 + 1/.e41
    .e217 <- 1 - .e202
    .e218 <- 1 + .e162
    .e220 <- .e207 - 32 * (.e206 * .e4)
    .e222 <- 2 * (.e150/.e17)
    .e224 <- .e191/.e159 + .e193/.e154
    .e226 <- .e99/2 + .e16
    .e227 <- .e110/.e45
    .e228 <- .e100/2
    .e231 <- .e63^2
    .e232 <- .e8/.e87^2
    .e235 <- 2 * ((1 - .e137) * .e25) + m0 - .e21
    .e236 <- (.e4 * .e25/.e38)^2
    .e237 <- .e184/.e13
    .e238 <- .e67 * .e10
    .e239 <- .e67 * .e7
    .e240 <- (.e181 + 1 + .e162) * .e36
    .e242 <- .e28 * (0.5 * .e17 - .e228) * .e13
    .e243 <- .e28 * .e104
    .e244 <- .e71/.e231
    .e246 <- .e28 * (r0 - .e226) * .e13
    .e247 <- .e186 * .e4
    .e249 <- .e34 * .e4/.e12
    .e250 <- .e56 + .e222
    .e251 <- (.e163 + 2 * .e181) * .e36
    .e253 <- 2 * .e96 - 2 * .e98
    .e254 <- .e194 + 2 * .e183
    .e255 <- .e195 + 4 * .e183
    .e257 <- t0 * .e104/.e13
    .e260 <- .e209/.e214 + 32 * (.e236 * .e7)
    .e261 <- 1 - .e240
    .e262 <- 2 - .e251
    .e263 <- .e175/.e37
    .e264 <- (.e247 + 0.5)/.e37
    .e267 <- .e186/.e37
    .e268 <- .e24 * (4 - .e198)
    .e269 <- .e24 * (8 - 2 * .e198)
    .e270 <- .e4 * .e7
    .e271 <- .e26/.e12
    .e273 <- 0.5 * .e75
    .e274 <- 0.5 * .e65
    .e275 <- .e218 - 0.5 * .e212
    .e276 <- 2 * (.e242/.e130)
    .e277 <- 2 * (.e246/.e130)
    .e278 <- 2 * .e208
    .e279 <- .e194 - .e213
    .e280 <- .e195 - 2 * .e213
    .e281 <- .e163 - .e212
    .e282 <- .e95^2
    .e283 <- .e154^2
    .e284 <- .e88 + .e44 * .e41/.e38
    .e285 <- (.e263 - .e160) * .e10
    .e287 <- (.e208 - .e160) * .e7
    .e288 <- (.e267 - 0.5 * .e160) * .e10
    .e289 <- .e108^2
    .e290 <- .e250 * .e36
    .e291 <- .e214^2
    .e292 <- .e28 * .e101
    .e293 <- (.e278 - 2 * .e160) * .e7
    .e294 <- .e254 * .e36
    .e295 <- .e255 * .e36
    .e297 <- .e4 * .e10/.e117
    .e298 <- .e140 + 32 * (.e86 * .e4)
    .e299 <- 4 * .e7
    .e301 <- t0 * .e123 * .e49
    .e302 <- t0 * .e115
    .e303 <- t0 * .e4
    .e305 <- tij * .e127 * .e83
    .e308 <- .e220 * .e49 * .e25/.e211
    .e311 <- (((.e62 - .e65/2) * .e25 + .e68 + f0 + .e20 - m0)/.e12 + 
        0.5 * .e257) * .e4 + (.e243 + .e249)/.e63 + 2 * .e244
    .e313 <- .e216 * .e205/.e38
    .e314 <- .e184 * .e24
    .e315 <- .e61 * .e104
    .e316 <- .e275 * .e4
    .e317 <- .e279 * .e4
    .e318 <- .e280 * .e4
    .e319 <- .e104 * .e115
    .e320 <- .e41 * .e10
    .e321 <- .e41 * .e7
    .e322 <- .e38^3
    .e323 <- .e281 * .e4
    .e324 <- .e270/.e117
    .e325 <- 2 * .e232
    .e326 <- 4 * .e227
    .e328 <- 4 * .e232 - 8 * .e227
    .e329 <- t0 * .e168
    .e330 <- t0 * .e15
    .e331 <- .e303/.e13
    .e334 <- (((.e44 + 2 * .e150)/.e17 + .e56) * .e4 + .e314) * 
        .e27/.e13 + ((.e44/.e37 + .e39/.e130) * .e101 + .e264 + 
        .e237)/.e17
    .e335 <- .e136 * .e104
    .e336 <- ((.e44/.e38 + .e175/2)/.e17 + .e287)/.e17
    .e339 <- (.e238 + .e316) * .e27/.e13 + (.e44 * .e100/.e37 + 
        .e288 - .e276)/.e17
    .e340 <- ((.e44/.e13 + .e253/2)/.e17 + .e293)/.e17
    .e342 <- (.e285 + .e44 * .e99/.e37 - .e277)/.e17 + (.e323 + 
        2 * .e238) * .e27/.e13
    .e343 <- .e175/.e132
    .e345 <- .e264 + .e292 * .e13/.e130 + .e237
    .e349 <- (.e317 + 2 * .e239) * .e27/.e13
    .e351 <- (.e318 + 4 * .e239) * .e27/.e13
    .e354 <- .e313 - .e308
    .e355 <- .e164 * .e25
    .e357 <- .e218 * .e45 + .e268 * .e10
    .e362 <- (16 - 4 * .e198) * .e24 * .e7 + 2 * (.e153 * .e45/.e17)
    .e363 <- .e253/.e132
    .e364 <- .e294/.e90
    .e368 <- .e295/.e90
    .e369 <- .e205/.e12
    .e371 <- .e268 * .e4 + 2 * (.e150 * .e45/.e17)
    .e373 <- .e269 * .e10 + .e45 * .e163
    .e375 <- .e269 * .e7 + 2 * (.e151 * .e45/.e17)
    .e376 <- .e271 + 1/.e38
    .e378 <- 1/.e15 + t0
    .e380 <- 1/.e13 + 2 * .e271
    .e381 <- 16 - 64 * (.e129 * .e4 * .e13/.e89)
    .e385 <- ((.e53/2 + .e43) * .e101 + .e247 + 0.5)/.e26 + 2 * 
        .e237
    .e387 <- .e335 * .e7/.e13
    .e388 <- .e336 + .e349
    .e389 <- .e340 + .e351
    .e391 <- ((.e175 * .e7 + .e28/.e132)/.e7 + .e53/.e38)/.e17 - 
        2 * .e324
    .e393 <- (.e53/.e13 + (.e28/.e17 + .e253 * .e7)/.e7)/.e17 - 
        4 * .e324
    .e394 <- .e238/.e13
    .e395 <- .e239/.e13
    .e396 <- .e285 - .e277
    .e397 <- .e220 * .e378
    .e400 <- .e224 * .e260
    .e401 <- .e44 * .e4
    .e403 <- .e44 * .e10/.e13
    .e404 <- .e116/.e13
    .e405 <- (.e43 + .e51)/.e12
    .e406 <- .e287 + .e343
    .e410 <- ((.e93 - .e273)/.e12 + 0.25 * .e257) * .e4 + .e244 + 
        (0.5 * .e243 + 0.5 * .e249)/.e63
    .e411 <- .e354 * .e7
    .e412 <- .e288 - .e276
    .e415 <- ((.e274 - 0.5 * .e329) * .e217 + .e202 - 1) * .e4/.e13 - 
        .e28 * .e217 * .e168/.e63
    .e417 <- .e290 * .e7/.e90
    .e420 <- ((4 * .e93 - 2 * .e75)/.e12 + .e257) * .e4 + (2 * 
        .e243 + 2 * .e249)/.e63 + 4 * .e244
    .e425 <- .e28/.e299
    .e426 <- .e28/.e299^2
    .e428 <- .e12 * .e7 * .e13
    .e430 <- .e376/.e38
    .e432 <- .e79 * .e10/.e12
    .e433 <- .e79/.e12
    .e434 <- .e81/.e12
    .e435 <- (0.5 - .e261 * .e7/.e41)/.e41
    .e438 <- .e110 * .e217 * .e4 * .e25
    .e440 <- .e355 * .e27/.e45
    .e442 <- (0.5 - .e11/.e87) * .e17 - .e228
    .e444 <- .e315 * .e10/.e13
    .e446 <- .e315 * .e7/.e13
    .e447 <- .e61 * .e4
    .e449 <- .e61 * .e10/.e13
    .e451 <- .e61 * .e7/.e13
    .e453 <- (.e273 - ((((1 - .e50) * .e25 + .e273)/.e12 + 0.5 * 
        (t0 * .e235/.e13)) * .e8 + (.e28 * .e235 * .e4 + .e184 * 
        .e34)/.e63))/.e13 + 2 * (.e292 * .e34/.e231)
    .e455 <- (0.5 * .e110 - (1/.e87 + .e326 - .e325) * .e8) * 
        .e126/.e45
    .e458 <- (0.5 * (.e274 - 1) - 0.25 * .e329) * .e4/.e13 - 
        .e28 * .e168/(4 * .e15)
    .e460 <- .e101/.e15 + 0.5 * .e331
    .e462 <- .e101/2 + .e270 * .e17/.e87
    .e467 <- .e380/.e38
    .e468 <- (2 - 2 * .e330) * .e24
    .e471 <- .e293 + .e363
    .e472 <- .e129 * (.e104 + 2 * .e66)
    .e474 <- .e235 * .e4/.e13
    .e476 <- .e319 * .e10/.e13
    .e478 <- .e319 * .e7/.e13
    .e480 <- .e104 * .e10/.e13
    .e482 <- .e104 * .e7/.e13
    .e486 <- .e34 * .e168 * .e131 * .e7/.e108
    .e487 <- .e320/.e12
    .e488 <- .e320/.e13
    .e489 <- .e321/.e12
    .e490 <- .e321/.e13
    .e491 <- .e108 * .e13
    .e496 <- .e328 * .e126
    .e497 <- .e15 * .e13
    .e501 <- .e8 * .e10 * .e126 * .e7/(.e322 * .e13)
    .e502 <- .e29/.e45
    .e504 <- .e8 * .e126/.e322
    .e505 <- .e10 * .e17
    .e506 <- .e7^2
    .e507 <- .e17 * .e13
    .e508 <- 0.5 * (((.e53 * .e99/2 + .e175 * .e10 - .e246/.e26)/.e26 - 
        2 * .e297)/.e17)
    .e509 <- 0.5 * (((.e53 * .e100/2 + .e186 * .e10 - .e242/.e26)/.e26 - 
        .e297)/.e17)
    .e510 <- 0.5 * .e104
    .e511 <- .e274 - (.e28/.e15 + .e331) * .e4
    .e513 <- 0.5 * .e301 + 0.5 * .e305
    .e514 <- 1 - (.e203 * .e262 * .e7/.e41 + .e174)
    .e516 <- .e325 - .e326
    .e517 <- 2 * .e104
    .e520 <- 2 * t0 + 2/.e15
    .e522 <- 4 * .e311 - 2 * .e302
    .e523 <- 64 * (.e328 * .e4 * .e126/.e45)
    .e525 <- 8 * .e232 - 16 * .e227
    .e526 <- r0 - (.e226 + .e11 * .e17/.e12)
    .e527 <- .e301 + .e305
    .e529 <- t0 * ((.e222 - 0.5 * (.e47/.e12)) * .e4 + 0.5 * 
        .e24)/.e13
    .e530 <- .e105 * .e10
    .e533 <- t0 * .e275 * .e4/.e13
    .e536 <- t0 * .e279 * .e4/.e13
    .e539 <- t0 * .e280 * .e4/.e13
    .e541 <- .e54 * .e10/.e13
    .e543 <- .e54 * .e7/.e13
    .e546 <- t0 * .e281 * .e4/.e13
    .e547 <- .e106 * .e10
    .e548 <- .e106/.e13
    c(a2 = geno_a^2 * (((((.e290/.e90 - (.e101/.e14 + .e4 * .e17/.e87)/.e38) * 
        .e205 + .e216 * (2 * (((.e235 * .e115 * .e4/.e13 + .e34 * 
        (4 * .e453 - (2 * ((((0.5 * .e385 - 2 * (.e150 * .e61/.e24))/.e17 - 
            .e529) * .e34 + .e61 * .e235 * .e4/.e13)/.e24) + 
            .e302 * .e4/.e13)))/.e108 - ((2 * .e101 - .e303 * 
        .e15/.e13) * .e24 + 2 * (.e150 * .e15/.e17)) * .e34 * 
        .e115 * .e15 * .e70/.e289) * .e131 * .e7) + 64 * .e455 - 
        .e205 * .e4/.e87))/.e38 - (((.e417 - .e118) * .e83 - 
        (.e462/2 + 0.5 * .e119) * .e49/.e13) * .e173 + .e158 * 
        (16 * .e474 + 32 * (.e453 * .e4 + 0.5 * .e86) - (.e371 * 
            .e298 + 64 * ((((2 * ((.e314 + 2 * (.e150 * .e4/.e17))/.e13) + 
            2 * ((0.5 * (.e385/.e17) - .e529) * .e13 + 0.5 * 
                (.e447/.e13))) * .e34 + .e129 * .e235 * .e4/.e13) * 
            .e4 + (0.5 - t0 * .e8/.e13) * .e129 * .e34) * .e13 + 
            (.e76 - 2 * (.e371 * .e13/.e89)) * .e129 * .e34 * 
                .e4))/.e89) - (.e220 * .e460 + 32 * (((((.e345/.e95 - 
        .e44 * (8 * (.e150 * .e13/.e17) - .e92 * .e101/.e14)/.e282) * 
        .e7 + 0.5 * (t0 * (0.5 * .e79 - (.e462/.e38 + 0.5 * (.e79 * 
        .e4/.e12)) * .e4)/.e13)) * .e49 + (0.5 * (tij * ((.e417 - 
        0.5 * (.e81 * .e4/.e12)) * .e4 + 0.5 * .e81)/.e13) - 
        (.e334 + 2 * (.e67 * .e250 * .e36/.e41)) * .e36 * .e7/.e90) * 
        .e83 - (.e136 * .e371/.e89 + .e513 * .e4/.e13)) * .e34 + 
        .e136 * .e235 * .e4/.e13) * .e4 + 0.5 * .e206))) * .e49 * 
        .e25/.e211) * .e7 - ((((0.5 * .e41 - (.e290 + 0.5 * (.e171/.e12)) * 
        .e4)/.e13 - (2 * ((.e334 * .e13 + 0.5 * (.e67 * .e4/.e13)) * 
        .e36) + 8 * (.e191 * (0.5 * .e179 - .e290 * .e13) * .e41 * 
        .e13/.e159)))/.e159 + (1 + 2 * (.e345 * .e13 + 0.5 * 
        (.e401/.e13)))/.e154 - .e193 * (32 * ((.e12 * .e101/.e37 + 
        a0 + .e3) * .e12/.e17) - .e139 * .e101/.e14)/.e283) * 
        .e260 + .e224 * ((.e196 + 8 * ((.e474 - .e460 * .e34) * 
        .e34 * .e131 * .e7/.e108)) * .e7 - (.e222 - .e58) * .e209 * 
        .e70/.e291))) * .e7 + ((.e184/(4 * (.e7 * .e13)) + 8 * 
        .e455) * .e7 - 0.5 * .e237) * .e27 - 0.5 * (((.e334 + 
        .e284 * .e250/.e41) * .e36 + ((.e345 - .e401/.e87) * 
        .e41 - .e44 * .e250 * .e36)/.e38)/.e41)), b0 = geno_a * 
        (((((.e368 - .e467) * .e205 + .e216 * (2 * (((((4 * .e420 - 
            4 * .e302) * .e7/.e13 - 2 * ((((0.5 * .e393 - 2 * 
            (.e61 * .e153/.e24))/.e17 - .e539) * .e34 - 2 * .e446)/.e24)) * 
            .e34 - 2 * .e478)/.e108 - (.e24 * (4 - 4 * .e330) * 
            .e7/.e13 + 2 * (.e153 * .e15/.e17)) * .e34 * .e115 * 
            .e15 * .e70/.e289) * .e131) + 64 * (.e525 * .e4 * 
            .e126/.e45) - 2 * .e369) * .e7)/.e38 - ((((.e368 - 
            2 * .e548) * .e83 - (.e380/2 + 2 * .e105) * .e49/.e13) * 
            .e173 - .e220 * .e520/.e13) * .e7 + .e158 * ((32 * 
            (.e420 * .e7/.e13) - 64 * ((((2 * ((0.5 * (.e393/.e17) - 
            .e539) * .e13 + 2 * .e451) + 2 * (.e318/.e13)) * 
            .e34 - .e129 * (.e517 + 4 * .e66) * .e7/.e13) * .e13 + 
            .e165 * (.e141 - 2 * (.e362 * .e13/.e89)))/.e89)) * 
            .e4 - (.e362 * .e298/.e89 + 32 * .e482)) - 32 * (((((.e471/.e95 - 
            (.e44 * (8 * (.e153 * .e13/.e17) - .e92/.e13)/.e282 + 
                0.5 * (t0 * (.e467 + 2 * .e433) * .e4/.e13))) * 
            .e49 + (0.5 * (tij * (.e368 - 2 * .e434) * .e4/.e13) - 
            (.e389 + 2 * (.e67 * .e255 * .e36/.e41)) * .e36/.e90) * 
            .e83 - (2 * .e301 + 2 * .e305)/.e13) * .e7 - .e136 * 
            .e362/.e89) * .e34 - 2 * .e387) * .e4)) * .e49 * 
            .e25/.e211) * .e7 + .e224 * ((.e195 - 4 * .e543) * 
            .e209 * .e70/.e291 + (256 * .e504 + 8 * ((.e34 * 
            .e520 + .e517) * .e34 * .e131 * .e7/.e108)) * .e506/.e13) + 
            (0.5/.e117 + 8 * (.e525 * .e126 * .e7/.e45)) * .e4 * 
                .e27 - .e260 * (2 * ((.e471 * .e13 + 2 * .e404)/.e154) - 
            (((.e295 + 2 * .e489) * .e4/.e13 + 2 * ((.e389 * 
                .e13 + 2 * .e395) * .e36) + 8 * (.e191 * (2 * 
                .e490 - .e295 * .e13) * .e41 * .e13/.e159))/.e159 + 
                .e193 * (32 * ((.e12/.e507 + .e299) * .e12/.e17) - 
                  .e139/.e13)/.e283))) * .e7 - 0.5 * (((.e284 * 
            .e255/.e41 + .e340 + .e351) * .e36 + (((.e278 - (2 * 
            .e44 + .e51)/.e12) * .e7 + .e363) * .e41 - .e44 * 
            .e255 * .e36)/.e38)/.e41)) * (1 - 0.5 * geno_b) * 
        .e9, b2 = geno_a * geno_b * (((((.e364 - .e430) * .e205 + 
        .e216 * (2 * ((((.e522 * .e7/.e13 - 2 * ((((0.5 * .e391 - 
            2 * (.e151 * .e61/.e24))/.e17 - .e536) * .e34 - .e446)/.e24)) * 
            .e34 - .e478)/.e108 - (.e468 * .e7/.e13 + 2 * (.e151 * 
            .e15/.e17)) * .e34 * .e115 * .e15 * .e70/.e289) * 
            .e131) + .e523 - .e369) * .e7)/.e38 - ((((.e364 - 
        .e548) * .e83 - (.e376/2 + .e105) * .e49/.e13) * .e173 - 
        .e397/.e13) * .e7 + .e158 * ((32 * (.e311 * .e7/.e13) - 
        64 * ((((2 * ((0.5 * (.e391/.e17) - .e536) * .e13 + .e451) + 
            2 * (.e317/.e13)) * .e34 - .e472 * .e7/.e13) * .e13 + 
            (.e94 - 2 * (.e375 * .e13/.e89)) * .e129 * .e34)/.e89)) * 
        .e4 - (.e375 * .e298/.e89 + 16 * .e482)) - 32 * (((((.e406/.e95 - 
        (.e44 * (8 * (.e151 * .e13/.e17) - .e92/.e38)/.e282 + 
            0.5 * (t0 * (.e430 + .e433) * .e4/.e13))) * .e49 + 
        (0.5 * (tij * (.e364 - .e434) * .e4/.e13) - (.e388 + 
            2 * (.e67 * .e254 * .e36/.e41)) * .e36/.e90) * .e83 - 
        .e527/.e13) * .e7 - .e136 * .e375/.e89) * .e34 - .e387) * 
        .e4)) * .e49 * .e25/.e211) * .e7 + .e224 * ((128 * .e504 + 
        8 * ((.e378 * .e34 + .e102 + .e103) * .e34 * .e131 * 
            .e7/.e108)) * .e506/.e13 + (.e194 - 2 * .e543) * 
        .e209 * .e70/.e291) + (0.25/.e117 + 8 * (.e496 * .e7/.e45)) * 
        .e4 * .e27 - .e260 * (2 * ((.e406 * .e13 + .e404)/.e154) - 
        (((.e294 + .e489) * .e4/.e13 + 2 * ((.e388 * .e13 + .e395) * 
            .e36) + 8 * (.e191 * (.e490 - .e294 * .e13) * .e41 * 
            .e13/.e159))/.e159 + .e193 * (32 * ((.e12/(2 * .e507) + 
            .e14) * .e12/.e17) - .e139/.e38)/.e283))) * .e7 - 
        0.5 * (((.e336 + .e284 * .e254/.e41 + .e349) * .e36 + 
            (((.e208 - .e405) * .e7 + .e343) * .e41 - .e44 * 
                .e254 * .e36)/.e38)/.e41)) * .e9, q0 = geno_a * 
        ((((((.e523 - .e369) * .e10 + 2 * (((((.e522 * .e10/.e13 - 
            2 * (((.e508 - (.e61 * .e163/.e24 + .e546)) * .e34 - 
                .e444)/.e24)) * .e34 - .e476) * .e7 + .e178)/.e108 - 
            (.e468 * .e10/.e13 + .e163 * .e15) * .e34 * .e115 * 
                .e15 * .e70 * .e7/.e289) * .e131)) * .e216 - 
            ((.e99/.e14 + .e505/.e12)/.e38 + .e262/.e90) * .e205) * 
            .e203/.e38 - ((.e158 * ((32 * (.e311 * .e10/.e13) - 
            64 * ((((2 * ((.e508 - .e546) * .e13 + .e449) + 2 * 
                (.e323/.e13)) * .e34 - .e472 * .e10/.e13) * .e13 + 
                (.e46 - 2 * (.e373 * .e13/.e89)) * .e129 * .e34)/.e89)) * 
            .e4 - (.e373 * .e298/.e89 + 16 * .e480)) - .e397 * 
            .e10/.e13) * .e203 + (((.e526/2 - .e530) * .e49 - 
            .e547 * .e83) * .e203/.e13 + .e514 * .e83/.e41) * 
            .e173 - 32 * ((((((.e396 * .e7 + .e43 + .e22)/.e95 + 
            0.5 * (t0 * (.e526/.e38 - .e432) * .e4/.e13) - .e44 * 
            (8 * (.e144 * .e13/.e17) - .e92 * .e99/.e14) * .e7/.e282) * 
            .e49 - (.e136 * .e373/.e89 + .e10 * .e527/.e13)) * 
            .e203 + (0.5 * (tij * (.e514/.e41 - .e81 * .e203 * 
            .e10/.e12) * .e4/.e13) - ((.e342 - 2 * (.e67 * .e262/.e41)) * 
            .e7 + .e64 + .e56) * .e203 * .e36/.e90) * .e83) * 
            .e34 - .e136 * .e203 * .e104 * .e10/.e13) * .e4)) * 
            .e49 * .e25/.e211) * .e7 + (.e313 - (.e308 + (((2 - 
            (.e487 + .e251)) * .e4/.e13 - (2 * ((.e342 * .e13 + 
            .e394) * .e36) + 8 * ((.e262 * .e13 + .e488) * .e191 * 
            .e41 * .e13/.e159)))/.e159 + 2 * ((.e396 * .e13 + 
            .e403)/.e154) - .e193 * (32 * ((.e12 * .e99/.e37 + 
            2 * .e10) * .e12/.e17) - .e139 * .e99/.e14)/.e283) * 
            .e260)) * .e203 - .e224 * (.e203 * (32 * (.e236 - 
            4 * .e501) - .e209 * (.e163 - 2 * .e541) * .e70/.e291) + 
            8 * (((1 - (.e203 * .e10 * .e7/.e497 + .e174)) * 
                .e34 - .e203 * (.e104 + .e66) * .e10 * .e7/.e13) * 
                .e34 * .e131 * .e7/.e108))) * .e7 + ((((8 * (.e496/.e45) - 
            1/(4 * .e428)) * .e4 * .e10 - 4 * .e426) * .e7 + 
            .e425 + (0.5 * (.e10/.e117) + 8 * (.e110 * .e126/.e45)) * 
            .e4) * .e27 + .e411 - (.e400 + 0.5 * (((((.e263 - 
            .e405) * .e10 - .e277) * .e41 + .e44 * .e262)/.e38 + 
            .e342 * .e36 - .e284 * .e262/.e41)/.e41))) * .e203), 
        q2 = geno_a * geno_q * ((((((64 * (.e516 * .e4 * .e126/.e45) - 
            .e205/.e87) * .e10 + 2 * ((((((4 * .e410 - .e302) * 
            .e10/.e13 - 2 * (((.e509 - (.e61 * .e218/.e24 + .e533)) * 
            .e34 - 0.5 * .e444)/.e24)) * .e34 - 0.5 * .e476) * 
            .e7 + 0.5 * .e178)/.e108 - ((1 - .e330) * .e24 * 
            .e10/.e13 + .e218 * .e15) * .e34 * .e115 * .e15 * 
            .e70 * .e7/.e289) * .e131)) * .e216 - ((.e100/.e14 + 
            .e505/.e87)/.e38 + .e261/.e90) * .e205)/.e38 - (((.e442/2 - 
            0.5 * .e530) * .e49/.e13 + (.e435 - 0.5 * (.e547/.e13)) * 
            .e83) * .e173 + .e158 * ((32 * (.e410 * .e10/.e13) - 
            64 * ((((2 * ((.e509 - .e533) * .e13 + 0.5 * .e449) + 
                2 * (.e316/.e13)) * .e34 - (.e510 + .e66) * .e129 * 
                .e10/.e13) * .e13 + (.e82 - 2 * (.e357 * .e13/.e89)) * 
                .e129 * .e34)/.e89)) * .e4 - (.e357 * .e298/.e89 + 
            8 * .e480)) - (.e220 * (0.5 * t0 + 0.5/.e15) * .e10/.e13 + 
            32 * (((((.e412 * .e7 + 0.5 * .e44)/.e95 + 0.5 * 
                (t0 * (.e442/.e38 - 0.5 * .e432) * .e4/.e13) - 
                .e44 * (8 * (.e147 * .e13/.e17) - .e92 * .e100/.e14) * 
                  .e7/.e282) * .e49 + (0.5 * (tij * (.e435 - 
                0.5 * (.e81 * .e10/.e12)) * .e4/.e13) - ((.e339 - 
                2 * (.e67 * .e261/.e41)) * .e7 + 0.5 * .e67) * 
                .e36/.e90) * .e83 - (.e136 * .e357/.e89 + .e513 * 
                .e10/.e13)) * .e34 - 0.5 * (.e335 * .e10/.e13)) * 
                .e4))) * .e49 * .e25/.e211) * .e7 + 0.5 * .e354 - 
            ((((1 - (.e240 + 0.5 * .e487)) * .e4/.e13 - (2 * 
                ((.e339 * .e13 + 0.5 * .e394) * .e36) + 8 * ((.e261 * 
                .e13 + 0.5 * .e488) * .e191 * .e41 * .e13/.e159)))/.e159 + 
                2 * ((.e412 * .e13 + 0.5 * .e403)/.e154) - .e193 * 
                (32 * ((.e12 * .e100/.e37 + .e10) * .e12/.e17) - 
                  .e139 * .e100/.e14)/.e283) * .e260 + .e224 * 
                (32 * (0.5 * .e236 - 2 * .e501) + 8 * (((0.5 - 
                  0.5 * (.e11/.e497)) * .e34 - (.e510 + .e68) * 
                  .e10 * .e7/.e13) * .e34 * .e131 * .e7/.e108) - 
                  (.e218 - .e541) * .e209 * .e70/.e291))) * .e7 + 
            (((8 * (.e516 * .e126/.e45) - 1/(8 * .e428)) * .e4 * 
                .e10 - 2 * .e426) * .e7 + 0.25 * .e297 + 0.5 * 
                (.e425 + 8 * .e177)) * .e27 + 0.5 * (.e411 - 
            .e400) - 0.5 * ((.e339 * .e36 + (((.e267 - (.e44/2 + 
            .e76)/.e12) * .e10 - .e276) * .e41 + .e44 * .e261)/.e38 - 
            .e284 * .e261/.e41)/.e41)), f0 = geno_a * ((.e216 * 
            (128 * (.e438/.e45) + 2 * ((.e217 * .e168 * .e115 + 
                .e34 * (4 * .e415 - 2 * (.e61 * .e217 * .e168/.e24))) * 
                .e131 * .e7/.e108))/.e38 - (((.e158 * (.e217 * 
            .e381 * .e168 + 32 * (.e415 * .e4)) - 32 * (.e136 * 
            .e217 * .e168 * .e4)) * .e25 + .e220 * .e217) * .e49/.e211 + 
            .e224 * .e217 * (64 * .e502 + 8 * .e486))) * .e7 + 
            16 * (.e438 * .e27/.e45)) * .e7, f2 = geno_a * geno_f * 
            ((.e216 * (2 * ((.e34 * (4 * .e458 - .e61 * .e168/.e24) + 
                0.5 * (.e168 * .e115)) * .e131 * .e7/.e108) + 
                64 * (.e355/.e45))/.e38 - (((.e158 * (0.5 * (.e381 * 
                .e168) + 32 * (.e458 * .e4)) - 16 * (.e136 * 
                .e168 * .e4)) * .e25 + 0.5 * .e220) * .e49/.e211 + 
                .e224 * (32 * .e502 + 4 * .e486))) * .e7 + 8 * 
                .e440) * .e7, f1 = geno_a * (((.e224 * (16 * 
            (.e34 * .e131 * .e7/.e491) + 64 * (.e25/.e45)) * 
            .e4 + .e216 * (2 * ((.e34 * (4 * (.e447/.e24) - 4 * 
            .e511) - 2 * (.e115 * .e4)) * .e131 * .e7/.e491) - 
            128 * (.e110 * .e25/.e45))/.e38) * .e4 - (((64 * 
            (.e136 * .e4) - .e158 * (2 * .e381 + 32 * .e511)) * 
            .e4 * .e25/.e13 + 32 * .e206) * .e4 - .e207) * .e49/.e211) * 
            .e7 - 16 * .e440) * .e7)
}

deriv_mu_int_b0_bqff1_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    tij, r0, m0, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- .e4^2
    .e6 <- b0 + geno_b * (b2 - b0)/2
    .e7 <- .e6^2
    .e8 <- .e7 * .e3
    .e9 <- .e5 + 2 * .e8
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e3
    .e12 <- .e4 + .e10
    .e13 <- .e12/.e11
    .e14 <- r0 - .e13
    .e17 <- geno_f * (f2 - f0)/2
    .e18 <- f0 + .e17
    .e19 <- 2 * (.e10/.e14)
    .e20 <- .e11 + .e19
    .e21 <- .e18 - f1
    .e22 <- tij - t0
    .e23 <- .e5 * .e21
    .e24 <- 2 * .e10
    .e26 <- exp(2 * (.e10 * .e22))
    .e27 <- .e18 - m0
    .e28 <- .e3/.e10
    .e32 <- 2 * (.e23/.e10) - 2 * (.e27 * .e10)
    .e33 <- 4 * .e28
    .e35 <- 2/.e14 + .e33
    .e36 <- t0 * .e10
    .e37 <- .e20 * .e26
    .e38 <- .e11 - .e37
    .e39 <- .e24^2
    .e40 <- .e35/.e14
    .e41 <- .e20 * .e3
    .e42 <- .e3 * .e14
    .e43 <- .e7/.e10
    .e45 <- exp(-.e36)
    .e48 <- .e41 * .e22/.e10
    .e49 <- exp(-(2 * .e36))
    .e50 <- 0.5 * geno_q
    .e51 <- 4 * .e48
    .e52 <- t0 * .e20
    .e54 <- .e52 * .e3/.e10
    .e55 <- .e40 + .e51
    .e56 <- 4 * .e54
    .e57 <- .e40 - .e56
    .e58 <- 1 - .e50
    .e59 <- t0 * .e32
    .e60 <- .e32/.e12
    .e61 <- .e20 * .e39
    .e62 <- 0.5 * .e43
    .e65 <- .e42/.e24 + 0.5
    .e67 <- .e3/.e38 - 0.5
    .e68 <- exp(-(tij * .e10))
    .e69 <- .e23/.e39
    .e70 <- 2 * .e60
    .e71 <- 0.5 * .e59
    .e76 <- .e70 + 4 * (.e71 + 4 * .e69 + f0 + .e17 - m0)
    .e77 <- .e55 * .e26
    .e78 <- 2 * .e42
    .e80 <- .e76 * .e3/.e10
    .e82 <- (-.e19)^2
    .e83 <- .e38^2
    .e84 <- .e24^3
    .e85 <- .e82 * .e14
    .e87 <- 1/.e14
    .e88 <- 2 * (.e23/.e9)
    .e89 <- 2 * .e27
    .e91 <- .e43 - .e12/.e3
    .e92 <- .e62 - .e13
    .e93 <- .e21^2
    .e95 <- .e20 * .e12^2 * .e49
    .e96 <- t0 * .e65
    .e97 <- tij * .e67
    .e98 <- .e88 + .e89
    .e99 <- .e97/.e10
    .e100 <- 2 * .e99
    .e105 <- .e35/.e85 + 2 * (.e96/.e10)
    .e107 <- 2 * (.e57 * .e10) + 8 * (.e41/.e10)
    .e108 <- .e100 - .e77/.e83
    .e109 <- .e45^2
    .e110 <- .e5 * .e93
    .e114 <- 2 * (.e57 * .e32/.e20) + 4 * .e80
    .e116 <- .e105 * .e45 + .e108 * .e68
    .e117 <- .e84 * .e10
    .e119 <- (-(4 * (.e9/.e14)))^2
    .e120 <- 2 * .e28
    .e123 <- .e91 * .e10/.e78 + .e43
    .e126 <- .e92 * .e10/.e78 + .e62
    .e127 <- .e28 + 1/(2 * .e14)
    .e128 <- .e3^2
    .e129 <- .e87 + .e120
    .e133 <- .e65 * .e45 + .e67 * .e68
    .e134 <- .e20 * .e7
    .e135 <- 2 * (.e123/.e14)
    .e136 <- 2 * (.e126/.e14)
    .e137 <- .e119 * .e14
    .e138 <- (2 * (.e38 * .e10))^2
    .e139 <- .e38 * .e3
    .e140 <- .e107 * .e32
    .e141 <- .e5/.e10
    .e144 <- .e139/.e10
    .e146 <- 32 * .e80 + 64 * (.e140 * .e10/.e61)
    .e147 <- .e58 * .e7
    .e148 <- .e61 * .e49
    .e150 <- .e134 * .e22/.e10
    .e151 <- 2 + .e135
    .e154 <- .e147 * .e3
    .e158 <- .e35/2 + .e87
    .e161 <- .e14/.e24 + 1/.e38
    .e162 <- 0.5 - 0.5 * (.e8/.e9)
    .e164 <- 2 * (.e127/.e14)
    .e165 <- 2 * (.e129/.e14)
    .e167 <- 2 * (.e35 * .e10) + 8 * .e3
    .e169 <- 4 * .e144 - 2 * (.e77 * .e10)
    .e174 <- .e128/.e9
    .e176 <- 2 * (.e114 * .e32 * .e109/.e95) + 256 * (.e110/.e117)
    .e179 <- .e133 * .e146
    .e182 <- 0.5 * geno_f
    .e183 <- 1 - (.e154/.e9 + .e50)
    .e184 <- 32 * (.e116 * .e32 * .e3)
    .e185 <- .e179 + .e184
    .e186 <- (2 * (.e32 * .e45 * .e3/.e12))^2
    .e187 <- .e41/.e9
    .e188 <- .e20 * .e49
    .e189 <- .e12 * .e10
    .e190 <- .e14^2
    .e191 <- 1 + .e136
    .e193 <- t0 * .e39/.e10
    .e195 <- .e167/.e137 + .e169/.e138
    .e196 <- 1 - .e182
    .e197 <- (.e4 * .e21/.e24)^2
    .e198 <- .e24^4
    .e199 <- .e110 * .e3
    .e201 <- .e61 * .e12 * .e49
    .e202 <- .e141 - .e10
    .e204 <- 2 * .e141 - .e24
    .e205 <- (.e150 + 1 + .e136) * .e26
    .e210 <- .e186/.e188 + 32 * (.e197 * .e3)
    .e211 <- .e148 * .e10
    .e212 <- (.e151 + 2 * .e150) * .e26
    .e213 <- .e23/.e198
    .e215 <- 1 + 32 * (.e199/.e84)
    .e216 <- .e164 + 2 * .e48
    .e217 <- .e165 + .e51
    .e218 <- 4 * (.e162/.e10)
    .e219 <- 4 * (.e183/.e10)
    .e221 <- t0 * .e98/.e10
    .e222 <- .e55 * .e7
    .e224 <- 1 - .e205
    .e225 <- 1 - 0.5 * geno_b
    .e226 <- 2 - .e212
    .e227 <- 2 * .e9
    .e228 <- 4 * .e174
    .e229 <- 8 * .e174
    .e234 <- .e185 * .e4 * .e45 * .e21/.e201 - .e161 * .e176 * 
        .e3/.e24
    .e235 <- .e77 + .e38 * .e35/.e24
    .e237 <- .e162 * .e20 + .e191 * .e3
    .e238 <- .e20 * (8 - 2 * .e193)
    .e239 <- .e42/.e9
    .e240 <- .e3 * .e190
    .e241 <- .e164 - .e187
    .e242 <- .e165 - 2 * .e187
    .e243 <- (.e158 * .e91 * .e58/.e42 + .e219)/.e14
    .e244 <- (.e158 * .e92/.e42 + .e218)/.e14
    .e245 <- (.e158/.e14 - .e228)/.e14
    .e246 <- ((.e33 + 4/.e14)/.e14 - .e229)/.e14
    .e247 <- .e216 * .e26
    .e248 <- .e217 * .e26
    .e249 <- 0.5 * .e98
    .e250 <- 2 * .e98
    .e251 <- .e85^2
    .e252 <- .e137^2
    .e254 <- .e234 * .e3 - (.e210 * .e195 + .e215 * .e22/.e10)
    .e256 <- .e211^2
    .e257 <- .e148^2
    .e258 <- .e95^2
    .e259 <- .e188^2
    .e260 <- .e117^2
    .e261 <- .e91 * .e58
    .e263 <- (.e135 + 4 - .e134/.e9) * .e3 + .e19
    .e264 <- .e38 * .e7
    .e265 <- .e5/.e39
    .e268 <- 2 * ((.e60 + .e88 + .e89)/.e189)
    .e269 <- .e98 + 2 * .e59
    .e270 <- 4 * (0.5 * .e221 + 32 * .e213)
    .e272 <- t0 * .e105 * .e45
    .e273 <- t0 * .e12
    .e275 <- tij * .e108 * .e68
    .e276 <- .e116 * .e98
    .e279 <- (.e222 + 4 * .e237) * .e22/.e10 + .e244
    .e280 <- .e57 * .e58
    .e281 <- .e57 * .e98
    .e285 <- .e92/.e240 + .e218
    .e286 <- .e58 * .e226
    .e288 <- .e191 * .e39 + .e20 * (4 - .e193) * .e7
    .e293 <- (16 - 4 * .e193) * .e20 * .e3 + 2 * (.e129 * .e39/.e14)
    .e294 <- .e247/.e83
    .e295 <- .e248/.e83
    .e296 <- .e76/.e9
    .e298 <- .e238 * .e7 + .e39 * .e151
    .e300 <- .e238 * .e3 + 2 * (.e127 * .e39/.e14)
    .e301 <- .e39 * .e5
    .e302 <- .e35 * .e7
    .e304 <- .e239 + 1/.e24
    .e305 <- 0.5 - .e8/.e227
    .e307 <- 1/.e12 + t0
    .e308 <- 1/.e190
    .e310 <- 1/.e10 + 2 * .e239
    .e312 <- 2 * .e222 + 4 * .e263
    .e314 <- 2 * .e55 + 4 * .e241
    .e315 <- 2/.e190
    .e317 <- 4 * .e55 + 4 * .e242
    .e318 <- .e254 * .e3
    .e320 <- .e276 * .e3/.e10
    .e322 <- .e243 + .e58 * .e312 * .e22/.e10
    .e323 <- .e245 + .e314 * .e3 * .e22
    .e324 <- .e288 * .e10
    .e325 <- .e293 * .e10
    .e326 <- .e298 * .e10
    .e327 <- .e300 * .e10
    .e329 <- .e281 * .e3/.e10
    .e330 <- .e57/.e10
    .e331 <- .e55/.e10
    .e332 <- .e246 + .e317 * .e3 * .e22
    .e335 <- .e261/.e240 + .e219
    .e337 <- .e304/.e24
    .e338 <- .e65/.e9
    .e339 <- .e67/.e9
    .e340 <- (0.5 - .e224 * .e3/.e38)/.e38
    .e342 <- .e305 * .e14 - .e92/2
    .e347 <- (1 - (.e286 * .e3/.e38 + .e50))/.e38
    .e351 <- .e183 * .e14 - .e261/2
    .e354 <- .e58 * .e35
    .e355 <- .e215/.e9
    .e356 <- .e310/.e24
    .e357 <- (2 - 2 * .e273) * .e20
    .e359 <- (2 * (.e202/.e12) + 4 * (0.5 + 0.5 * (t0 * .e202) + 
        2 * .e265)) * .e3/.e10
    .e361 <- (2 * ((0.5 * .e60 + .e249)/.e189) + 4 * (0.25 * 
        .e221 + 16 * .e213)) * .e7 * .e3
    .e363 <- (2 * (.e196 * .e204/.e12) + 4 * ((0.5 * (t0 * .e204) + 
        4 * .e265) * .e196 + 1 - .e182)) * .e3/.e10
    .e364 <- .e176/.e9
    .e367 <- .e296 + .e268 + .e270
    .e368 <- .e264/.e9
    .e369 <- .e264/.e10
    .e370 <- .e139/.e9
    .e372 <- .e61 * .e7/.e10
    .e374 <- .e61 * .e3/.e10
    .e375 <- .e20 * .e14
    .e377 <- .e301 * .e93/.e260
    .e380 <- .e35 * .e3/.e9
    .e381 <- .e35/.e10
    .e382 <- (4 * (4/.e39 + t0/.e10) + 4/.e189) * .e3
    .e386 <- .e5 * .e7 * .e93 * .e3/.e117
    .e387 <- .e23 * .e22
    .e388 <- .e199/(.e198 * .e10)
    .e389 <- .e110/.e84
    .e390 <- .e7 * .e14
    .e391 <- .e3/.e9
    .e392 <- .e14 * .e10
    .e393 <- 0.5 * (.e235/.e38)
    .e394 <- .e249 + .e59
    .e395 <- .e268 + .e270
    .e396 <- 2 * ((.e70 + .e250)/.e189)
    .e397 <- .e250 + 4 * .e59
    .e399 <- 2 * t0 + 2/.e12
    .e400 <- .e228 - .e308
    .e401 <- 4 * (64 * .e213 + .e221)
    .e402 <- 4 * (t0 * .e237/.e10)
    .e403 <- 4 * (t0 * (.e183 * .e20 + .e58 * .e151 * .e3)/.e10)
    .e404 <- .e229 - .e315
    .e405 <- .e272 + .e275
    .e406 <- t0 * .e241
    .e407 <- t0 * .e242
    .e409 <- .e52 * .e7/.e10
    c(b0 = ((((((((.e295 - .e100) * .e68 - (.e310/2 + 2 * .e96) * 
        .e45/.e10) * .e146 + 32 * (((2 * (tij * (.e295 - 2 * 
        .e339) * .e3/.e10) - (.e332/.e10 + 2 * (.e55 * .e217 * 
        .e26/.e38)) * .e26/.e83) * .e68 - (.e116 * .e293/.e61 + 
        ((.e404/.e85 + 2 * (t0 * (.e356 + 2 * .e338) * .e3))/.e10 + 
            .e35 * (8 * (.e129 * .e10/.e14) - .e82/.e10)/.e251) * 
            .e45 + (2 * .e272 + 2 * .e275) * .e3/.e10)) * .e32 - 
        2 * .e320) - .e185 * .e399/.e10) * .e3/.e148 + .e133 * 
        (64 * ((((2 * (.e246 + (2 * .e330 - 4 * .e407) * .e3) + 
            8 * (.e242 * .e3/.e10)) * .e32 - .e107 * .e397 * 
            .e3/.e10) * .e10 + .e140 * (.e120 - 2 * (.e325/.e61))) * 
            .e49/.e257) - 32 * (((.e325 + 2 * .e374) * .e76 * 
            .e49/.e256 + (.e396 + .e401) * .e3/.e211) * .e3))) * 
        .e4 * .e45 * .e21/.e12 + ((2 * .e355 + 384 * .e388) * 
        .e22 - ((.e295 - .e356) * .e176 + .e161 * (2 * ((((2 * 
        ((((.e246 - 4 * (.e407 * .e3))/.e10 - 2 * (.e57 * .e129/.e375)) * 
            .e32 - 2 * .e329)/.e20) - 4 * ((.e396 + 2 * .e296 + 
        .e401) * .e128/.e10)) * .e32 - .e114 * .e397 * .e3/.e10)/.e95 - 
        (.e20 * (4 - 4 * .e273) * .e3/.e10 + 2 * (.e129 * .e12/.e14)) * 
            .e114 * .e32 * .e12 * .e49/.e258) * .e109) - (2 * 
        .e364 + 4096 * .e377) * .e3)) * .e3/2)/.e10) * .e3 + 
        ((.e165 - .e56) * .e186 * .e49/.e259 + (256 * .e389 + 
            8 * ((.e32 * .e399 + .e250) * .e32 * .e109 * .e3/.e95)) * 
            .e128/.e10) * .e195 - .e210 * (2 * (((2 * .e381 - 
        8 * .e391) * .e3 + .e315)/.e137) - ((2 * (((.e317 * .e22 + 
        2 * .e331) * .e3 + .e246) * .e26) + 4 * ((.e248 + 2 * 
        .e370) * .e3/.e10) + 8 * ((2 * .e144 - .e248 * .e10) * 
        .e38 * .e169 * .e10/.e138))/.e138 + .e167 * (32 * ((.e9/.e392 + 
        4 * .e3) * .e9/.e14) - .e119/.e10)/.e252))) * .e3 - 0.5 * 
        (((.e332 * .e26 - ((.e404/.e10 + 2 * .e380) * .e38 + 
            .e217 * .e35 * .e26)/2)/.e10 + .e235 * .e217 * .e26/.e38)/.e38)) * 
        .e7 + .e318 - .e393) * .e225^2, b2 = geno_b * ((((((((.e294 - 
        .e99) * .e68 - (.e304/2 + .e96) * .e45/.e10) * .e146 + 
        32 * (((2 * (tij * (.e294 - .e339) * .e3/.e10) - (.e323/.e10 + 
            2 * (.e55 * .e216 * .e26/.e38)) * .e26/.e83) * .e68 - 
            (.e116 * .e300/.e61 + ((.e400/.e85 + 2 * (t0 * (.e337 + 
                .e338) * .e3))/.e10 + .e35 * (8 * (.e127 * .e10/.e14) - 
                .e82/.e24)/.e251) * .e45 + .e3 * .e405/.e10)) * 
            .e32 - .e320) - .e185 * .e307/.e10) * .e3/.e148 + 
        .e133 * (64 * ((((2 * ((.e330 - 4 * .e406) * .e3 + .e245) + 
            8 * (.e241 * .e3/.e10)) * .e32 - .e107 * .e269 * 
            .e3/.e10) * .e10 + (.e28 - 2 * (.e327/.e61)) * .e107 * 
            .e32) * .e49/.e257) - 32 * (((.e327 + .e374) * .e76 * 
            .e49/.e256 + .e395 * .e3/.e211) * .e3))) * .e4 * 
        .e45 * .e21/.e12 + ((.e355 + 192 * .e388) * .e22 - ((.e294 - 
        .e337) * .e176 + .e161 * (2 * ((((2 * ((((.e245 - 4 * 
        (.e406 * .e3))/.e10 - 2 * (.e57 * .e127/.e375)) * .e32 - 
        .e329)/.e20) - 4 * (.e367 * .e128/.e10)) * .e32 - .e114 * 
        .e269 * .e3/.e10)/.e95 - (.e357 * .e3/.e10 + 2 * (.e127 * 
        .e12/.e14)) * .e114 * .e32 * .e12 * .e49/.e258) * .e109) - 
        (.e364 + 2048 * .e377) * .e3)) * .e3/2)/.e10) * .e3 + 
        ((128 * .e389 + 8 * ((.e307 * .e32 + .e88 + .e89) * .e32 * 
            .e109 * .e3/.e95)) * .e128/.e10 + (.e164 - 2 * .e54) * 
            .e186 * .e49/.e259) * .e195 - .e210 * (2 * (((.e381 - 
        4 * .e391) * .e3 + .e308)/.e137) - ((2 * (((.e331 + .e314 * 
        .e22) * .e3 + .e245) * .e26) + 4 * ((.e247 + .e370) * 
        .e3/.e10) + 8 * ((.e144 - .e247 * .e10) * .e38 * .e169 * 
        .e10/.e138))/.e138 + .e167 * (32 * ((.e9/(2 * .e392) + 
        .e11) * .e9/.e14) - .e119/.e24)/.e252))) * .e3 - 0.5 * 
        (((.e323 * .e26 - ((.e380 + .e400/.e10) * .e38 + .e216 * 
            .e35 * .e26)/2)/.e10 + .e235 * .e216 * .e26/.e38)/.e38)) * 
        .e7 + 0.5 * (.e318 - .e393)) * .e225, q0 = (((((((.e351/2 - 
        .e96 * .e58 * .e7) * .e45/.e10 + (.e347 - .e97 * .e58 * 
        .e7/.e10) * .e68) * .e146 + 32 * ((((.e335/.e85 + 2 * 
        (t0 * (.e351/.e24 - .e65 * .e58 * .e7/.e9)/.e10) - .e354 * 
        (8 * (.e123 * .e10/.e14) - .e82 * .e91/.e11)/.e251) * 
        .e45 + (2 * (tij * (.e347 - .e67 * .e58 * .e7/.e9)/.e10) - 
        (.e243 + (.e312 * .e22/.e10 - 2 * (.e55 * .e226/.e38)) * 
            .e58) * .e26/.e83) * .e68 - .e147 * .e405/.e10) * 
        .e32 - .e116 * .e58 * .e98 * .e7/.e10) * .e3 + .e116 * 
        (1 - (.e298 * .e58 * .e3/.e61 + .e50)) * .e32) - .e185 * 
        .e58 * .e307 * .e7/.e10)/.e148 + .e133 * (32 * (((.e76 - 
        .e395 * .e7 * .e3)/.e211 - (.e326 + .e372) * .e76 * .e49 * 
        .e3/.e256) * .e58) + 64 * ((((2 * ((.e243 - .e403) * 
        .e10 + .e280 * .e7/.e10) + 8 * (.e263 * .e58/.e10)) * 
        .e32 - .e58 * .e107 * .e269 * .e7/.e10) * .e10 + (.e43 - 
        2 * (.e326/.e61)) * .e58 * .e107 * .e32) * .e49/.e257))) * 
        .e4 * .e45 * .e21/.e12 - ((.e161 * (2 * ((((2 * (((.e243 - 
        (.e280 * .e151/.e20 + .e403)) * .e32 - .e280 * .e98 * 
        .e7/.e10)/.e20) + 4 * (.e58 * (.e76 - .e367 * .e7 * .e3)/.e10)) * 
        .e32 - .e58 * .e114 * .e269 * .e7/.e10)/.e95 - (.e357 * 
        .e7/.e10 + .e151 * .e12) * .e58 * .e114 * .e32 * .e12 * 
        .e49/.e258) * .e109) - 2048 * (.e58 * .e39 * .e5 * .e7 * 
        .e93/.e260)) - ((.e91/.e11 + .e390/.e9)/.e24 + .e226/.e83) * 
        .e58 * .e176) * .e3 + .e161 * .e183 * .e176)/.e24) * 
        .e3 + .e234 * .e58 - (((.e58 * (4 * (((4 - (.e368 + .e212)) * 
        .e3 - .e37)/.e10) - 8 * ((.e226 * .e10 + .e369) * .e38 * 
        .e169 * .e10/.e138)) - 2 * ((.e322 * .e10 + .e55 * .e58 * 
        .e7/.e10) * .e26))/.e138 + (2 * (.e335 * .e10 + .e354 * 
        .e7/.e10) + 8 * .e58)/.e137 - .e58 * .e167 * (32 * ((.e9 * 
        .e91/.e78 + 2 * .e7) * .e9/.e14) - .e119 * .e91/.e11)/.e252) * 
        .e210 + (.e58 * (32 * (.e197 - 4 * .e386) - .e186 * (.e151 - 
        2 * .e409) * .e49/.e259) + 8 * (((1 - (.e154/.e189 + 
        .e50)) * .e32 - .e58 * (.e98 + .e59) * .e7 * .e3/.e10) * 
        .e32 * .e109 * .e3/.e95)) * .e195 + (32 * ((1 - (.e50 + 
        6 * (.e154/.e10))) * .e5 * .e93/.e84) - .e58 * .e215 * 
        .e7/.e9) * .e22/.e10)) * .e3 + .e254 * .e58 - 0.5 * (((((.e91/.e240 - 
        .e302/.e9) * .e58 + .e219) * .e38 + .e286 * .e35)/.e24 + 
        .e322 * .e26 - .e235 * .e58 * .e226/.e38)/.e38)) * .e225 * 
        .e6, q2 = geno_q * (((((((.e342/2 - 0.5 * (.e96 * .e7)) * 
        .e45/.e10 + (.e340 - 0.5 * (.e97 * .e7/.e10)) * .e68) * 
        .e146 + 32 * ((((.e285/.e85 + 2 * (t0 * (.e342/.e24 - 
        0.5 * (.e65 * .e7/.e9))/.e10) - .e35 * (8 * (.e126 * 
        .e10/.e14) - .e82 * .e92/.e11)/.e251) * .e45 + (2 * (tij * 
        (.e340 - 0.5 * (.e67 * .e7/.e9))/.e10) - (.e279 - 2 * 
        (.e55 * .e224/.e38)) * .e26/.e83) * .e68 - (0.5 * .e272 + 
        0.5 * .e275) * .e7/.e10) * .e32 - 0.5 * (.e276 * .e7/.e10)) * 
        .e3 + .e116 * (0.5 - .e288 * .e3/.e61) * .e32) - .e185 * 
        (0.5 * t0 + 0.5/.e12) * .e7/.e10)/.e148 + .e133 * (32 * 
        ((0.5 * .e76 - .e361)/.e211 - (.e324 + 0.5 * .e372) * 
            .e76 * .e49 * .e3/.e256) + 64 * ((((2 * ((.e244 - 
        .e402) * .e10 + 0.5 * (.e57 * .e7/.e10)) + 8 * (.e237/.e10)) * 
        .e32 - .e394 * .e107 * .e7/.e10) * .e10 + (.e62 - 2 * 
        (.e324/.e61)) * .e107 * .e32) * .e49/.e257))) * .e4 * 
        .e45 * .e21/.e12 - ((.e161 * (2 * ((((2 * (((.e244 - 
        (.e57 * .e191/.e20 + .e402)) * .e32 - 0.5 * (.e281 * 
        .e7/.e10))/.e20) + 4 * ((.e162 * .e76 - .e361)/.e10)) * 
        .e32 - .e394 * .e114 * .e7/.e10)/.e95 - ((1 - .e273) * 
        .e20 * .e7/.e10 + .e191 * .e12) * .e114 * .e32 * .e12 * 
        .e49/.e258) * .e109) - 1024 * (.e301 * .e7 * .e93/.e260)) - 
        ((.e92/.e11 + .e390/.e227)/.e24 + .e224/.e83) * .e176) * 
        .e3 + .e161 * .e305 * .e176)/.e24) * .e3 + 0.5 * .e234 - 
        (((2 * (.e285 * .e10 + 0.5 * (.e302/.e10)) + 4)/.e137 + 
            (4 * (((1 - (.e205 + 0.5 * .e368)) * .e3 + 0.5 * 
                .e38)/.e10) - (2 * ((.e279 * .e10 + 0.5 * (.e222/.e10)) * 
                .e26) + 8 * ((.e224 * .e10 + 0.5 * .e369) * .e38 * 
                .e169 * .e10/.e138)))/.e138 - .e167 * (32 * ((.e9 * 
            .e92/.e78 + .e7) * .e9/.e14) - .e119 * .e92/.e11)/.e252) * 
            .e210 + .e195 * (32 * (0.5 * .e197 - 2 * .e386) + 
            8 * (((0.5 - 0.5 * (.e8/.e189)) * .e32 - (.e249 + 
                .e71) * .e7 * .e3/.e10) * .e32 * .e109 * .e3/.e95) - 
            (.e191 - .e409) * .e186 * .e49/.e259) + (32 * ((0.5 - 
            3 * .e8/.e227) * .e5 * .e93/.e84) - 0.5 * (.e215 * 
            .e7/.e9)) * .e22/.e10)) * .e3 + 0.5 * .e254 - 0.5 * 
        ((.e279 * .e26 + ((.e285 - .e302/.e227) * .e38 + .e224 * 
            .e35)/.e24 - .e235 * .e224/.e38)/.e38)) * .e225 * 
        .e6, f0 = (((.e133 * (32 * .e363 + 64 * (.e196 * .e107 * 
        .e204 * .e10/.e61)) + 32 * (.e116 * .e196 * .e204 * .e3)) * 
        .e21 + .e185 * .e196) * .e4 * .e45/.e201 - ((.e195 * 
        (64 * .e69 + 8 * (.e32 * .e204 * .e109 * .e3/.e95)) + 
        64 * (.e387/.e117)) * .e196 + .e161 * (2 * ((.e196 * 
        .e114 * .e204 + (2 * (.e57 * .e196 * .e204/.e20) + 4 * 
        .e363) * .e32) * .e109/.e95) + 512 * (.e196 * .e5 * .e21/.e117)) * 
        .e3/.e24)) * .e225 * .e6 * .e128, f2 = geno_f * (((.e133 * 
        (32 * .e359 + 64 * (.e202 * .e107 * .e10/.e61)) + 32 * 
        (.e116 * .e202 * .e3)) * .e21 + 0.5 * .e185) * .e4 * 
        .e45/.e201 - ((.e161 * (2 * ((.e202 * .e114 + (2 * (.e57 * 
        .e202/.e20) + 4 * .e359) * .e32) * .e109/.e95) + 256 * 
        (.e23/.e117)) * .e3/2 + 32 * (.e387/.e84))/.e10 + .e195 * 
        (32 * .e69 + 8 * (.e202 * .e32 * .e109 * .e3/.e95)))) * 
        .e225 * .e6 * .e128, f1 = ((.e195 * (16 * (.e32 * .e109 * 
        .e3/(.e95 * .e10)) + 64 * (.e21/.e39)) + .e161 * (2 * 
        ((.e32 * (4 * (.e57/.e20) + 4 * .e382) + 2 * .e114) * 
            .e109/.e95) + 512 * (.e21/.e84)) * .e3/.e227 + 64 * 
        (.e21 * .e22/.e117)) * .e4 - ((.e133 * (128 * (.e107/.e61) + 
        32 * (.e382/.e10)) + 64 * (.e116 * .e3/.e10)) * .e5 * 
        .e21 + .e179 + .e184) * .e45/.e201) * .e225 * .e4 * .e6 * 
        .e128)
}

deriv_mu_int_b2_bqff1_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    tij, r0, m0, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- .e4^2
    .e6 <- b0 + geno_b * (b2 - b0)/2
    .e7 <- .e6^2
    .e8 <- .e7 * .e3
    .e9 <- .e5 + 2 * .e8
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e3
    .e12 <- .e4 + .e10
    .e13 <- .e12/.e11
    .e14 <- r0 - .e13
    .e17 <- geno_f * (f2 - f0)/2
    .e18 <- f0 + .e17
    .e19 <- 2 * (.e10/.e14)
    .e20 <- .e11 + .e19
    .e21 <- .e18 - f1
    .e22 <- tij - t0
    .e23 <- .e5 * .e21
    .e24 <- 2 * .e10
    .e26 <- exp(2 * (.e10 * .e22))
    .e27 <- .e18 - m0
    .e30 <- .e3/.e10
    .e32 <- 2 * (.e23/.e10) - 2 * (.e27 * .e10)
    .e33 <- t0 * .e10
    .e34 <- .e20 * .e26
    .e35 <- .e11 - .e34
    .e36 <- .e24^2
    .e37 <- .e7/.e10
    .e39 <- 1/.e14 + 2 * .e30
    .e40 <- .e3 * .e14
    .e41 <- .e20 * .e3
    .e43 <- exp(-.e33)
    .e44 <- 0.5 * geno_q
    .e46 <- exp(-(2 * .e33))
    .e47 <- 1 - .e44
    .e50 <- 2 * (.e41 * .e22/.e10)
    .e51 <- 4 * .e30
    .e52 <- t0 * .e20
    .e53 <- 0.5 * .e37
    .e54 <- 2 * (.e52 * .e3/.e10)
    .e57 <- 0.5 * ((2/.e14 + .e51)/.e14) - .e54
    .e59 <- .e39/.e14 + .e50
    .e60 <- t0 * .e32
    .e61 <- .e32/.e12
    .e62 <- 2 * .e40
    .e64 <- .e20 * .e36
    .e66 <- .e40/.e24 + 0.5
    .e68 <- .e3/.e35 - 0.5
    .e69 <- exp(-(tij * .e10))
    .e70 <- .e23/.e36
    .e71 <- 0.5 * .e60
    .e72 <- .e61 + 2 * (.e71 + 4 * .e70 + f0 + .e17 - m0)
    .e73 <- .e59 * .e26
    .e75 <- .e37 - .e12/.e3
    .e76 <- .e53 - .e13
    .e78 <- .e72 * .e3/.e10
    .e80 <- (-.e19)^2
    .e81 <- 2 * .e14
    .e82 <- .e35^2
    .e83 <- .e24^3
    .e84 <- 1/.e81
    .e85 <- .e80 * .e14
    .e87 <- 2 * (.e23/.e9)
    .e88 <- 2 * .e27
    .e90 <- .e20 * .e12^2 * .e46
    .e91 <- .e21^2
    .e92 <- t0 * .e66
    .e93 <- tij * .e68
    .e94 <- .e93/.e10
    .e98 <- .e39/.e85 + .e92/.e10
    .e101 <- 2 * (.e57 * .e10) + 4 * (.e41/.e10)
    .e102 <- .e43^2
    .e103 <- .e94 - .e73/.e82
    .e104 <- .e87 + .e88
    .e107 <- .e75 * .e10/.e62 + .e37
    .e110 <- .e76 * .e10/.e62 + .e53
    .e111 <- .e30 + .e84
    .e115 <- .e98 * .e43 + .e69 * .e103
    .e118 <- .e20 * .e7
    .e119 <- .e83 * .e10
    .e120 <- 2 * (.e107/.e14)
    .e121 <- 2 * (.e110/.e14)
    .e123 <- 2 * (.e57 * .e32/.e20) + 4 * .e78
    .e124 <- .e5 * .e91
    .e126 <- (-(4 * (.e9/.e14)))^2
    .e127 <- .e5/.e10
    .e129 <- .e66 * .e43 + .e68 * .e69
    .e130 <- .e47 * .e7
    .e132 <- .e118 * .e22/.e10
    .e133 <- 2 + .e120
    .e134 <- .e126 * .e14
    .e136 <- .e130 * .e3
    .e137 <- (2 * (.e35 * .e10))^2
    .e139 <- 0.5 - 0.5 * (.e8/.e9)
    .e140 <- 2 * (.e111/.e14)
    .e144 <- .e35 * .e3
    .e146 <- 32 * .e78 + 64 * (.e101 * .e32 * .e10/.e64)
    .e149 <- .e144/.e10
    .e151 <- .e14/.e24 + 1/.e35
    .e152 <- 0.5 * geno_f
    .e153 <- 1 - (.e136/.e9 + .e44)
    .e156 <- .e64 * .e46
    .e157 <- .e3^2
    .e158 <- 1 + .e121
    .e161 <- 2 * (.e39 * .e10) + 4 * .e3
    .e163 <- 2 * .e149 - 2 * (.e73 * .e10)
    .e166 <- .e129 * .e146
    .e171 <- 1 - .e152
    .e173 <- 128 * (.e124/.e119) + 2 * (.e123 * .e32 * .e102/.e90)
    .e174 <- 32 * (.e115 * .e32 * .e3)
    .e175 <- .e166 + .e174
    .e176 <- .e12 * .e10
    .e178 <- .e39/2 + .e84
    .e180 <- .e161/.e134 + .e163/.e137
    .e181 <- (2 * (.e32 * .e43 * .e3/.e12))^2
    .e182 <- .e20 * .e46
    .e183 <- .e127 - .e10
    .e184 <- .e14^2
    .e186 <- 2 * .e127 - .e24
    .e188 <- t0 * .e36/.e10
    .e189 <- (.e132 + 1 + .e121) * .e26
    .e190 <- (.e4 * .e21/.e24)^2
    .e191 <- .e139/.e10
    .e192 <- .e153/.e10
    .e194 <- .e64 * .e12 * .e46
    .e195 <- (.e133 + 2 * .e132) * .e26
    .e196 <- .e140 + .e50
    .e197 <- .e59 * .e7
    .e198 <- .e24^4
    .e199 <- .e124 * .e3
    .e200 <- .e157/.e9
    .e201 <- 1 - .e189
    .e202 <- 2 - .e195
    .e203 <- 2 * .e9
    .e205 <- .e75 * .e47
    .e207 <- .e139 * .e20 + .e158 * .e3
    .e209 <- .e181/.e182 + 32 * (.e190 * .e3)
    .e210 <- .e156 * .e10
    .e211 <- .e20 * (8 - 2 * .e188)
    .e213 <- .e23/.e198
    .e216 <- 0.5 + 16 * (.e199/.e83)
    .e217 <- .e140 - .e41/.e9
    .e218 <- 2 * .e191
    .e219 <- 2 * .e192
    .e220 <- 2 * (.e3 * .e184)
    .e221 <- .e51 + 4/.e14
    .e223 <- t0 * .e104/.e10
    .e228 <- .e175 * .e4 * .e43 * .e21/.e194 - .e151 * .e173 * 
        .e3/.e24
    .e229 <- .e196 * .e26
    .e230 <- 0.5 * .e104
    .e231 <- 2 * .e200
    .e232 <- .e73 + .e39 * .e35/.e24
    .e233 <- (.e61 + .e87 + .e88)/.e176
    .e235 <- (.e120 + 4 - .e118/.e9) * .e3 + .e19
    .e236 <- .e35 * .e7
    .e237 <- .e5/.e36
    .e240 <- .e104 + 2 * .e60
    .e241 <- 2 * (0.5 * .e223 + 32 * .e213)
    .e242 <- .e85^2
    .e243 <- .e134^2
    .e245 <- .e228 * .e3 - (.e180 * .e209 + .e216 * .e22/.e10)
    .e248 <- (.e197 + 2 * .e207) * .e22/.e10 + (.e178 * .e76/.e40 + 
        .e218)/.e14
    .e249 <- (.e178 * .e75 * .e47/.e40 + .e219)/.e14
    .e250 <- (.e178/.e14 - .e231)/.e14
    .e251 <- .e210^2
    .e252 <- .e156^2
    .e253 <- .e90^2
    .e254 <- .e182^2
    .e255 <- .e119^2
    .e258 <- .e57 * .e47
    .e260 <- .e76/.e220 + .e218
    .e261 <- .e47 * .e39
    .e263 <- .e158 * .e36 + .e20 * (4 - .e188) * .e7
    .e264 <- .e39 * .e7
    .e265 <- .e229/.e82
    .e267 <- .e211 * .e7 + .e36 * .e133
    .e269 <- .e211 * .e3 + 2 * (.e111 * .e36/.e14)
    .e272 <- .e40/.e9 + 1/.e24
    .e273 <- 0.5 - .e8/.e203
    .e274 <- 1/(2 * .e184)
    .e276 <- 1/.e12 + t0
    .e278 <- 2 * .e197 + 2 * .e235
    .e280 <- 2 * .e59 + 2 * .e217
    .e282 <- t0 * .e98 * .e43
    .e283 <- t0 * .e12
    .e285 <- tij * .e69 * .e103
    .e286 <- .e115 * .e104
    .e287 <- .e249 + .e47 * .e278 * .e22/.e10
    .e288 <- .e250 + .e280 * .e3 * .e22
    .e290 <- (.e183/.e12 + 2 * (0.5 + 0.5 * (t0 * .e183) + 2 * 
        .e237)) * .e3/.e10
    .e293 <- ((0.5 * .e61 + .e230)/.e176 + 2 * (0.25 * .e223 + 
        16 * .e213)) * .e7 * .e3
    .e296 <- (.e171 * .e186/.e12 + 2 * ((0.5 * (t0 * .e186) + 
        4 * .e237) * .e171 + 1 - .e152)) * .e3/.e10
    .e297 <- .e263 * .e10
    .e299 <- .e233 + .e72/.e9 + .e241
    .e300 <- .e233 + .e241
    .e301 <- .e267 * .e10
    .e302 <- .e269 * .e10
    .e305 <- .e205/.e220 + .e219
    .e307 <- .e272/.e24
    .e308 <- (0.5 - .e201 * .e3/.e35)/.e35
    .e310 <- .e273 * .e14 - .e76/2
    .e311 <- .e57 * .e104
    .e312 <- (1 - (.e47 * .e202 * .e3/.e35 + .e44))/.e35
    .e316 <- .e153 * .e14 - .e205/2
    .e317 <- (2 - 2 * .e283) * .e20
    .e318 <- (2 * (4/.e36 + t0/.e10) + 2/.e176) * .e3
    .e319 <- .e236/.e9
    .e320 <- .e236/.e10
    .e322 <- .e64 * .e7/.e10
    .e323 <- .e36 * .e5
    .e327 <- .e5 * .e7 * .e91 * .e3/.e119
    .e328 <- .e23 * .e22
    .e329 <- .e7 * .e14
    .e330 <- 0.5 * ((.e205 * .e221/.e62 + 4 * .e192)/.e14)
    .e331 <- 0.5 * ((.e76 * .e221/.e62 + 4 * .e191)/.e14)
    .e332 <- 0.5 * ((.e221/.e81 - 4 * .e200)/.e14)
    .e333 <- .e230 + .e60
    .e334 <- .e274 - .e231
    .e335 <- 2 * (t0 * .e207/.e10)
    .e336 <- 2 * (t0 * (.e153 * .e20 + .e47 * .e133 * .e3)/.e10)
    .e337 <- .e282 + .e285
    .e338 <- t0 * .e217
    .e340 <- .e52 * .e7/.e10
    c(b2 = geno_b^2 * ((((((((.e265 - .e94) * .e69 - (.e272/2 + 
        .e92) * .e43/.e10) * .e146 + 32 * ((((.e334/.e85 - t0 * 
        (.e307 + .e66/.e9) * .e3)/.e10 - .e39 * (8 * (.e111 * 
        .e10/.e14) - .e80/.e24)/.e242) * .e43 + .e69 * (tij * 
        (.e265 - .e68/.e9) * .e3/.e10 - (.e288/.e10 + 2 * (.e59 * 
        .e196 * .e26/.e35)) * .e26/.e82) - (.e115 * .e269/.e64 + 
        .e3 * .e337/.e10)) * .e32 - .e286 * .e3/.e10) - .e175 * 
        .e276/.e10) * .e3/.e156 + .e129 * (64 * ((((2 * ((.e57/.e10 - 
        2 * .e338) * .e3 + .e332) + 4 * (.e217 * .e3/.e10)) * 
        .e32 - .e101 * .e240 * .e3/.e10) * .e10 + (.e30 - 2 * 
        (.e302/.e64)) * .e101 * .e32) * .e46/.e252) - 32 * ((.e300 * 
        .e3/.e210 + (.e302 + .e64 * .e3/.e10) * .e72 * .e46/.e251) * 
        .e3))) * .e4 * .e43 * .e21/.e12 + ((.e216/.e9 + 96 * 
        (.e199/(.e198 * .e10))) * .e22 - ((.e265 - .e307) * .e173 + 
        .e151 * (2 * ((((2 * ((((.e332 - 2 * (.e338 * .e3))/.e10 - 
            2 * (.e111 * .e57/(.e20 * .e14))) * .e32 - .e311 * 
            .e3/.e10)/.e20) - 4 * (.e299 * .e157/.e10)) * .e32 - 
            .e123 * .e240 * .e3/.e10)/.e90 - (.e317 * .e3/.e10 + 
            2 * (.e111 * .e12/.e14)) * .e123 * .e32 * .e12 * 
            .e46/.e253) * .e102) - (.e173/.e9 + 1024 * (.e323 * 
            .e91/.e255)) * .e3)) * .e3/2)/.e10) * .e3 + ((128 * 
        (.e124/.e83) + 8 * ((.e276 * .e32 + .e87 + .e88) * .e32 * 
        .e102 * .e3/.e90)) * .e157/.e10 + (.e140 - .e54) * .e181 * 
        .e46/.e254) * .e180 - .e209 * (2 * (((.e39/.e10 - 2 * 
        (.e3/.e9)) * .e3 + .e274)/.e134) - ((2 * (((.e59/.e10 + 
        .e280 * .e22) * .e3 + .e250) * .e26) + 2 * ((.e229 + 
        .e144/.e9) * .e3/.e10) + 8 * ((.e149 - .e229 * .e10) * 
        .e163 * .e35 * .e10/.e137))/.e137 + .e161 * (32 * ((.e9/(2 * 
        (.e14 * .e10)) + .e11) * .e9/.e14) - .e126/.e24)/.e243))) * 
        .e3 - 0.5 * (((.e288 * .e26 + ((.e334/.e10 - .e39 * .e3/.e9) * 
        .e35 - .e39 * .e196 * .e26)/2)/.e10 + .e232 * .e196 * 
        .e26/.e35)/.e35)) * .e7 + 0.5 * (.e245 * .e3 - 0.5 * 
        (.e232/.e35))), q0 = geno_b * (((((((.e316/2 - .e92 * 
        .e47 * .e7) * .e43/.e10 + (.e312 - .e93 * .e47 * .e7/.e10) * 
        .e69) * .e146 + 32 * ((((.e305/.e85 + t0 * (.e316/.e24 - 
        .e66 * .e47 * .e7/.e9)/.e10 - .e261 * (8 * (.e107 * .e10/.e14) - 
        .e80 * .e75/.e11)/.e242) * .e43 + .e69 * (tij * (.e312 - 
        .e68 * .e47 * .e7/.e9)/.e10 - (.e249 + (.e278 * .e22/.e10 - 
        2 * (.e59 * .e202/.e35)) * .e47) * .e26/.e82) - .e130 * 
        .e337/.e10) * .e32 - .e115 * .e47 * .e104 * .e7/.e10) * 
        .e3 + .e115 * (1 - (.e267 * .e47 * .e3/.e64 + .e44)) * 
        .e32) - .e175 * .e47 * .e276 * .e7/.e10)/.e156 + .e129 * 
        (32 * (((.e72 - .e300 * .e7 * .e3)/.e210 - (.e301 + .e322) * 
            .e72 * .e46 * .e3/.e251) * .e47) + 64 * ((((2 * ((.e330 - 
            .e336) * .e10 + .e258 * .e7/.e10) + 4 * (.e235 * 
            .e47/.e10)) * .e32 - .e47 * .e101 * .e240 * .e7/.e10) * 
            .e10 + (.e37 - 2 * (.e301/.e64)) * .e47 * .e101 * 
            .e32) * .e46/.e252))) * .e4 * .e43 * .e21/.e12 - 
        ((.e151 * (2 * ((((2 * (((.e330 - (.e258 * .e133/.e20 + 
            .e336)) * .e32 - .e258 * .e104 * .e7/.e10)/.e20) + 
            4 * ((.e72 - .e299 * .e7 * .e3) * .e47/.e10)) * .e32 - 
            .e47 * .e123 * .e240 * .e7/.e10)/.e90 - (.e317 * 
            .e7/.e10 + .e133 * .e12) * .e47 * .e123 * .e32 * 
            .e12 * .e46/.e253) * .e102) - 1024 * (.e47 * .e36 * 
            .e5 * .e7 * .e91/.e255)) - ((.e75/.e11 + .e329/.e9)/.e24 + 
            .e202/.e82) * .e47 * .e173) * .e3 + .e151 * .e153 * 
            .e173)/.e24) * .e3 + .e228 * .e47 - (((.e47 * (2 * 
        (((4 - (.e319 + .e195)) * .e3 - .e34)/.e10) - 8 * ((.e202 * 
        .e10 + .e320) * .e163 * .e35 * .e10/.e137)) - 2 * ((.e287 * 
        .e10 + .e59 * .e47 * .e7/.e10) * .e26))/.e137 + (2 * 
        (.e305 * .e10 + .e261 * .e7/.e10) + 4 * .e47)/.e134 - 
        .e47 * .e161 * (32 * ((.e9 * .e75/.e62 + 2 * .e7) * .e9/.e14) - 
            .e126 * .e75/.e11)/.e243) * .e209 + (.e47 * (32 * 
        (.e190 - 4 * .e327) - .e181 * (.e133 - 2 * .e340) * .e46/.e254) + 
        8 * (((1 - (.e136/.e176 + .e44)) * .e32 - .e47 * (.e104 + 
            .e60) * .e7 * .e3/.e10) * .e32 * .e102 * .e3/.e90)) * 
        .e180 + (16 * ((1 - (.e44 + 6 * (.e136/.e10))) * .e5 * 
        .e91/.e83) - .e216 * .e47 * .e7/.e9) * .e22/.e10)) * 
        .e3 + .e245 * .e47 - 0.5 * (((((.e75/.e220 - .e264/.e9) * 
        .e47 + .e219) * .e35 + .e261 * .e202)/.e24 + .e287 * 
        .e26 - .e232 * .e47 * .e202/.e35)/.e35)) * .e6, q2 = geno_b * 
        geno_q * (((((((.e310/2 - 0.5 * (.e92 * .e7)) * .e43/.e10 + 
        (.e308 - 0.5 * (.e93 * .e7/.e10)) * .e69) * .e146 + 32 * 
        ((((.e260/.e85 + t0 * (.e310/.e24 - 0.5 * (.e66 * .e7/.e9))/.e10 - 
            .e39 * (8 * (.e110 * .e10/.e14) - .e80 * .e76/.e11)/.e242) * 
            .e43 + .e69 * (tij * (.e308 - 0.5 * (.e68 * .e7/.e9))/.e10 - 
            (.e248 - 2 * (.e59 * .e201/.e35)) * .e26/.e82) - 
            (0.5 * .e282 + 0.5 * .e285) * .e7/.e10) * .e32 - 
            0.5 * (.e286 * .e7/.e10)) * .e3 + .e115 * (0.5 - 
            .e263 * .e3/.e64) * .e32) - .e175 * (0.5 * t0 + 0.5/.e12) * 
        .e7/.e10)/.e156 + .e129 * (32 * ((0.5 * .e72 - .e293)/.e210 - 
        (.e297 + 0.5 * .e322) * .e72 * .e46 * .e3/.e251) + 64 * 
        ((((2 * ((.e331 - .e335) * .e10 + 0.5 * (.e57 * .e7/.e10)) + 
            4 * (.e207/.e10)) * .e32 - .e333 * .e101 * .e7/.e10) * 
            .e10 + (.e53 - 2 * (.e297/.e64)) * .e101 * .e32) * 
            .e46/.e252))) * .e4 * .e43 * .e21/.e12 - ((.e151 * 
        (2 * ((((2 * (((.e331 - (.e57 * .e158/.e20 + .e335)) * 
            .e32 - 0.5 * (.e311 * .e7/.e10))/.e20) + 4 * ((.e72 * 
            .e139 - .e293)/.e10)) * .e32 - .e333 * .e123 * .e7/.e10)/.e90 - 
            ((1 - .e283) * .e20 * .e7/.e10 + .e158 * .e12) * 
                .e123 * .e32 * .e12 * .e46/.e253) * .e102) - 
            512 * (.e323 * .e7 * .e91/.e255)) - ((.e76/.e11 + 
        .e329/.e203)/.e24 + .e201/.e82) * .e173) * .e3 + .e151 * 
        .e273 * .e173)/.e24) * .e3 + 0.5 * .e228 - (((2 * (((1 - 
        (.e189 + 0.5 * .e319)) * .e3 + 0.5 * .e35)/.e10) - (2 * 
        ((.e248 * .e10 + 0.5 * (.e197/.e10)) * .e26) + 8 * ((.e201 * 
        .e10 + 0.5 * .e320) * .e163 * .e35 * .e10/.e137)))/.e137 + 
        (2 + 2 * (.e260 * .e10 + 0.5 * (.e264/.e10)))/.e134 - 
        .e161 * (32 * ((.e9 * .e76/.e62 + .e7) * .e9/.e14) - 
            .e126 * .e76/.e11)/.e243) * .e209 + .e180 * (32 * 
        (0.5 * .e190 - 2 * .e327) + 8 * (((0.5 - 0.5 * (.e8/.e176)) * 
        .e32 - (.e230 + .e71) * .e7 * .e3/.e10) * .e32 * .e102 * 
        .e3/.e90) - (.e158 - .e340) * .e181 * .e46/.e254) + (16 * 
        ((0.5 - 3 * .e8/.e203) * .e5 * .e91/.e83) - 0.5 * (.e216 * 
        .e7/.e9)) * .e22/.e10)) * .e3 + 0.5 * .e245 - 0.5 * ((.e248 * 
        .e26 + ((.e260 - .e264/.e203) * .e35 + .e201 * .e39)/.e24 - 
        .e232 * .e201/.e35)/.e35)) * .e6, f0 = geno_b * (((.e129 * 
        (32 * .e296 + 64 * (.e171 * .e101 * .e186 * .e10/.e64)) + 
        32 * (.e115 * .e171 * .e186 * .e3)) * .e21 + .e175 * 
        .e171) * .e4 * .e43/.e194 - ((.e180 * (64 * .e70 + 8 * 
        (.e32 * .e186 * .e102 * .e3/.e90)) + 32 * (.e328/.e119)) * 
        .e171 + .e151 * (2 * ((.e171 * .e123 * .e186 + (2 * (.e57 * 
        .e171 * .e186/.e20) + 4 * .e296) * .e32) * .e102/.e90) + 
        256 * (.e171 * .e5 * .e21/.e119)) * .e3/.e24)) * .e6 * 
        .e157, f2 = geno_b * geno_f * (((.e129 * (32 * .e290 + 
        64 * (.e183 * .e101 * .e10/.e64)) + 32 * (.e115 * .e183 * 
        .e3)) * .e21 + 0.5 * .e175) * .e4 * .e43/.e194 - ((.e151 * 
        (128 * (.e23/.e119) + 2 * ((.e183 * .e123 + (2 * (.e183 * 
            .e57/.e20) + 4 * .e290) * .e32) * .e102/.e90)) * 
        .e3/2 + 16 * (.e328/.e83))/.e10 + .e180 * (32 * .e70 + 
        8 * (.e183 * .e32 * .e102 * .e3/.e90)))) * .e6 * .e157, 
        f1 = geno_b * ((.e180 * (16 * (.e32 * .e102 * .e3/(.e90 * 
            .e10)) + 64 * (.e21/.e36)) + .e151 * (2 * ((.e32 * 
            (4 * (.e57/.e20) + 4 * .e318) + 2 * .e123) * .e102/.e90) + 
            256 * (.e21/.e83)) * .e3/.e203 + 32 * (.e21 * .e22/.e119)) * 
            .e4 - ((.e129 * (128 * (.e101/.e64) + 32 * (.e318/.e10)) + 
            64 * (.e115 * .e3/.e10)) * .e5 * .e21 + .e166 + .e174) * 
            .e43/.e194) * .e4 * .e6 * .e157)
}

deriv_mu_int_q0_qff1b_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    tij, r0, m0, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- b0 + geno_b * (b2 - b0)/2
    .e6 <- .e5^2
    .e7 <- .e4^2
    .e8 <- .e6 * .e3
    .e9 <- .e7 + 2 * .e8
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e3
    .e12 <- .e4 + .e10
    .e13 <- .e12/.e11
    .e14 <- r0 - .e13
    .e17 <- geno_f * (f2 - f0)/2
    .e18 <- f0 + .e17
    .e19 <- .e11 + 2 * (.e10/.e14)
    .e20 <- tij - t0
    .e21 <- .e18 - f1
    .e22 <- 2 * .e10
    .e23 <- .e6/.e10
    .e24 <- .e7 * .e21
    .e25 <- .e11^2
    .e27 <- 2 * (.e3 * .e10)
    .e29 <- exp(2 * (.e10 * .e20))
    .e31 <- 2 * (.e12/.e25)
    .e33 <- .e6/.e27 - .e31
    .e34 <- .e18 - m0
    .e36 <- 2 * (.e34 * .e10)
    .e37 <- .e24/.e10
    .e39 <- 2 * .e37 - .e36
    .e40 <- 0.5 * geno_q
    .e42 <- .e11 - .e19 * .e29
    .e45 <- 2 * (.e33 * .e10/.e14)
    .e46 <- t0 * .e10
    .e47 <- 2 * .e23
    .e48 <- .e45 + .e47
    .e49 <- 1 - .e40
    .e50 <- .e22^2
    .e51 <- .e3 * .e14
    .e53 <- .e48/.e14 + 2
    .e54 <- .e19 * .e6
    .e56 <- exp(-.e46)
    .e57 <- 0.5 * .e23
    .e59 <- exp(-(2 * .e46))
    .e61 <- .e54 * .e20/.e10
    .e62 <- 2 * .e61
    .e63 <- t0 * .e19
    .e64 <- .e12/.e3
    .e66 <- .e63 * .e6/.e10
    .e67 <- .e3/.e10
    .e68 <- 2 * .e51
    .e69 <- .e53 + .e62
    .e71 <- .e3/.e42 - 0.5
    .e72 <- 2 * .e66
    .e74 <- .e51/.e22 + 0.5
    .e75 <- .e53 - .e72
    .e77 <- exp(-(tij * .e10))
    .e78 <- t0 * .e39
    .e79 <- .e24/.e50
    .e80 <- .e69 * .e29
    .e81 <- 0.5 * .e78
    .e85 <- .e81 + 4 * .e79 + f0 + .e17 - m0
    .e86 <- .e19 * .e50
    .e87 <- 2 - .e80
    .e88 <- .e33 * .e39
    .e89 <- .e23 - .e64
    .e90 <- .e57 - .e13
    .e92 <- 2 * (.e24/.e9)
    .e93 <- 2 * .e34
    .e99 <- 2 * (.e88 * .e3/.e12) + 2 * (.e85 * .e6/.e10)
    .e100 <- .e22^3
    .e101 <- .e27^2
    .e102 <- .e92 + .e93
    .e103 <- .e21^2
    .e105 <- .e19 * .e12^2 * .e59
    .e106 <- t0 * .e74
    .e107 <- 2 * .e67
    .e110 <- .e89 * .e10/.e68 + .e23
    .e113 <- .e90 * .e10/.e68 + .e57
    .e114 <- .e8/.e9
    .e115 <- .e67 + 1/(2 * .e14)
    .e117 <- 1/.e14 + .e107
    .e118 <- .e56^2
    .e119 <- tij * .e71
    .e121 <- .e74 * .e56 + .e71 * .e77
    .e126 <- 1 - (.e49 * .e48 * .e3/.e22 + .e40)
    .e128 <- .e106 * .e49 * .e6
    .e133 <- 1 - (.e49 * .e87 * .e3/.e42 + .e40)
    .e135 <- .e126 * .e14/2
    .e136 <- .e100 * .e10
    .e137 <- .e128 - .e135
    .e140 <- .e119 * .e49 * .e6/.e10
    .e146 <- 2 * (.e113/.e14)
    .e148 <- 2 * (.e75 * .e39/.e19) + 4 * .e99
    .e150 <- 2 * (.e75 * .e10) + 4 * (.e54/.e10)
    .e152 <- (.e4 * .e21/.e22)^2
    .e154 <- .e133/.e42 - .e140
    .e155 <- .e19 * .e3
    .e157 <- 2 + 2 * (.e110/.e14)
    .e159 <- .e155 * .e20/.e10
    .e160 <- .e7/.e10
    .e162 <- (-(4 * (.e9/.e14)))^2
    .e164 <- .e154 * .e77 - .e56 * .e137/.e10
    .e165 <- 1/.e42
    .e166 <- .e7 * .e103
    .e167 <- .e8/.e101
    .e168 <- .e8/.e10
    .e170 <- .e14/.e22 + .e165
    .e171 <- (2 * (.e39 * .e56 * .e3/.e12))^2
    .e172 <- .e42^2
    .e173 <- .e19 * .e59
    .e174 <- .e5^4
    .e175 <- 1/.e11
    .e176 <- .e162 * .e14
    .e177 <- (2 * (.e42 * .e10))^2
    .e178 <- .e42 * .e6
    .e180 <- .e86 * .e12 * .e59
    .e181 <- 2 - 2 * .e114
    .e182 <- .e121 * .e49
    .e183 <- .e54/.e9
    .e184 <- .e7 * .e6
    .e185 <- .e150 * .e39
    .e186 <- .e178/.e10
    .e187 <- .e184 * .e103
    .e188 <- 0.5 * geno_f
    .e189 <- .e148 * .e39
    .e192 <- .e166/.e100
    .e193 <- 1 + .e146
    .e195 <- 32 * .e99 + 64 * (.e185 * .e10/.e86)
    .e200 <- 1 - .e114
    .e201 <- 1 - .e188
    .e202 <- 2 * (.e115/.e14)
    .e203 <- 2 * (.e117/.e14)
    .e205 <- 2 * (.e87 * .e10) + 2 * .e186
    .e207 <- 2 * (.e48 * .e10) + 4 * .e6
    .e209 <- .e22^4
    .e210 <- .e174/(.e9 * .e10)
    .e211 <- 2/.e25
    .e213 <- t0 * .e50/.e10
    .e214 <- (.e61 + 1 + .e146) * .e29
    .e221 <- .e160 - .e10
    .e223 <- 128 * (.e187/.e136) + 2 * (.e189 * .e118 * .e3/.e105)
    .e224 <- 2 * ((.e23 - 2 * .e64)/.e25)
    .e225 <- .e202 + 2 * .e159
    .e226 <- 2 * ((.e57 - .e64)/.e25)
    .e227 <- .e203 + 4 * .e159
    .e228 <- 4/.e25
    .e229 <- .e164 * .e39
    .e230 <- .e182 * .e195
    .e234 <- .e171/.e173 + 32 * (.e152 * .e3)
    .e235 <- (.e157 + .e62) * .e29
    .e236 <- .e168 + .e10
    .e237 <- .e51/.e9
    .e239 <- 0.5 * .e168 + 0.5 * .e10
    .e240 <- 1 - .e214
    .e241 <- 1/.e3
    .e243 <- 2 * .e160 - .e22
    .e244 <- 2 * .e167
    .e246 <- 32 * .e152 - .e223 * .e3
    .e247 <- 4 * .e167
    .e249 <- .e205/.e177 + .e207/.e176
    .e250 <- 2 - .e235
    .e251 <- 32 * .e229
    .e253 <- .e110 * .e33 - (2 * (.e236 * .e6/.e101) + .e224) * 
        .e10
    .e255 <- .e113 * .e33 - (2 * (.e239 * .e6/.e101) + .e226) * 
        .e10
    .e256 <- .e173^2
    .e259 <- .e33 * .e115 + .e175 - (.e244 + .e211) * .e3
    .e262 <- .e33 * .e117 + .e241 - (.e247 + .e228) * .e3
    .e263 <- .e33 * .e102
    .e266 <- .e24/.e209
    .e267 <- 2 * (.e200/.e10)
    .e268 <- 2 * (.e181/.e10)
    .e269 <- .e251 - .e230
    .e271 <- t0 * .e102/.e10
    .e272 <- t0 * .e12
    .e273 <- 2 * .e9
    .e274 <- .e69 * .e3
    .e275 <- .e115 * .e6
    .e279 <- .e181 * .e19 + 2 * (.e117 * .e6/.e14)
    .e280 <- .e48 * .e3
    .e281 <- .e48/.e22
    .e282 <- .e225 * .e29
    .e283 <- .e227 * .e29
    .e284 <- .e19 * (8 - 2 * .e213)
    .e286 <- .e193 - 0.5 * .e183
    .e287 <- .e175 - 16 * .e192
    .e289 <- 1/.e12 + t0
    .e290 <- 2 * .e210
    .e291 <- .e157 - .e183
    .e292 <- ((.e89 * .e48/.e11 + 2 * .e253)/.e14 - .e290)/.e14
    .e293 <- ((.e90 * .e48/.e11 + 2 * .e255)/.e14 - .e210)/.e14
    .e295 <- (.e281 + 2 * .e259)/.e14 + .e267
    .e297 <- (.e48/.e10 + 2 * .e262)/.e14 + .e268
    .e298 <- .e282/.e172
    .e299 <- .e283/.e172
    .e300 <- .e237 + 1/.e22
    .e301 <- 0.5 * .e102
    .e303 <- 1/.e10 + 2 * .e237
    .e304 <- 2 * .e102
    .e305 <- 2 * .e78
    .e306 <- .e176^2
    .e307 <- .e164 * .e102
    .e308 <- .e295/.e14
    .e309 <- .e297/.e14
    .e310 <- .e75 * .e102
    .e312 <- .e180^2
    .e313 <- .e105^2
    .e314 <- .e136^2
    .e316 <- .e263 * .e6/.e10
    .e317 <- .e263 * .e3
    .e318 <- .e33/(.e12 * .e10)
    .e319 <- .e33/.e12
    .e322 <- .e85/.e9
    .e323 <- .e193 * .e50
    .e324 <- .e287/.e9
    .e327 <- .e289 * .e39 + .e92 + .e93
    .e331 <- (2 - .e183) * .e3 + (2 * .e275 + .e22)/.e14
    .e332 <- .e280/.e9
    .e333 <- .e50 * .e157
    .e336 <- .e187 * .e3/.e136
    .e337 <- .e166/(.e209 * .e10)
    .e338 <- .e7/.e50
    .e339 <- .e6 * .e14
    .e340 <- .e6/.e9
    .e341 <- .e3^2
    .e342 <- 0.5 * .e271
    .e343 <- 2 - (.e80 + .e48 * .e42/.e22)
    .e344 <- 2 * (.e115 * .e50/.e14)
    .e345 <- 2 * (.e117 * .e50/.e14)
    .e346 <- .e102 + .e305
    .e347 <- 2 * .e272
    .e348 <- 32 * .e266
    .e350 <- .e63 * .e3/.e10
    .e351 <- t0/.e10
    .e352 <- .e119/.e10
    .e353 <- (.e292 + (2 * .e69 + 2 * .e291) * .e6 * .e20/.e10) * 
        .e29
    .e354 <- (.e293 + (.e69 + 2 * .e286) * .e6 * .e20/.e10) * 
        .e29
    .e357 <- .e308 + (2 * .e274 + 2 * .e331) * .e20/.e10
    .e358 <- .e309 + (2 * .e279 + 4 * .e274) * .e20/.e10
    .e361 <- ((1 - (.e49 * .e6 * .e3/.e9 + .e40)) * .e14 - .e89 * 
        .e49/2)/2
    .e362 <- .e89/.e11
    .e363 <- (0.5 - .e240 * .e3/.e42)/.e42
    .e365 <- (0.5 - .e8/.e273) * .e14 - .e90/2
    .e366 <- .e90/.e11
    .e367 <- .e323 + .e19 * (4 - .e213) * .e6
    .e370 <- (16 - 4 * .e213) * .e19 * .e3 + .e345
    .e372 <- .e284 * .e6 + .e333
    .e374 <- .e284 * .e3 + .e344
    .e375 <- .e246/.e9
    .e377 <- 0.5 * .e39
    .e379 <- 0.5 * t0 + 0.5/.e12
    .e380 <- 2 * (.e253/.e14)
    .e381 <- 2 * (.e255/.e14)
    .e383 <- 2 * (.e259/.e14) + .e267
    .e385 <- 2 * (.e262/.e14) + .e268
    .e387 <- 2 * t0 + 2/.e12
    .e388 <- 32 * .e79
    .e389 <- 32 * .e192
    .e390 <- 64 * (.e21/.e50)
    .e394 <- (.e365/2 - 0.5 * (.e106 * .e6)) * .e56/.e10 + (.e363 - 
        0.5 * (.e119 * .e6/.e10)) * .e77
    .e397 <- .e307 * .e6/.e10
    .e399 <- .e307 * .e3/.e10
    .e402 <- (.e361 - .e128) * .e56/.e10 + ((1 - (.e49 * .e250 * 
        .e3/.e42 + .e40))/.e42 - .e140) * .e77
    .e405 <- (.e362 + .e339/.e9)/.e22
    .e408 <- (.e366 + .e339/.e273)/.e22
    .e416 <- .e154 * .e3
    .e430 <- .e310 * .e6/.e10
    .e432 <- .e310 * .e3/.e10
    .e434 <- .e75 * .e6/.e10
    .e436 <- .e75 * .e3/.e10
    .e440 <- (.e298 - .e352) * .e77 - (.e300/2 + .e106) * .e56/.e10
    .e442 <- (.e299 - 2 * .e352) * .e77 - (.e303/2 + 2 * .e106) * 
        .e56/.e10
    .e443 <- .e249 * .e234
    .e466 <- .e300/.e22
    .e467 <- .e71/.e9
    .e469 <- .e170 * .e246
    .e470 <- .e170 * .e6
    .e472 <- .e170 * .e3/.e9
    .e488 <- .e240/.e172
    .e491 <- .e201 * .e7
    .e493 <- (1 - .e347) * .e19 * .e50
    .e497 <- .e289 * .e269
    .e498 <- .e303/.e22
    .e501 <- (128 * .e192 + 8 * (.e327 * .e39 * .e118 * .e3/.e105)) * 
        .e341/.e10 + (.e202 - 2 * .e350) * .e171 * .e59/.e256
    .e503 <- .e87 * .e6/.e10
    .e505 <- .e87 * .e3/.e10
    .e506 <- .e250/.e172
    .e507 <- (2 - .e347) * .e19
    .e508 <- (2 * (((.e175 - (.e319 + .e244 + .e211) * .e3) * 
        .e39 - .e317) * .e3/.e12) + 2 * (.e85 * .e200 - (.e342 + 
        .e348) * .e6 * .e3))/.e10
    .e509 <- (2 * (((.e241 - (2 * .e319 + .e247 + .e228) * .e3) * 
        .e39 - 2 * .e317) * .e3/.e12) + 2 * (.e85 * .e181 - (64 * 
        .e266 + .e271) * .e6 * .e3))/.e10
    .e510 <- .e148 * .e346
    .e511 <- .e150 * .e346
    .e513 <- .e48 * .e6/.e10
    .e514 <- .e280/.e10
    .e520 <- (.e203 - 4 * .e350) * .e171 * .e59/.e256 + (256 * 
        .e192 + 8 * ((.e39 * .e387 + .e304) * .e39 * .e118 * 
        .e3/.e105)) * .e341/.e10
    .e531 <- .e178/.e9
    .e533 <- .e42 * .e3/.e10
    .e535 <- .e19 * .e12 * .e59
    .e539 <- .e50 * .e7 * .e174 * .e103/.e314
    .e542 <- .e50 * .e6 * .e3/.e314
    .e545 <- (96 * .e337 - .e324) * .e6 - .e211
    .e546 <- .e166/.e136
    .e547 <- .e14 * .e10
    .e548 <- .e137/.e9
    .e551 <- .e301 + .e78
    .e552 <- 0.5 * .e269
    .e553 <- 1/.e9
    .e555 <- 16 * (.e39 * .e118 * .e3/(.e105 * .e10)) + .e390
    .e556 <- 16 * .e114
    .e557 <- .e380 - (.e45 + 4 * .e23) * .e6/.e9
    .e558 <- .e381 - (.e48/2 + .e23) * .e6/.e9
    .e559 <- .e383 - .e332
    .e560 <- .e385 - 2 * .e332
    .e561 <- 2 * ((.e88 - (((.e318 + 2 * (.e236/.e101)) * .e6 + 
        .e224) * .e39 + .e316) * .e3)/.e12)
    .e562 <- 2 * ((.e322 + .e342 + .e348) * .e174/.e10)
    .e564 <- 2 * (((0.5 * (t0 * .e243) + 4 * .e338) * .e201 + 
        1 - .e188) * .e6/.e10) + 2 * (.e33 * .e201 * .e243 * 
        .e3/.e12)
    .e566 <- 2 * (.e221 * .e33 * .e3/.e12) + 2 * ((0.5 + 0.5 * 
        (t0 * .e221) + 2 * .e338) * .e6/.e10)
    .e567 <- 2 * ((0.25 * .e271 + 0.5 * .e322 + 16 * .e266) * 
        .e174/.e10)
    .e568 <- 2 * ((0.5 * .e88 - (((0.5 * .e318 + 2 * (.e239/.e101)) * 
        .e6 + .e226) * .e39 + 0.5 * .e316) * .e3)/.e12)
    .e570 <- 2 * ((4/.e50 + .e351) * .e6) + 4 * (.e33 * .e3/.e12)
    .e571 <- .e102 + .e78
    .e572 <- .e304 + 4 * .e78
    .e573 <- 2 * (t0 * (.e200 * .e19 + 2 * (.e275/.e14))/.e10)
    .e574 <- 2 * (t0 * .e279/.e10)
    .e575 <- 2 * (t0 * .e286 * .e6/.e10)
    .e576 <- 2 * (t0 * .e291 * .e6/.e10)
    .e579 <- 32 * (.e152 - 4 * .e336) + 8 * (((2 * .e24 - .e327 * 
        .e6 * .e3)/.e10 - .e36) * .e39 * .e118 * .e3/.e105) - 
        .e171 * (.e157 - .e72) * .e59/.e256
    .e580 <- .e388 + 8 * (.e221 * .e39 * .e118 * .e3/.e105)
    .e583 <- 32 * (0.5 * .e152 - 2 * .e336) + 8 * ((.e377 - (.e379 * 
        .e39 + .e301) * .e6 * .e3/.e10) * .e39 * .e118 * .e3/.e105) - 
        (.e193 - .e66) * .e171 * .e59/.e256
    .e584 <- 4 * .e272
    .e586 <- 64 * .e79 + 8 * (.e39 * .e243 * .e118 * .e3/.e105)
    c(q0 = ((((.e545 * .e6/.e10 - .e224) * .e3 + (.e340 + .e175 - 
        .e389) * .e6/.e10 + .e362 - .e31) * .e20 + ((.e170 * 
        .e579 - (.e405 + .e470/.e9 + .e506) * .e234)/2 + .e469/2)/.e10 - 
        (.e443 + 0.5 * ((.e353 + (.e250 * .e48 + .e557 * .e42)/.e22 + 
            .e343 * .e250/.e42)/.e42))) * .e49 - (((((.e405 + 
        .e506) * .e246 + (((2 * ((((2 * (((.e292 - (.e75 * .e157/.e19 + 
        .e576)) * .e39 - .e430)/.e19) + 4 * (.e561 - .e562)) * 
        .e39 - .e510 * .e6/.e10) * .e3 + .e189)/.e105 - (.e507 * 
        .e6/.e10 + .e157 * .e12) * .e148 * .e39 * .e12 * .e59 * 
        .e3/.e313) + 2 * (.e189/.e105)) * .e118 - 1024 * .e539) * 
        .e3 + (.e375 + 256 * .e546) * .e6) * .e170)/.e22 + ((2 * 
        (.e503 - .e353 * .e10) + 2 * ((2 - (.e531 + .e235)) * 
        .e6/.e10) - 8 * ((.e250 * .e10 + .e186) * .e205 * .e42 * 
        .e10/.e177))/.e177 + 2 * (((.e380 - .e290) * .e10 + .e513)/.e176) - 
        .e207 * (32 * ((.e9 * .e89/.e68 + 2 * .e6) * .e9/.e14) - 
            .e162 * .e89/.e11)/.e306) * .e234 + .e249 * .e579) * 
        .e49 + (64 * .e229 - ((.e402 * .e195 + .e182 * (32 * 
        (.e561 - (.e372 * .e99/.e86 + .e562)) + 64 * ((((2 * 
        ((.e292 - .e576) * .e10 + .e434) + 4 * (.e291 * .e6/.e10)) * 
        .e39 - .e511 * .e6/.e10) * .e10 + (.e23 - 2 * (.e372 * 
        .e10/.e86)) * .e150 * .e39)/.e86)) + .e497 * .e6/.e10 + 
        32 * ((((.e133 * .e250 + .e49 * (2 - ((.e353 + .e87 * 
            .e250/.e42) * .e3 + .e80)))/.e172 + tij * ((2 - (.e49 * 
            (4 - ((.e45 + 2 * .e110 + .e47)/.e14 + 4 + 4 * .e61) * 
                .e29) * .e3/.e42 + geno_q))/.e42 - .e71 * .e49 * 
            (.e553 + tij/.e10) * .e6) * .e6/.e10) * .e77 + .e164 * 
            .e372/.e86 + (.e6 * (t0 * (.e361 + .e135 - .e128)/.e10 - 
            .e548) + 0.5 * ((.e557 * .e3 + .e45 + .e47) * .e49 * 
            .e14/.e22 + .e89 * .e126/.e11)) * .e56/.e10) * .e39 + 
            .e397)) * .e3 + 2 * .e230)) * .e4 * .e56 * .e21/.e180) * 
        .e3 + 32 * ((((.e402 * .e39 - .e182 * .e571 * .e6/.e10) * 
        .e3 + .e182 * .e39)/.e180 - ((.e333 + 8 * .e54) * .e12 + 
        .e493 * .e6/.e10) * .e121 * .e49 * .e39 * .e59 * .e3/.e312) * 
        .e4 * .e56 * .e21))) * .e49, q2 = geno_q * ((((((48 * 
        .e337 - 0.5 * .e324) * .e6 - 1/.e25) * .e6/.e10 - .e226) * 
        .e3 + (0.5 * .e340 - 8 * .e192) * .e6/.e10 + .e366 + 
        0.5 * (.e287 * .e6/.e10 - .e31)) * .e20 + (.e170 * .e583 - 
        (.e408 + .e470/.e273 + .e488) * .e234)/.e22 - (0.5 * 
        ((.e354 + (.e240 * .e48 + .e558 * .e42)/.e22 + .e240 * 
            .e343/.e42)/.e42) + 32 * ((((.e394 * .e39 - .e121 * 
        (.e301 + .e81) * .e6/.e10) * .e3 + 0.5 * (.e121 * .e39))/.e180 - 
        ((.e323 + 4 * .e54) * .e12 + (0.5 - .e272) * .e19 * .e50 * 
            .e6/.e10) * .e121 * .e39 * .e59 * .e3/.e312) * .e4 * 
        .e56 * .e21))) * .e49 + 0.5 * ((.e469/.e22 - .e443) * 
        .e49 - .e269 * .e4 * .e56 * .e21 * .e3/.e180) - ((((.e408 + 
        .e488) * .e246 + ((.e246/.e273 + 64 * .e546) * .e6 + 
        (2 * (((((2 * (((.e293 - (.e75 * .e193/.e19 + .e575)) * 
            .e39 - 0.5 * .e430)/.e19) + 4 * (.e568 - .e567)) * 
            .e39 - .e551 * .e148 * .e6/.e10) * .e3 + 0.5 * .e189)/.e105 - 
            ((1 - .e272) * .e19 * .e6/.e10 + .e193 * .e12) * 
                .e148 * .e39 * .e12 * .e59 * .e3/.e313) * .e118) - 
            512 * .e539) * .e3 + 0.5 * .e223) * .e170)/.e22 + 
        ((2 * ((1 - (.e214 + 0.5 * .e531)) * .e6/.e10) + 2 * 
            (0.5 * .e503 - .e354 * .e10) - 8 * ((.e240 * .e10 + 
            0.5 * .e186) * .e205 * .e42 * .e10/.e177))/.e177 + 
            2 * (((.e381 - .e210) * .e10 + 0.5 * .e513)/.e176) - 
            .e207 * (32 * ((.e9 * .e90/.e68 + .e6) * .e9/.e14) - 
                .e162 * .e90/.e11)/.e306) * .e234 + .e249 * .e583) * 
        .e49 + (.e552 - ((.e394 * .e195 + .e121 * (32 * (.e568 - 
        (.e367 * .e99/.e86 + .e567)) + 64 * ((((2 * ((.e293 - 
        .e575) * .e10 + 0.5 * .e434) + 4 * (.e286 * .e6/.e10)) * 
        .e39 - .e551 * .e150 * .e6/.e10) * .e10 + (.e57 - 2 * 
        (.e367 * .e10/.e86)) * .e150 * .e39)/.e86))) * .e49 + 
        .e379 * .e269 * .e6/.e10 + 32 * (((((0.5 * .e87 - (.e354 + 
        .e240 * .e87/.e42) * .e3) * .e49 + .e133 * .e240)/.e172 + 
        tij * ((.e363 - 0.5 * (.e71 * .e6/.e9)) * .e49 + 0.5 * 
            .e154) * .e6/.e10) * .e77 + .e164 * .e367/.e86 + 
        (.e6 * (t0 * (.e365 * .e49/2 - 0.5 * .e137)/.e10 - 0.5 * 
            .e548) + 0.5 * ((.e558 * .e3 + 0.5 * .e48) * .e49 * 
            .e14/.e22 + .e90 * .e126/.e11)) * .e56/.e10) * .e39 + 
        0.5 * .e397)) * .e3) * .e4 * .e56 * .e21/.e180) * .e3), 
        f0 = ((.e170 * (64 * (.e491 * .e21/.e50) - (2 * ((.e201 * 
            .e148 * .e243 + (2 * (.e75 * .e201 * .e243/.e19) + 
            4 * .e564) * .e39) * .e118 * .e3/.e105) + 256 * (.e491 * 
            .e6 * .e21/.e136)) * .e3)/.e22 - .e249 * .e201 * 
            .e586 * .e3) * .e49 - (.e201 * .e269 + (32 * (.e164 * 
            .e201 * .e243) - .e182 * (32 * .e564 + 64 * (.e201 * 
            .e150 * .e243 * .e10/.e86))) * .e21) * .e4 * .e56 * 
            .e3/.e180) * .e3 + (((8 - .e556) * .e4 * .e21 * .e20 - 
            32 * (.e121 * ((4 * .e160 - .e22) * .e21 - .e36) * 
                .e56 * .e3/.e535)) * .e4/.e50 + .e170 * .e586 * 
            .e3/.e22) * .e201 * .e49, f2 = geno_f * (((.e170 * 
            (.e388 - (128 * (.e184 * .e21/.e136) + 2 * ((.e221 * 
                .e148 + (2 * (.e75 * .e221/.e19) + 4 * .e566) * 
                .e39) * .e118 * .e3/.e105)) * .e3)/.e22 - .e249 * 
            .e580 * .e3) * .e49 - ((32 * (.e164 * .e221) - .e182 * 
            (32 * .e566 + 64 * (.e221 * .e150 * .e10/.e86))) * 
            .e21 + .e552) * .e4 * .e56 * .e3/.e180) * .e3 + (((4 - 
            8 * .e114) * .e4 * .e21 * .e20 - 32 * ((.e221 * .e21 + 
            .e377) * .e121 * .e56 * .e3/.e535)) * .e4/.e50 + 
            .e170 * .e580 * .e3/.e22) * .e49), f1 = (((((2 * 
            ((.e39 * (4 * (.e75/.e19) + 4 * .e570) + 2 * .e148) * 
                .e118 * .e3/.e105) + 256 * (.e6 * .e21/.e100)) * 
            .e3/.e10 - .e390) * .e170/.e22 + .e249 * .e555 * 
            .e3) * .e49 * .e4 - ((.e182 * (128 * (.e150/.e86) + 
            32 * (.e570/.e10)) - 64 * (.e164/.e10)) * .e7 * .e21 + 
            .e230 - .e251) * .e56 * .e3/.e180) * .e3 + (((.e556 - 
            8) * .e21 * .e20/.e50 - .e170 * .e555 * .e3/.e22) * 
            .e4 - 32 * (.e121 * (.e36 - 4 * .e37) * .e56 * .e3/.e180)) * 
            .e49) * .e4, b0 = (((((((192 * .e337 - 2 * .e324) * 
            .e6 - .e228) * .e3 + 2 * .e340 + 2 * .e287 - .e389) * 
            .e3 - 1) * .e20 + ((.e299 - (.e498 + 2 * .e472)) * 
            .e234 - .e520 * .e170)/2)/.e10 - (0.5 * (((.e358 - 
            .e343 * .e227/.e42) * .e29 + (.e560 * .e42 - .e48 * 
            .e227 * .e29)/.e22)/.e42) + 32 * (((.e442 * .e39 - 
            .e121 * (.e304 + .e305)/.e10) * .e3/.e180 - .e121 * 
            ((16 * .e155 + .e345) * .e12 + (2 - .e584) * .e19 * 
                .e50 * .e3/.e10) * .e39 * .e59/.e312) * .e4 * 
            .e56 * .e21 * .e3))) * .e49 + (((.e442 * .e195 * 
            .e3 + .e121 * (32 * (.e509 - .e370 * .e99/.e86) + 
            64 * ((((2 * ((.e309 - .e574) * .e10 + 2 * .e436) + 
                4 * (.e279/.e10)) * .e39 - .e150 * .e572 * .e3/.e10) * 
                .e10 + .e185 * (.e107 - 2 * (.e370 * .e10/.e86)))/.e86))) * 
            .e49 + .e387 * .e269 * .e3/.e10 + 32 * (((((.e87 * 
            .e227/.e42 - .e358) * .e49 * .e3 - .e133 * .e227) * 
            .e29/.e172 + tij * (((.e299 - 2 * .e467) * .e6 * 
            .e3 + 2 * .e71) * .e49 + 2 * .e416)/.e10) * .e77 + 
            .e164 * .e370/.e86 + (0.5 * (((.e560 * .e14/2 - .e281) * 
            .e49 * .e3 + 1 - .e40)/.e10) + t0 * .e49 * (2 * .e74 - 
            .e303 * .e6 * .e3/.e22) - (2 * .e351 + 2/.e9) * .e3 * 
            .e137) * .e56/.e10) * .e39 + 2 * .e399)) * .e4 * 
            .e56 * .e21 * .e3/.e180 + (((.e299 - .e498) * .e246 - 
            ((128 * (2/.e136 - 16 * .e542) + 256/.e136) * .e7 * 
                .e103 + 2 * ((((2 * ((((.e297 - 2 * (.e75 * .e117/.e19))/.e14 - 
                .e574) * .e39 - 2 * .e432)/.e19) + 4 * .e509) * 
                .e39 - .e148 * .e572 * .e3/.e10)/.e105 - (.e19 * 
                (4 - .e584) * .e3/.e10 + 2 * (.e117 * .e12/.e14)) * 
                .e148 * .e39 * .e12 * .e59/.e313) * .e118 * .e3) + 
                2 * .e375) * .e170 * .e3)/.e22 + .e520 * .e249 - 
            ((2 * ((.e181 * .e42 - .e227 * .e6 * .e29)/.e10) + 
                2 * (2 * .e505 - .e358 * .e29 * .e10) - 8 * (.e205 * 
                (2 * .e533 - .e283 * .e10) * .e42 * .e10/.e177))/.e177 + 
                (2 * (.e385 * .e10 + 2 * .e514) + 8)/.e176 - 
                .e207 * (32 * ((.e9/.e547 + 4 * .e3) * .e9/.e14) - 
                  .e162/.e10)/.e306) * .e234) * .e49) * .e3) * 
            (1 - 0.5 * geno_b) * .e5, b2 = geno_b * ((((.e440 * 
            .e195 * .e3 + .e121 * (32 * (.e508 - .e374 * .e99/.e86) + 
            64 * ((((2 * ((.e308 - .e573) * .e10 + .e436) + 4 * 
                (.e331/.e10)) * .e39 - .e511 * .e3/.e10) * .e10 + 
                (.e67 - 2 * (.e374 * .e10/.e86)) * .e150 * .e39)/.e86))) * 
            .e49 + .e497 * .e3/.e10 + 32 * (((((.e87 * .e225/.e42 - 
            .e357) * .e49 * .e3 - .e133 * .e225) * .e29/.e172 + 
            tij * ((((.e298 - .e467) * .e6 + .e165) * .e3 - 0.5) * 
                .e49 + .e416)/.e10) * .e77 + .e164 * .e374/.e86 + 
            (0.5 * ((.e126/2 + .e49 * .e559 * .e3 * .e14/2)/.e10) + 
                t0 * ((.e14/2 - .e300 * .e6/2) * .e3/.e10 + 0.5) * 
                  .e49 - (.e553 + .e351) * .e3 * .e137) * .e56/.e10) * 
            .e39 + .e399)) * .e4 * .e56 * .e21 * .e3/.e180 + 
            (((.e298 - .e466) * .e246 - ((128 * (1/.e136 - 8 * 
                .e542) + 128/.e136) * .e7 * .e103 + .e375 + 2 * 
                ((((2 * ((((.e295 - 2 * (.e75 * .e115/.e19))/.e14 - 
                  .e573) * .e39 - .e432)/.e19) + 4 * .e508) * 
                  .e39 - .e510 * .e3/.e10)/.e105 - (.e507 * .e3/.e10 + 
                  2 * (.e115 * .e12/.e14)) * .e148 * .e39 * .e12 * 
                  .e59/.e313) * .e118 * .e3)) * .e170 * .e3)/.e22 + 
                .e501 * .e249 - ((2 * ((.e200 * .e42 - .e225 * 
                .e6 * .e29)/.e10) + 2 * (.e505 - .e357 * .e29 * 
                .e10) - 8 * ((.e533 - .e282 * .e10) * .e205 * 
                .e42 * .e10/.e177))/.e177 + (2 * (.e383 * .e10 + 
                .e514) + 4)/.e176 - .e207 * (32 * ((.e9/(2 * 
                .e547) + .e11) * .e9/.e14) - .e162/.e22)/.e306) * 
                .e234) * .e49) * .e3 + ((((.e545 * .e3 + .e340 + 
            .e175 - .e389) * .e3 - 0.5) * .e20 + ((.e298 - (.e466 + 
            .e472)) * .e234 - .e501 * .e170)/2)/.e10 - (0.5 * 
            (((.e357 - .e343 * .e225/.e42) * .e29 + (.e559 * 
                .e42 - .e48 * .e225 * .e29)/.e22)/.e42) + 32 * 
            (((.e440 * .e39 - .e121 * .e571/.e10) * .e3/.e180 - 
                .e121 * (.e493 * .e3/.e10 + (.e344 + 8 * .e155) * 
                  .e12) * .e39 * .e59/.e312) * .e4 * .e56 * .e21 * 
                .e3))) * .e49) * .e5)
}

deriv_mu_int_q2_qff1b_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    tij, r0, m0, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- b0 + geno_b * (b2 - b0)/2
    .e6 <- .e5^2
    .e7 <- .e4^2
    .e8 <- .e6 * .e3
    .e9 <- .e7 + 2 * .e8
    .e10 <- sqrt(.e9)
    .e11 <- 2 * .e3
    .e12 <- .e4 + .e10
    .e13 <- .e12/.e11
    .e14 <- r0 - .e13
    .e17 <- geno_f * (f2 - f0)/2
    .e18 <- f0 + .e17
    .e19 <- .e11 + 2 * (.e10/.e14)
    .e20 <- tij - t0
    .e21 <- .e18 - f1
    .e22 <- 2 * .e10
    .e23 <- .e7 * .e21
    .e24 <- .e11^2
    .e26 <- 2 * (.e3 * .e10)
    .e28 <- exp(2 * (.e10 * .e20))
    .e29 <- .e6/.e10
    .e32 <- .e6/.e26 - 2 * (.e12/.e24)
    .e33 <- .e18 - m0
    .e35 <- 2 * (.e33 * .e10)
    .e36 <- .e23/.e10
    .e38 <- 2 * .e36 - .e35
    .e40 <- .e11 - .e19 * .e28
    .e41 <- t0 * .e10
    .e43 <- .e32 * .e10/.e14
    .e44 <- .e22^2
    .e45 <- .e43 + .e29
    .e47 <- exp(-.e41)
    .e48 <- .e3 * .e14
    .e49 <- 0.5 * .e29
    .e50 <- .e19 * .e6
    .e52 <- exp(-(2 * .e41))
    .e53 <- .e3/.e10
    .e55 <- .e50 * .e20/.e10
    .e57 <- 2 * .e43 + 2 * .e29
    .e58 <- t0 * .e19
    .e60 <- .e3/.e40 - 0.5
    .e62 <- .e58 * .e6/.e10
    .e64 <- .e48/.e22 + 0.5
    .e69 <- 0.5 * (.e57/.e14 + 2) - .e62
    .e70 <- exp(-(tij * .e10))
    .e73 <- .e45/.e14 + .e55 + 1
    .e74 <- .e49 - .e13
    .e75 <- t0 * .e38
    .e76 <- .e73 * .e28
    .e77 <- .e23/.e44
    .e78 <- .e19 * .e44
    .e79 <- 1 - .e76
    .e80 <- 0.5 * .e75
    .e84 <- .e80 + 4 * .e77 + f0 + .e17 - m0
    .e85 <- .e8/.e9
    .e86 <- .e32 * .e38
    .e87 <- .e22^3
    .e88 <- 2 * .e48
    .e89 <- 2 * .e53
    .e92 <- .e74 * .e10/.e88 + .e49
    .e93 <- .e26^2
    .e95 <- .e53 + 1/(2 * .e14)
    .e97 <- 1/.e14 + .e89
    .e98 <- 2 * (.e23/.e9)
    .e99 <- 2 * .e33
    .e102 <- .e86 * .e3/.e12 + .e84 * .e6/.e10
    .e104 <- .e19 * .e12^2 * .e52
    .e105 <- .e98 + .e99
    .e106 <- .e45 * .e3
    .e107 <- .e87 * .e10
    .e108 <- .e47^2
    .e109 <- t0 * .e64
    .e110 <- tij * .e60
    .e111 <- .e79 * .e3
    .e112 <- .e21^2
    .e114 <- .e64 * .e47 + .e60 * .e70
    .e115 <- .e19 * .e3
    .e117 <- 0.5 - .e111/.e40
    .e120 <- (2 * (.e8/.e93) + 2/.e24) * .e3
    .e122 <- .e115 * .e20/.e10
    .e123 <- .e7/.e10
    .e124 <- 0.5 - .e106/.e22
    .e125 <- 0.5 * (.e109 * .e6)
    .e126 <- 0.5 * (.e110 * .e6/.e10)
    .e127 <- 2 * (.e92/.e14)
    .e131 <- .e117/.e40 - .e126
    .e134 <- .e125 - .e124 * .e14/2
    .e136 <- 2 * (.e69 * .e10) + 2 * (.e50/.e10)
    .e139 <- 2 - 2 * .e85
    .e141 <- 2 * (.e69 * .e38/.e19) + 4 * .e102
    .e143 <- .e131 * .e70 - .e134 * .e47/.e10
    .e144 <- 1/.e40
    .e146 <- (-(4 * (.e9/.e14)))^2
    .e147 <- (.e4 * .e21/.e22)^2
    .e149 <- .e78 * .e12 * .e52
    .e151 <- .e14/.e22 + .e144
    .e152 <- .e40^2
    .e153 <- 0.5 * geno_f
    .e154 <- 1 - .e85
    .e155 <- .e146 * .e14
    .e158 <- (2 * (.e38 * .e47 * .e3/.e12))^2
    .e159 <- (2 * (.e40 * .e10))^2
    .e160 <- .e19 * .e52
    .e161 <- .e7 * .e6
    .e162 <- 1 - .e153
    .e163 <- 2 * (.e95/.e14)
    .e164 <- 2 * (.e97/.e14)
    .e165 <- .e136 * .e38
    .e166 <- .e40 * .e6
    .e167 <- .e161 * .e112
    .e168 <- (.e55 + 1 + .e127) * .e28
    .e174 <- .e166/.e10
    .e175 <- .e123 - .e10
    .e176 <- .e5^4
    .e177 <- 1 + .e127
    .e178 <- 1/.e11
    .e179 <- 1/.e3
    .e180 <- .e163 + 2 * .e122
    .e182 <- 2 * ((0.5 * (.e8/.e10) + 0.5 * .e10) * .e6/.e93) + 
        2 * ((.e49 - .e12/.e3)/.e24)
    .e183 <- .e164 + 4 * .e122
    .e184 <- 2 * .e120
    .e186 <- 32 * .e102 + 64 * (.e165 * .e10/.e78)
    .e189 <- .e174 + 2 * (.e79 * .e10)
    .e190 <- .e167/.e107
    .e191 <- .e48/.e9
    .e192 <- 1 - .e168
    .e194 <- 2 * (.e45 * .e10) + 2 * .e6
    .e196 <- 2 * .e123 - .e22
    .e197 <- .e141 * .e38
    .e199 <- t0 * .e44/.e10
    .e201 <- .e114 * .e186
    .e202 <- .e92 * .e32
    .e203 <- .e32 * .e95
    .e204 <- .e32 * .e97
    .e205 <- .e154/.e10
    .e206 <- .e139/.e10
    .e210 <- .e182 * .e10
    .e212 <- 2 * (.e197 * .e108 * .e3/.e104) + 64 * .e190
    .e213 <- 32 * (.e143 * .e38)
    .e215 <- .e189/.e159 + .e194/.e155
    .e220 <- .e158/.e160 + 32 * (.e147 * .e3)
    .e221 <- .e50/.e9
    .e222 <- .e7 * .e112
    .e223 <- .e176/(.e9 * .e10)
    .e224 <- 0.5 * .e105
    .e226 <- 16 * .e147 - .e212 * .e3
    .e227 <- 2 * .e9
    .e228 <- 2 * .e105
    .e229 <- .e213 - .e201
    .e230 <- .e160^2
    .e231 <- .e107^2
    .e232 <- .e95 * .e6
    .e236 <- .e139 * .e19 + 2 * (.e97 * .e6/.e14)
    .e237 <- .e180 * .e28
    .e238 <- .e183 * .e28
    .e239 <- .e38/.e12
    .e241 <- .e23/.e22^4
    .e243 <- t0 * .e105/.e10
    .e244 <- t0 * .e12
    .e245 <- .e202 - .e210
    .e247 <- .e203 + .e178 - .e120
    .e249 <- .e204 + .e179 - .e184
    .e250 <- .e237/.e152
    .e251 <- .e238/.e152
    .e252 <- .e191 + 1/.e22
    .e254 <- 1/.e10 + 2 * .e191
    .e255 <- t0/.e10
    .e256 <- .e106/.e9
    .e257 <- .e45/.e22
    .e260 <- .e177 * .e44
    .e263 <- (2 * .e232 + .e22)/.e14
    .e266 <- .e44 * .e6 * .e3/.e231
    .e267 <- .e222/.e87
    .e268 <- .e7/.e44
    .e269 <- .e3^2
    .e270 <- 0.5 * .e223
    .e271 <- 0.5/.e9
    .e272 <- 2 * (.e95 * .e44/.e14)
    .e273 <- 2 * (.e97 * .e44/.e14)
    .e275 <- .e58 * .e3/.e10
    .e276 <- .e110/.e10
    .e277 <- .e155^2
    .e278 <- (((.e45 * .e74/.e11 + .e202 - .e210)/.e14 - .e270)/.e14 + 
        ((.e45 + 2 * .e92)/.e14 + (.e20/.e10 - .e271) * .e19 * 
            .e6 + 2) * .e6 * .e20/.e10) * .e28
    .e280 <- ((.e257 + .e203 + .e178 - .e120)/.e14 + .e205)/.e14 + 
        (.e263 + (2 + 2 * .e73 - .e221) * .e3) * .e20/.e10
    .e282 <- ((.e45/.e10 + .e204 + .e179 - .e184)/.e14 + .e206)/.e14 + 
        (.e236 + 4 * (.e73 * .e3)) * .e20/.e10
    .e284 <- .e143 * .e105
    .e285 <- .e245/.e14
    .e287 <- .e247/.e14 + .e205
    .e289 <- .e249/.e14 + .e206
    .e290 <- .e149^2
    .e291 <- .e104^2
    .e292 <- (0.5 - .e192 * .e3/.e40)/.e40
    .e294 <- (0.5 - .e8/.e227) * .e14 - .e74/2
    .e295 <- .e69 * .e105
    .e296 <- .e74/.e11
    .e297 <- .e260 + .e19 * (4 - .e199) * .e6
    .e300 <- (16 - 4 * .e199) * .e19 * .e3 + .e273
    .e303 <- .e19 * (8 - 2 * .e199) * .e3 + .e272
    .e304 <- .e21/.e44
    .e306 <- 0.5 * .e38
    .e308 <- 0.5 * t0 + 0.5/.e12
    .e309 <- 1 - (.e76 + .e45 * .e40/.e22)
    .e310 <- .e177 - 0.5 * .e221
    .e311 <- .e178 - .e120
    .e313 <- 1/.e12 + t0
    .e314 <- .e179 - .e184
    .e315 <- 2 * .e75
    .e317 <- 2 * t0 + 2/.e12
    .e318 <- (((.e311 * .e38 - (.e239 + .e98 + .e99) * .e32 * 
        .e3)/.e12 - (0.5 * .e243 + 32 * .e241) * .e6) * .e3 + 
        .e84 * .e154)/.e10
    .e319 <- (((.e314 * .e38 - .e32 * (2 * .e239 + .e228) * .e3)/.e12 - 
        (64 * .e241 + .e243) * .e6) * .e3 + .e84 * .e139)/.e10
    .e323 <- .e284 * .e3/.e10
    .e326 <- (.e294/2 - .e125) * .e47/.e10 + (.e292 - .e126) * 
        .e70
    .e328 <- .e285 - (.e45/2 + .e49) * .e6/.e9
    .e329 <- .e287 - .e256
    .e331 <- .e289 - 2 * .e256
    .e332 <- .e106/.e10
    .e335 <- .e131 * .e3
    .e336 <- (.e296 + .e6 * .e14/.e227)/.e22
    .e339 <- ((0.5 * (t0 * .e196) + 4 * .e268) * .e162 + 1 - 
        .e153) * .e6/.e10 + .e32 * .e162 * .e196 * .e3/.e12
    .e350 <- (.e57/.e22 + 2 * .e247)/.e14 + 2 * .e205
    .e352 <- (.e57/.e10 + 2 * .e249)/.e14 + 2 * .e206
    .e354 <- (.e250 - .e276) * .e70 - (.e252/2 + .e109) * .e47/.e10
    .e356 <- (.e251 - 2 * .e276) * .e70 - (.e254/2 + 2 * .e109) * 
        .e47/.e10
    .e364 <- .e175 * .e32 * .e3/.e12 + (0.5 + 0.5 * (t0 * .e175) + 
        2 * .e268) * .e6/.e10
    .e371 <- .e252/.e22
    .e372 <- .e60/.e9
    .e375 <- .e151 * .e3/.e9
    .e377 <- (0.25 * .e243 + 0.5 * (.e84/.e9) + 16 * .e241) * 
        .e176/.e10
    .e378 <- (0.5 * .e86 - (.e32 * (0.5 * .e239 + .e224) * .e6/.e10 + 
        .e182 * .e38) * .e3)/.e12
    .e380 <- .e295 * .e3/.e10
    .e382 <- .e69 * .e3/.e10
    .e387 <- .e111/.e10
    .e388 <- .e192/.e152
    .e391 <- .e162 * .e7
    .e395 <- .e254/.e22
    .e398 <- (128 * .e267 + 8 * ((.e313 * .e38 + .e98 + .e99) * 
        .e38 * .e108 * .e3/.e104)) * .e269/.e10 + (.e163 - 2 * 
        .e275) * .e158 * .e52/.e230
    .e399 <- .e226/.e9
    .e403 <- (.e164 - 4 * .e275) * .e158 * .e52/.e230 + (256 * 
        .e267 + 8 * ((.e38 * .e317 + .e228) * .e38 * .e108 * 
        .e3/.e104)) * .e269/.e10
    .e412 <- .e40 * .e3/.e10
    .e416 <- .e44 * .e7 * .e176 * .e112/.e231
    .e418 <- (4/.e44 + .e255) * .e6 + 2 * (.e32 * .e3/.e12)
    .e422 <- .e222 * .e3/.e87
    .e423 <- .e14 * .e10
    .e424 <- 0.5 * (((.e74 * .e57/.e11 + 2 * .e245)/.e14 - .e223)/.e14)
    .e427 <- .e224 + .e75
    .e428 <- 0.5 * .e229
    .e430 <- 1/.e107 - 8 * .e266
    .e432 <- 16 * (.e38 * .e108 * .e3/(.e104 * .e10)) + 64 * 
        .e304
    .e434 <- .e105 + .e315
    .e435 <- .e228 + 4 * .e75
    .e436 <- 2 * .e244
    .e438 <- 2/.e107 - 16 * .e266
    .e440 <- 32 * .e77 + 8 * (.e175 * .e38 * .e108 * .e3/.e104)
    .e443 <- 32 * (0.5 * .e147 - 2 * (.e167 * .e3/.e107)) + 8 * 
        ((.e306 - (.e308 * .e38 + .e224) * .e6 * .e3/.e10) * 
            .e38 * .e108 * .e3/.e104) - (.e177 - .e62) * .e158 * 
        .e52/.e230
    .e444 <- 4 * .e244
    .e446 <- 64 * .e77 + 8 * (.e38 * .e196 * .e108 * .e3/.e104)
    .e447 <- 8 * .e190
    .e448 <- 8 * .e85
    .e450 <- t0 * (.e154 * .e19 + 2 * (.e232/.e14))/.e10
    .e452 <- t0 * .e236/.e10
    .e455 <- t0 * .e310 * .e6/.e10
    c(q2 = geno_q^2 * (((32 * .e416 - 0.5 * .e182) * .e3 + 0.25 * 
        .e223 + 0.5 * (.e296 - .e447) + 0.5 * (0.5 * .e32 - .e447)) * 
        .e20 + 0.5 * ((.e151 * .e443 - (.e336 + .e151 * .e6/.e227 + 
        .e388) * .e220)/.e22 - 32 * ((((.e326 * .e38 - .e114 * 
        (.e224 + .e80) * .e6/.e10) * .e3 + 0.5 * (.e114 * .e38))/.e149 - 
        ((.e260 + 4 * .e50) * .e12 + (0.5 - .e244) * .e19 * .e44 * 
            .e6/.e10) * .e114 * .e38 * .e52 * .e3/.e290) * .e4 * 
        .e47 * .e21)) + 0.5 * (.e151 * .e226/.e22 - (.e215 * 
        .e220 + .e229 * .e4 * .e47 * .e21 * .e3/.e149)) - ((((.e336 + 
        .e388) * .e226 + ((.e226/.e227 + 32 * (.e222/.e107)) * 
        .e6 + (2 * (((((2 * (((.e424 - (.e69 * .e177/.e19 + .e455)) * 
        .e38 - 0.5 * (.e295 * .e6/.e10))/.e19) + 4 * (.e378 - 
        .e377)) * .e38 - .e427 * .e141 * .e6/.e10) * .e3 + 0.5 * 
        .e197)/.e104 - ((1 - .e244) * .e19 * .e6/.e10 + .e177 * 
        .e12) * .e141 * .e38 * .e12 * .e52 * .e3/.e291) * .e108) - 
        256 * .e416) * .e3 + 0.5 * .e212) * .e151)/.e22 + (((1 - 
        (.e168 + 0.5 * (.e166/.e9))) * .e6/.e10 + 2 * (0.5 * 
        (.e79 * .e6/.e10) - .e278 * .e10) - 8 * ((.e192 * .e10 + 
        0.5 * .e174) * .e189 * .e40 * .e10/.e159))/.e159 + 2 * 
        (((.e285 - .e270) * .e10 + 0.5 * (.e45 * .e6/.e10))/.e155) - 
        .e194 * (32 * ((.e9 * .e74/.e88 + .e6) * .e9/.e14) - 
            .e146 * .e74/.e11)/.e277) * .e220 + .e215 * .e443 + 
        (.e428 - (.e326 * .e186 + .e114 * (32 * (.e378 - (.e102 * 
            .e297/.e78 + .e377)) + 64 * ((((2 * ((.e424 - .e455) * 
            .e10 + 0.5 * (.e69 * .e6/.e10)) + 2 * (.e310 * .e6/.e10)) * 
            .e38 - .e427 * .e136 * .e6/.e10) * .e10 + (.e49 - 
            2 * (.e297 * .e10/.e78)) * .e136 * .e38)/.e78)) + 
            .e308 * .e229 * .e6/.e10 + 32 * ((((.e117 * .e192 + 
            0.5 * .e79 - (.e278 + .e79 * .e192/.e40) * .e3)/.e152 + 
            tij * (0.5 * .e131 + 0.5 * (.e292 - 0.5 * (.e60 * 
                .e6/.e9))) * .e6/.e10) * .e70 + .e143 * .e297/.e78 + 
            (.e6 * (t0 * .e294/(4 * .e10) - .e134 * (0.5 * .e255 + 
                .e271)) + 0.5 * ((.e328 * .e3 + 0.5 * .e45) * 
                .e14/.e22 + .e124 * .e74/.e11)) * .e47/.e10) * 
            .e38 + 0.5 * (.e284 * .e6/.e10))) * .e3) * .e4 * 
            .e47 * .e21/.e149) * .e3 + 0.5 * ((.e278 + (.e328 * 
        .e40 + .e45 * .e192)/.e22 + .e309 * .e192/.e40)/.e40))), 
        f0 = geno_q * ((.e151 * (32 * (.e391 * .e21/.e44) - (128 * 
            (.e391 * .e6 * .e21/.e107) + 2 * ((.e162 * .e141 * 
            .e196 + (2 * (.e69 * .e162 * .e196/.e19) + 4 * .e339) * 
            .e38) * .e108 * .e3/.e104)) * .e3)/.e22 - (.e215 * 
            .e162 * .e446 + (.e162 * .e229 + (32 * (.e143 * .e162 * 
            .e196) - .e114 * (32 * .e339 + 64 * (.e162 * .e136 * 
            .e196 * .e10/.e78))) * .e21) * .e4 * .e47/.e149) * 
            .e3) * .e3 + ((4 - .e448) * .e7 * .e21 * .e20/.e44 + 
            0.5 * ((.e151 * .e446/.e22 - 32 * (.e114 * ((4 * 
                .e123 - .e22) * .e21 - .e35) * .e4 * .e47/.e149)) * 
                .e3)) * .e162), f2 = geno_f * geno_q * ((.e151 * 
            (16 * .e77 - (2 * ((.e175 * .e141 + (2 * (.e175 * 
                .e69/.e19) + 4 * .e364) * .e38) * .e108 * .e3/.e104) + 
                64 * (.e161 * .e21/.e107)) * .e3)/.e22 + 0.5 * 
            (.e151 * .e440/.e22 - 32 * ((.e175 * .e21 + .e306) * 
                .e114 * .e4 * .e47/.e149)) - (.e215 * .e440 + 
            ((32 * (.e143 * .e175) - .e114 * (32 * .e364 + 64 * 
                (.e175 * .e136 * .e10/.e78))) * .e21 + .e428) * 
                .e4 * .e47/.e149) * .e3) * .e3 + (2 - 4 * .e85) * 
            .e7 * .e21 * .e20/.e44), f1 = geno_q * ((((128 * 
            (.e6 * .e21/.e87) + 2 * ((.e38 * (4 * (.e69/.e19) + 
            4 * .e418) + 2 * .e141) * .e108 * .e3/.e104)) * .e3/.e10 - 
            32 * .e304) * .e151 * .e4/.e22 - ((((.e114 * (128 * 
            (.e136/.e78) + 32 * (.e418/.e10)) - 64 * (.e143/.e10)) * 
            .e7 * .e21 + .e201 - .e213) * .e47/.e149 - .e215 * 
            .e432 * .e4) * .e3 + 0.5 * (.e151 * .e432 * .e4/.e22 + 
            32 * (.e114 * (.e35 - 4 * .e36) * .e47/.e149)))) * 
            .e3 + (.e448 - 4) * .e4 * .e21 * .e20/.e44) * .e4, 
        b0 = geno_q * ((((.e356 * .e186 + .e317 * .e229/.e10) * 
            .e3 + .e114 * (32 * (.e319 - .e102 * .e300/.e78) + 
            64 * ((((2 * (.e236/.e10) + 2 * ((0.5 * (.e352/.e14) - 
                .e452) * .e10 + 2 * .e382)) * .e38 - .e136 * 
                .e435 * .e3/.e10) * .e10 + .e165 * (.e89 - 2 * 
                (.e300 * .e10/.e78)))/.e78)) + 32 * (((((.e79 * 
            .e183/.e40 - .e282) * .e3 - .e117 * .e183) * .e28/.e152 + 
            tij * (0.5 * ((.e251 - 2 * .e372) * .e6 * .e3 + 2 * 
                .e60) + 2 * .e335)/.e10) * .e70 + .e143 * .e300/.e78 + 
            (0.5 * (((.e331 * .e14/2 - .e257) * .e3 + 0.5)/.e10) + 
                0.5 * (t0 * (2 * .e64 - .e254 * .e6 * .e3/.e22)) - 
                .e134 * (2 * .e255 + 2/.e9) * .e3) * .e47/.e10) * 
            .e38 + 2 * .e323)) * .e4 * .e47 * .e21 * .e3/.e149 + 
            ((.e251 - .e395) * .e226 - ((128/.e107 + 64 * .e438) * 
                .e7 * .e112 + 2 * ((((2 * ((((0.5 * .e352 - 2 * 
                (.e69 * .e97/.e19))/.e14 - .e452) * .e38 - 2 * 
                .e380)/.e19) + 4 * .e319) * .e38 - .e141 * .e435 * 
                .e3/.e10)/.e104 - (.e19 * (4 - .e444) * .e3/.e10 + 
                2 * (.e97 * .e12/.e14)) * .e141 * .e38 * .e12 * 
                .e52/.e291) * .e108 * .e3) + 2 * .e399) * .e151 * 
                .e3)/.e22 + .e215 * .e403 - (((.e139 * .e40 - 
            .e183 * .e6 * .e28)/.e10 + 2 * (2 * .e387 - .e282 * 
            .e28 * .e10) - 8 * (.e189 * (2 * .e412 - .e238 * 
            .e10) * .e40 * .e10/.e159))/.e159 + (2 * (.e289 * 
            .e10 + 2 * .e332) + 4)/.e155 - .e194 * (32 * ((.e9/.e423 + 
            4 * .e3) * .e9/.e14) - .e146/.e10)/.e277) * .e220) * 
            .e3 + ((0.5 * (.e314/.e10) - 8 * (.e438 * .e7 * .e112)) * 
            .e3 + (0.5 * (1 - 32 * .e422) - 0.5 * .e139)/.e10) * 
            .e20 + 0.5 * (((.e251 - (.e395 + 2 * .e375)) * .e220 - 
            .e403 * .e151)/.e22 - 32 * (((.e356 * .e38 - .e114 * 
            (.e228 + .e315)/.e10) * .e3/.e149 - .e114 * ((16 * 
            .e115 + .e273) * .e12 + (2 - .e444) * .e19 * .e44 * 
            .e3/.e10) * .e38 * .e52/.e290) * .e4 * .e47 * .e21 * 
            .e3)) - 0.5 * (((.e282 - .e309 * .e183/.e40) * .e28 + 
            (.e331 * .e40 - .e45 * .e183 * .e28)/.e22)/.e40)) * 
            (1 - 0.5 * geno_b) * .e5, b2 = geno_b * geno_q * 
            ((((.e354 * .e186 + .e313 * .e229/.e10) * .e3 + .e114 * 
                (32 * (.e318 - .e102 * .e303/.e78) + 64 * ((((2 * 
                  (((2 - .e221) * .e3 + .e263)/.e10) + 2 * ((0.5 * 
                  (.e350/.e14) - .e450) * .e10 + .e382)) * .e38 - 
                  .e136 * .e434 * .e3/.e10) * .e10 + (.e53 - 
                  2 * (.e303 * .e10/.e78)) * .e136 * .e38)/.e78)) + 
                32 * (((((.e79 * .e180/.e40 - .e280) * .e3 - 
                  .e117 * .e180) * .e28/.e152 + tij * (.e335 + 
                  0.5 * (((.e250 - .e372) * .e6 + .e144) * .e3 - 
                    0.5))/.e10) * .e70 + .e143 * .e303/.e78 + 
                  (0.5 * ((.e329 * .e3 * .e14/2 + .e124/2)/.e10) + 
                    0.5 * (t0 * ((.e14/2 - .e252 * .e6/2) * .e3/.e10 + 
                      0.5)) - .e134 * (1/.e9 + .e255) * .e3) * 
                    .e47/.e10) * .e38 + .e323)) * .e4 * .e47 * 
                .e21 * .e3/.e149 + ((.e250 - .e371) * .e226 - 
                (.e399 + (64 * .e430 + 64/.e107) * .e7 * .e112 + 
                  2 * ((((2 * ((((0.5 * .e350 - 2 * (.e95 * .e69/.e19))/.e14 - 
                    .e450) * .e38 - .e380)/.e19) + 4 * .e318) * 
                    .e38 - .e141 * .e434 * .e3/.e10)/.e104 - 
                    ((2 - .e436) * .e19 * .e3/.e10 + 2 * (.e95 * 
                      .e12/.e14)) * .e141 * .e38 * .e12 * .e52/.e291) * 
                    .e108 * .e3)) * .e151 * .e3)/.e22 + .e215 * 
                .e398 - (((.e154 * .e40 - .e180 * .e6 * .e28)/.e10 + 
                2 * (.e387 - .e280 * .e28 * .e10) - 8 * (.e189 * 
                (.e412 - .e237 * .e10) * .e40 * .e10/.e159))/.e159 + 
                (2 + 2 * (.e287 * .e10 + .e332))/.e155 - .e194 * 
                (32 * ((.e9/(2 * .e423) + .e11) * .e9/.e14) - 
                  .e146/.e22)/.e277) * .e220) * .e3 + ((0.5 * 
                (.e311/.e10) - 8 * (.e430 * .e7 * .e112)) * .e3 + 
                (0.5 * (0.5 - 16 * .e422) - 0.5 * .e154)/.e10) * 
                .e20 + 0.5 * (((.e250 - (.e371 + .e375)) * .e220 - 
                .e398 * .e151)/.e22 - 32 * (((.e354 * .e38 - 
                .e114 * (.e105 + .e75)/.e10) * .e3/.e149 - .e114 * 
                ((1 - .e436) * .e19 * .e44 * .e3/.e10 + (.e272 + 
                  8 * .e115) * .e12) * .e38 * .e52/.e290) * .e4 * 
                .e47 * .e21 * .e3)) - 0.5 * (((.e280 - .e309 * 
                .e180/.e40) * .e28 + (.e329 * .e40 - .e45 * .e180 * 
                .e28)/.e22)/.e40)) * .e5)
}

deriv_mu_int_f0_ff1_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    tij, r0, m0, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- .e4^2
    .e7 <- sqrt(.e5 + 2 * ((b0 + geno_b * (b2 - b0)/2)^2 * .e3))
    .e8 <- 2 * .e3
    .e9 <- 2 * .e7
    .e10 <- .e4 + .e7
    .e12 <- r0 - .e10/.e8
    .e13 <- t0 * .e7
    .e14 <- .e8 + 2 * (.e7/.e12)
    .e16 <- .e9^2
    .e17 <- .e5/.e7
    .e18 <- exp(-.e13)
    .e19 <- tij - t0
    .e23 <- 2 * .e17 - .e9
    .e24 <- .e8 - .e14 * exp(2 * (.e7 * .e19))
    .e25 <- exp(-(2 * .e13))
    .e28 <- (.e3 * .e12/.e9 + 0.5) * .e18 + (.e3/.e24 - 0.5) * 
        exp(-(tij * .e7))
    .e31 <- .e14 * .e16 * .e10 * .e25
    .e33 <- .e14 * .e10^2 * .e25
    .e35 <- .e12/.e9 + 1/.e24
    .e37 <- 1 - 0.5 * geno_f
    .e38 <- .e18^2
    .e40 <- .e5 * .e19/.e16
    .e41 <- .e5/.e16
    .e42 <- .e17 - .e7
    c(f0 = ((.e35 * (64 * .e41 + 8 * (.e23^2 * .e38 * .e3/.e33))/.e9 - 
        64 * (.e28 * .e23 * .e4 * .e18/.e31)) * .e3 + 8 * .e40) * 
        .e37^2 * .e3, f2 = geno_f * ((.e35 * (32 * .e41 + 8 * 
        (.e42 * .e23 * .e38 * .e3/.e33))/.e9 - .e28 * (16 * .e23 + 
        32 * .e42) * .e4 * .e18/.e31) * .e3 + 4 * .e40) * .e37 * 
        .e3, f1 = ((.e28 * (32 * .e23 + 64 * .e17) * .e18/.e31 - 
        .e35 * (16 * (.e23 * .e38 * .e3/(.e33 * .e7)) + 64/.e16) * 
            .e4/.e9) * .e3 - 8 * (.e4 * .e19/.e16)) * .e37 * 
        .e4 * .e3)
}

deriv_mu_int_f2_ff1_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    tij, r0, m0, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- .e4^2
    .e7 <- sqrt(.e5 + 2 * ((b0 + geno_b * (b2 - b0)/2)^2 * .e3))
    .e8 <- 2 * .e3
    .e9 <- 2 * .e7
    .e10 <- .e4 + .e7
    .e12 <- r0 - .e10/.e8
    .e13 <- t0 * .e7
    .e14 <- .e8 + 2 * (.e7/.e12)
    .e15 <- .e5/.e7
    .e17 <- .e9^2
    .e18 <- exp(-.e13)
    .e19 <- tij - t0
    .e23 <- 2 * .e15 - .e9
    .e24 <- .e8 - .e14 * exp(2 * (.e7 * .e19))
    .e25 <- exp(-(2 * .e13))
    .e28 <- (.e3 * .e12/.e9 + 0.5) * .e18 + (.e3/.e24 - 0.5) * 
        exp(-(tij * .e7))
    .e31 <- .e14 * .e17 * .e10 * .e25
    .e33 <- .e14 * .e10^2 * .e25
    .e34 <- .e15 - .e7
    .e36 <- .e12/.e9 + 1/.e24
    .e37 <- .e18^2
    c(f2 = geno_f^2 * ((.e36 * (16 * (.e5/.e17) + 4 * (.e34 * 
        .e23 * .e37 * .e3/.e33))/.e9 - .e28 * (16 * .e34 + 8 * 
        .e23) * .e4 * .e18/.e31) * .e3 + 2 * (.e5 * .e19/.e17)) * 
        .e3, f1 = geno_f * ((.e28 * (16 * .e23 + 32 * .e15) * 
        .e18/.e31 - .e36 * (32/.e17 + 8 * (.e23 * .e37 * .e3/(.e33 * 
        .e7))) * .e4/.e9) * .e3 - 4 * (.e4 * .e19/.e17)) * .e4 * 
        .e3)
}

deriv_mu_int_f1_f1_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    tij, r0, m0, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    .e3 <- geno_q * (q2 - q0)/2 + q0
    .e4 <- a0 + geno_a * (a2 - a0)/2
    .e5 <- .e4^2
    .e6 <- .e5 + 2 * ((b0 + geno_b * (b2 - b0)/2)^2 * .e3)
    .e7 <- sqrt(.e6)
    .e8 <- 2 * .e3
    .e9 <- .e4 + .e7
    .e11 <- r0 - .e9/.e8
    .e12 <- 2 * .e7
    .e13 <- t0 * .e7
    .e14 <- .e8 + 2 * (.e7/.e11)
    .e16 <- .e12^2
    .e17 <- exp(-.e13)
    .e18 <- tij - t0
    .e21 <- .e8 - .e14 * exp(2 * (.e7 * .e18))
    .e22 <- exp(-(2 * .e13))
    (((.e11/.e12 + 1/.e21) * (32 * (.e5 * .e17^2 * .e3/(.e6 * 
        .e14 * .e9^2 * .e22)) + 64/.e16)/2 - 128 * (((.e3 * .e11/.e12 + 
        0.5) * .e17 + (.e3/.e21 - 0.5) * exp(-(tij * .e7))) * 
        .e4 * .e17/(.e14 * .e16 * .e9 * .e22))) * .e3/.e7 + 8 * 
        (.e18/.e16)) * .e5 * .e3
}

deriv_mu_int_m0_t_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    tij, r0, m0, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    .e1 <- exp(t0 * theta)
    .e2 <- exp(theta * tij)
    (1 - 0.5 * geno_mu) * (tij * .e2 - ((.e2 - .e1)/theta + t0 * .e1))/theta
}

deriv_mu_int_m2_t_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    tij, r0, m0, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    .e1 <- exp(t0 * theta)
    .e2 <- exp(theta * tij)
    0.5 * (geno_mu * (tij * .e2 - ((.e2 - .e1)/theta + t0 * .e1))/theta)
}

deriv_mu_int_t_t_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    tij, r0, m0, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    .e1 <- exp(t0 * theta)
    .e2 <- exp(theta * tij)
    (geno_mu * (mu02 - mu00)/2 + mu00) * (tij^2 * .e2 - ((2 * 
        (tij * .e2) - (2 * ((.e2 - .e1)/theta) + 2 * (t0 * .e1)))/theta + 
        t0^2 * .e1))/theta
}

d_f_i1_a0_abqff1mt_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
     d <- .Call('d_f_i1_a0_abqff1mt_g_c', a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu)
	return(d)
}

d_f_i1_a2_abqff1mt_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    d <- .Call('d_f_i1_a2_abqff1mt_g_c', a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu)
	return(d)
}

d_f_i1_b0_bqff1mt_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    d <- .Call('d_f_i1_b0_bqff1mt_g_c', a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu)
	return(d)
}


d_f_i1_b2_bqff1mt_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    d <- .Call('d_f_i1_b2_bqff1mt_g_c', a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu)
	return(d)
}

d_f_i1_q0_qff1mtb_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    d <- .Call('d_f_i1_q0_qff1mtb_g_c', a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu)
	return(d)
}

d_f_i1_q2_qff1mtb_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    d <- .Call('d_f_i1_q2_qff1mtb_g_c', a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu)
	return(d)
}

d_f_i1_f0_ff1mt_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    d <- .Call('d_f_i1_f0_ff1mt_g_c', a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu)
	return(d)
}

d_f_i1_f2_ff1mt_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    d <- .Call('d_f_i1_f2_ff1mt_g_c', a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu)
	return(d)
}

d_f_i1_f1_f1mt_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    d <- .Call('d_f_i1_f1_f1mt_g_c', a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu)
	return(d)
}

d_f_i1_m0_mt_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    d <- .Call('d_f_i1_m0_mt_g_c', a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu)
	return(d)
}

d_f_i1_m2_mt_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    d <- .Call('d_f_i1_m2_mt_g_c', a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu)
	return(d)
}

d_f_i1_t_t_g <-
function (a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, 
    m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu) 
{
    d <- .Call('d_f_i1_t_t_g_c', a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0, r0, tau, t0, geno_a, geno_b, geno_q, geno_f, geno_mu)
	return(d)
}

hes_loglik_g <- function(param,m0,r0,tau,yij,delta,tij, n_j,t0,geno_a,geno_b,geno_q,geno_f,geno_mu)
{
	
	deriv_a0_a0 <- deriv_a0_a2 <- deriv_a0_b0 <- deriv_a0_b2 <- deriv_a0_q0 <- deriv_a0_q2 <- deriv_a0_f0 <- deriv_a0_f2 <- deriv_a0_f1 <- deriv_a0_mu00 <- deriv_a0_mu02 <- deriv_a0_theta <- 0
	deriv_a2_a2 <- deriv_a2_b0 <- deriv_a2_b2 <- deriv_a2_q0 <- deriv_a2_q2 <- deriv_a2_f0 <- deriv_a2_f2 <- deriv_a2_f1 <- deriv_a2_mu00 <- deriv_a2_mu02 <- deriv_a2_theta <- 0
	deriv_b0_b0 <- deriv_b0_b2 <- deriv_b0_q0 <- deriv_b0_q2 <- deriv_b0_f0 <- deriv_b0_f2 <- deriv_b0_f1 <- deriv_b0_mu00 <- deriv_b0_mu02 <- deriv_b0_theta <- 0
	deriv_b2_b2 <- deriv_b2_q0 <- deriv_b2_q2 <- deriv_b2_f0 <- deriv_b2_f2 <- deriv_b2_f1 <- deriv_b2_mu00 <- deriv_b2_mu02 <- deriv_b2_theta <- 0
	deriv_q0_q0 <- deriv_q0_q2 <- deriv_q0_f0 <- deriv_q0_f2 <- deriv_q0_f1 <- deriv_q0_mu00 <- deriv_q0_mu02 <- deriv_q0_theta <- 0
	deriv_q2_q2 <- deriv_q2_f0 <- deriv_q2_f2 <- deriv_q2_f1 <- deriv_q2_mu00 <- deriv_q2_mu02 <- deriv_q2_theta <- 0
	deriv_f0_f0 <- deriv_f0_f2 <- deriv_f0_f1 <- deriv_f0_mu00 <- deriv_f0_mu02 <- deriv_f0_theta <- 0
	deriv_f2_f2 <- deriv_f2_f1 <- deriv_f2_mu00 <- deriv_f2_mu02 <- deriv_f2_theta <- 0
	deriv_f1_f1 <- deriv_f1_mu00 <- deriv_f1_mu02 <- deriv_f1_theta <- 0
	deriv_mu00_mu00 <- deriv_mu00_mu02 <- deriv_mu00_theta <- 0
	deriv_mu02_mu02 <- deriv_mu02_theta <- 0
	deriv_theta_theta <- 0
	
	a0 <- param[1]
	a2 <- param[2]
	b0 <- param[3]
	b2 <- param[4]
	q0 <- param[5]
	q2 <- param[6]
	f0 <- param[7]
	f2 <- param[8]
	f1 <- param[9]
	mu00 <- param[10]
	mu02 <- param[11]
	theta <- param[12]
	
	num_j <- length(yij)
	index <- 1:length(yij)
	
		re_1_a0 <- d_f_j1_a0_abq_g(a0, a2, b0, b2, q0, q2, r0[index], tij[index], t0[index], geno_a, geno_b, geno_q)
		re_1_a2 <- d_f_j1_a2_abq_g(a0, a2, b0, b2, q0, q2, r0[index], tij[index], t0[index], geno_a, geno_b, geno_q)
		re_1_b0 <- d_f_j1_b0_bq_g(a0, a2, b0, b2, q0, q2, r0[index], tij[index], t0[index], geno_a, geno_b, geno_q)
		re_1_b2 <- d_f_j1_b2_bq_g(a0, a2, b0, b2, q0, q2, r0[index], tij[index], t0[index], geno_a, geno_b, geno_q)
		re_1_q0 <- d_f_j1_q0_qb_g(a0, a2, b0, b2, q0, q2, r0[index], tij[index], t0[index], geno_a, geno_b, geno_q)
		re_1_q2 <- d_f_j1_q2_qb_g(a0, a2, b0, b2, q0, q2, r0[index], tij[index], t0[index], geno_a, geno_b, geno_q)
		re_2_a0 <- d_f_j2_a0_abqff1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1,m0[index],r0[index],tij[index],yij[index], t0[index], geno_a, geno_b, geno_q, geno_f)
		re_2_a2 <- d_f_j2_a2_abqff1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1,m0[index],r0[index],tij[index],yij[index], t0[index], geno_a, geno_b, geno_q, geno_f)
		re_2_b0 <- d_f_j2_b0_bqff1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, m0[index],r0[index],tij[index],yij[index], t0[index], geno_a, geno_b, geno_q, geno_f)
		re_2_b2 <- d_f_j2_b2_bqff1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, m0[index],r0[index],tij[index],yij[index], t0[index], geno_a, geno_b, geno_q, geno_f)
		re_2_q0 <- d_f_j2_q0_qff1b_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, m0[index],r0[index],tij[index],yij[index], t0[index], geno_a, geno_b, geno_q, geno_f)
		re_2_q2 <- d_f_j2_q2_qff1b_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, m0[index],r0[index],tij[index],yij[index], t0[index], geno_a, geno_b, geno_q, geno_f)
		re_2_f0 <- d_f_j2_f0_ff1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, m0[index],r0[index],tij[index],yij[index], t0[index], geno_a, geno_b, geno_q, geno_f)
		re_2_f2 <- d_f_j2_f2_ff1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, m0[index],r0[index],tij[index],yij[index], t0[index], geno_a, geno_b, geno_q, geno_f)
		re_2_f1 <- d_f_j2_f1_f1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, m0[index],r0[index],tij[index],yij[index], t0[index], geno_a, geno_b, geno_q, geno_f)
		re_4_a0 <- deriv_mu_int_a0_abqff1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, tij[index],r0[index],m0[index],t0[index], geno_a, geno_b, geno_q, geno_f, geno_mu)
		re_4_a2 <- deriv_mu_int_a2_abqff1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, tij[index],r0[index],m0[index],t0[index], geno_a, geno_b, geno_q, geno_f, geno_mu)
		re_4_b0 <- deriv_mu_int_b0_bqff1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, tij[index],r0[index],m0[index],t0[index], geno_a, geno_b, geno_q, geno_f, geno_mu)
		re_4_b2 <- deriv_mu_int_b2_bqff1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, tij[index],r0[index],m0[index],t0[index], geno_a, geno_b, geno_q, geno_f, geno_mu)
		re_4_q0 <- deriv_mu_int_q0_qff1b_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, tij[index],r0[index],m0[index],t0[index], geno_a, geno_b, geno_q, geno_f, geno_mu)
		re_4_q2 <- deriv_mu_int_q2_qff1b_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, tij[index],r0[index],m0[index],t0[index], geno_a, geno_b, geno_q, geno_f, geno_mu)
		re_4_f0 <- deriv_mu_int_f0_ff1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, tij[index],r0[index],m0[index],t0[index], geno_a, geno_b, geno_q, geno_f, geno_mu)
		re_4_f2 <- deriv_mu_int_f2_ff1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, tij[index],r0[index],m0[index],t0[index], geno_a, geno_b, geno_q, geno_f, geno_mu)
		re_4_f1 <- deriv_mu_int_f1_f1_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, tij[index],r0[index],m0[index],t0[index], geno_a, geno_b, geno_q, geno_f, geno_mu)
		re_4_mu00 <- deriv_mu_int_m0_t_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, tij[index],r0[index],m0[index],t0[index], geno_a, geno_b, geno_q, geno_f, geno_mu)
		re_4_mu02 <- deriv_mu_int_m2_t_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, tij[index],r0[index],m0[index],t0[index], geno_a, geno_b, geno_q, geno_f, geno_mu)
		re_4_theta <- deriv_mu_int_t_t_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, tij[index],r0[index],m0[index],t0[index], geno_a, geno_b, geno_q, geno_f, geno_mu)
	
		deriv_a0_a0 <- sum(re_1_a0[1:num_j]) + sum(re_2_a0[1:num_j]) - sum(re_4_a0[1:num_j])
		deriv_a0_a2 <- sum(re_1_a0[(num_j+1):(2*num_j)]) + sum(re_2_a0[(num_j+1):(2*num_j)]) - sum(re_4_a0[(num_j+1):(2*num_j)])
		deriv_a0_b0 <- sum(re_1_a0[(2*num_j+1):(3*num_j)]) + sum(re_2_a0[(2*num_j+1):(3*num_j)]) - sum(re_4_a0[(2*num_j+1):(3*num_j)])
		deriv_a0_b2 <- sum(re_1_a0[(3*num_j+1):(4*num_j)]) + sum(re_2_a0[(3*num_j+1):(4*num_j)]) - sum(re_4_a0[(3*num_j+1):(4*num_j)])
		deriv_a0_q0 <- sum(re_1_a0[(4*num_j+1):(5*num_j)]) + sum(re_2_a0[(4*num_j+1):(5*num_j)]) - sum(re_4_a0[(4*num_j+1):(5*num_j)])
		deriv_a0_q2 <- sum(re_1_a0[(5*num_j+1):(6*num_j)]) + sum(re_2_a0[(5*num_j+1):(6*num_j)]) - sum(re_4_a0[(5*num_j+1):(6*num_j)])
		deriv_a0_f0 <- sum(re_2_a0[(6*num_j+1):(7*num_j)]) - sum(re_4_a0[(6*num_j+1):(7*num_j)])
		deriv_a0_f2 <- sum(re_2_a0[(7*num_j+1):(8*num_j)]) - sum(re_4_a0[(7*num_j+1):(8*num_j)])
		deriv_a0_f1 <- sum(re_2_a0[(8*num_j+1):(9*num_j)]) - sum(re_4_a0[(8*num_j+1):(9*num_j)])
		#deriv_a_mu0 <- deriv_a_mu0 - sum(re_4_a[(5*num_j+1):(6*num_j)])
		#deriv_a_theta <- deriv_a_theta - sum(re_4_a[(6*num_j+1):(7*num_j)])
		
		deriv_a2_a2 <- sum(re_1_a2[1:num_j]) + sum(re_2_a2[1:num_j]) - sum(re_4_a2[1:num_j])
		deriv_a2_b0 <- sum(re_1_a2[(num_j+1):(2*num_j)]) + sum(re_2_a2[(num_j+1):(2*num_j)]) - sum(re_4_a2[(num_j+1):(2*num_j)])
		deriv_a2_b2 <- sum(re_1_a2[(2*num_j+1):(3*num_j)]) + sum(re_2_a2[(2*num_j+1):(3*num_j)]) - sum(re_4_a2[(2*num_j+1):(3*num_j)])
		deriv_a2_q0 <- sum(re_1_a2[(3*num_j+1):(4*num_j)]) + sum(re_2_a2[(3*num_j+1):(4*num_j)]) - sum(re_4_a2[(3*num_j+1):(4*num_j)])
		deriv_a2_q2 <- sum(re_1_a2[(4*num_j+1):(5*num_j)]) + sum(re_2_a2[(4*num_j+1):(5*num_j)]) - sum(re_4_a2[(4*num_j+1):(5*num_j)])
		deriv_a2_f0 <- sum(re_2_a2[(5*num_j+1):(6*num_j)]) - sum(re_4_a2[(5*num_j+1):(6*num_j)])
		deriv_a2_f2 <- sum(re_2_a2[(6*num_j+1):(7*num_j)]) - sum(re_4_a2[(6*num_j+1):(7*num_j)])
		deriv_a2_f1 <- sum(re_2_a2[(7*num_j+1):(8*num_j)]) - sum(re_4_a2[(7*num_j+1):(8*num_j)])
		
		deriv_b0_b0 <- sum(re_1_b0[1:num_j]) + sum(re_2_b0[1:num_j]) - sum(re_4_b0[1:num_j])
		deriv_b0_b2 <- sum(re_1_b0[(num_j+1):(2*num_j)]) + sum(re_2_b0[(num_j+1):(2*num_j)]) - sum(re_4_b0[(num_j+1):(2*num_j)])
		# deriv_b0_q0 <- sum(re_1_b0[(2*num_j+1):(3*num_j)]) + sum(re_2_b0[(2*num_j+1):(3*num_j)]) - sum(re_4_b0[(2*num_j+1):(3*num_j)])
		deriv_b0_q0 <- sum(re_1_q0[(2*num_j+1):(3*num_j)]) + sum(re_2_q0[(5*num_j+1):(6*num_j)]) - sum(re_4_q0[(5*num_j+1):(6*num_j)])
		# deriv_b0_q2 <- sum(re_1_b0[(3*num_j+1):(4*num_j)]) + sum(re_2_b0[(3*num_j+1):(4*num_j)]) - sum(re_4_b0[(3*num_j+1):(4*num_j)])
		deriv_b0_q2 <- sum(re_1_q2[(num_j+1):(2*num_j)]) + sum(re_2_q2[(4*num_j+1):(5*num_j)]) - sum(re_4_q2[(4*num_j+1):(5*num_j)])
		deriv_b0_f0 <- sum(re_2_b0[(4*num_j+1):(5*num_j)]) - sum(re_4_b0[(4*num_j+1):(5*num_j)])
		deriv_b0_f2 <- sum(re_2_b0[(5*num_j+1):(6*num_j)]) - sum(re_4_b0[(5*num_j+1):(6*num_j)])
		deriv_b0_f1 <- sum(re_2_b0[(6*num_j+1):(7*num_j)]) - sum(re_4_b0[(6*num_j+1):(7*num_j)])
		
		deriv_b2_b2 <- sum(re_1_b2[1:num_j]) + sum(re_2_b2[1:num_j]) - sum(re_4_b2[1:num_j])
		# deriv_b2_q0 <- sum(re_1_b2[(num_j+1):(2*num_j)]) + sum(re_2_b2[(num_j+1):(2*num_j)]) - sum(re_4_b2[(num_j+1):(2*num_j)])
		deriv_b2_q0 <- sum(re_1_q0[(3*num_j+1):(4*num_j)]) + sum(re_2_q0[(6*num_j+1):(7*num_j)]) - sum(re_4_q0[(6*num_j+1):(7*num_j)])
		# deriv_b2_q2 <- sum(re_1_b2[(2*num_j+1):(3*num_j)]) + sum(re_2_b2[(2*num_j+1):(3*num_j)]) - sum(re_4_b2[(2*num_j+1):(3*num_j)])
		deriv_b2_q2 <- sum(re_1_q2[(2*num_j+1):(3*num_j)]) + sum(re_2_q2[(5*num_j+1):(6*num_j)]) - sum(re_4_q2[(5*num_j+1):(6*num_j)])
		deriv_b2_f0 <- sum(re_2_b2[(3*num_j+1):(4*num_j)]) - sum(re_4_b2[(3*num_j+1):(4*num_j)])
		deriv_b2_f2 <- sum(re_2_b2[(4*num_j+1):(5*num_j)]) - sum(re_4_b2[(4*num_j+1):(5*num_j)])
		deriv_b2_f1 <- sum(re_2_b2[(5*num_j+1):(6*num_j)]) - sum(re_4_b2[(5*num_j+1):(6*num_j)])
		
		deriv_q0_q0 <- sum(re_1_q0[1:num_j]) + sum(re_2_q0[1:num_j]) - sum(re_4_q0[1:num_j])
		deriv_q0_q2 <- sum(re_1_q0[(num_j+1):(2*num_j)]) + sum(re_2_q0[(num_j+1):(2*num_j)]) - sum(re_4_q0[(num_j+1):(2*num_j)])
		deriv_q0_f0 <- sum(re_2_q0[(2*num_j+1):(3*num_j)]) - sum(re_4_q0[(2*num_j+1):(3*num_j)])
		deriv_q0_f2 <- sum(re_2_q0[(3*num_j+1):(4*num_j)]) - sum(re_4_q0[(3*num_j+1):(4*num_j)])
		deriv_q0_f1 <- sum(re_2_q0[(4*num_j+1):(5*num_j)]) - sum(re_4_q0[(4*num_j+1):(5*num_j)])
		#deriv_q_mu0 <- deriv_q_mu0 - sum(re_4_q[(3*num_j+1):(4*num_j)])
		#deriv_q_theta <- deriv_q_theta - sum(re_4_q[(4*num_j+1):(5*num_j)])
		
		deriv_q2_q2 <- sum(re_1_q2[1:num_j]) + sum(re_2_q2[1:num_j]) - sum(re_4_q2[1:num_j])
		deriv_q2_f0 <- sum(re_2_q2[(num_j+1):(2*num_j)]) - sum(re_4_q2[(num_j+1):(2*num_j)])
		deriv_q2_f2 <- sum(re_2_q2[(2*num_j+1):(3*num_j)]) - sum(re_4_q2[(2*num_j+1):(3*num_j)])
		deriv_q2_f1 <- sum(re_2_q2[(3*num_j+1):(4*num_j)]) - sum(re_4_q2[(3*num_j+1):(4*num_j)])
		
		deriv_f0_f0 <- sum(re_2_f0[1:num_j]) - sum(re_4_f0[1:num_j])
		deriv_f0_f2 <- sum(re_2_f0[(num_j+1):(2*num_j)]) - sum(re_4_f0[(num_j+1):(2*num_j)])
		deriv_f0_f1 <- sum(re_2_f0[(2*num_j+1):(3*num_j)]) - sum(re_4_f0[(2*num_j+1):(3*num_j)])
		#deriv_f_mu0 <- deriv_f_mu0 - sum(re_4_f[(2*num_j+1):(3*num_j)])
		#deriv_f_theta <- deriv_f_theta - sum(re_4_f[(3*num_j+1):(4*num_j)])
		
		deriv_f2_f2 <- sum(re_2_f2[1:num_j]) - sum(re_4_f2[1:num_j])
		deriv_f2_f1 <- sum(re_2_f2[(num_j+1):(2*num_j)]) - sum(re_4_f2[(num_j+1):(2*num_j)])
		
		deriv_f1_f1 <- sum(re_2_f1[1:num_j]) - sum(re_4_f1[1:num_j])
		#deriv_f1_mu0 <- deriv_f1_mu0 - sum(re_4_f1[(num_j+1):(2*num_j)])
		#deriv_f1_theta <- deriv_f1_theta - sum(re_4_f1[(2*num_j+1):(3*num_j)])
		
		#deriv_mu0_mu0 <- deriv_mu0_mu0 - sum(re_4_mu0[1:num_j])
		deriv_mu00_theta <- - sum(re_4_mu00[1:num_j])
		
		deriv_mu02_theta <- - sum(re_4_mu02[1:num_j])
		
		deriv_theta_theta <- - sum(re_4_theta[1:num_j])
		
	num_i <- length(tau)
	for(i in 1:num_i)
	{
		if(i==1)
		{
			num_j <- n_j[1]
			index <- 1:num_j
		}else{
			num_j <- n_j[i]
			index <- (sum(n_j[1:(i-1)])+1):sum(n_j[1:i])
		}
			
		# temp2 <- df3(a,b,q,f,f1,mu0,m0,r0,tau[i],delta[i]) - (df4(a,b,q,f,f1,mu0,tau[i]) + df5(a,b,q,f,f1,r0,tau[i]) + df6(a,b,q,f,f1,m0,r0,tau[i]) + df7(a,b,q,f,f1,m0,r0) + df8(a,b,q,f,f1,m0,r0,tau[i]))
		if(delta[i]>0)
		{
			sum_n_j <- sum(n_j[1:i])
			re_3_a0 <- d_f_i1_a0_abqff1mt_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0[sum_n_j],r0[sum_n_j],tau[i], t0[sum_n_j], geno_a[sum_n_j], geno_b[sum_n_j], geno_q[sum_n_j], geno_f[sum_n_j], geno_mu[sum_n_j])
			re_3_a2 <- d_f_i1_a2_abqff1mt_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta, m0[sum_n_j],r0[sum_n_j],tau[i], t0[sum_n_j], geno_a[sum_n_j], geno_b[sum_n_j], geno_q[sum_n_j], geno_f[sum_n_j], geno_mu[sum_n_j])
			re_3_b0 <- d_f_i1_b0_bqff1mt_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta,m0[sum_n_j],r0[sum_n_j],tau[i], t0[sum_n_j], geno_a[sum_n_j], geno_b[sum_n_j], geno_q[sum_n_j], geno_f[sum_n_j], geno_mu[sum_n_j])
			re_3_b2 <- d_f_i1_b2_bqff1mt_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta,m0[sum_n_j],r0[sum_n_j],tau[i], t0[sum_n_j], geno_a[sum_n_j], geno_b[sum_n_j], geno_q[sum_n_j], geno_f[sum_n_j], geno_mu[sum_n_j])			
			re_3_q0 <- d_f_i1_q0_qff1mtb_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta,m0[sum_n_j],r0[sum_n_j],tau[i], t0[sum_n_j], geno_a[sum_n_j], geno_b[sum_n_j], geno_q[sum_n_j], geno_f[sum_n_j], geno_mu[sum_n_j])
			re_3_q2 <- d_f_i1_q2_qff1mtb_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta,m0[sum_n_j],r0[sum_n_j],tau[i], t0[sum_n_j], geno_a[sum_n_j], geno_b[sum_n_j], geno_q[sum_n_j], geno_f[sum_n_j], geno_mu[sum_n_j])			
			re_3_f0 <- d_f_i1_f0_ff1mt_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta,m0[sum_n_j],r0[sum_n_j],tau[i], t0[sum_n_j], geno_a[sum_n_j], geno_b[sum_n_j], geno_q[sum_n_j], geno_f[sum_n_j], geno_mu[sum_n_j])
			re_3_f2 <- d_f_i1_f2_ff1mt_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta,m0[sum_n_j],r0[sum_n_j],tau[i], t0[sum_n_j], geno_a[sum_n_j], geno_b[sum_n_j], geno_q[sum_n_j], geno_f[sum_n_j], geno_mu[sum_n_j])
			re_3_f1 <- d_f_i1_f1_f1mt_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta,m0[sum_n_j],r0[sum_n_j],tau[i], t0[sum_n_j], geno_a[sum_n_j], geno_b[sum_n_j], geno_q[sum_n_j], geno_f[sum_n_j], geno_mu[sum_n_j])
			re_3_mu00 <- d_f_i1_m0_mt_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta,m0[sum_n_j],r0[sum_n_j],tau[i], t0[sum_n_j], geno_a[sum_n_j], geno_b[sum_n_j], geno_q[sum_n_j], geno_f[sum_n_j], geno_mu[sum_n_j])
			re_3_mu02 <- d_f_i1_m2_mt_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta,m0[sum_n_j],r0[sum_n_j],tau[i], t0[sum_n_j], geno_a[sum_n_j], geno_b[sum_n_j], geno_q[sum_n_j], geno_f[sum_n_j], geno_mu[sum_n_j])
			re_3_theta <- d_f_i1_t_t_g(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu00, mu02, theta,m0[sum_n_j],r0[sum_n_j],tau[i], t0[sum_n_j], geno_a[sum_n_j], geno_b[sum_n_j], geno_q[sum_n_j], geno_f[sum_n_j], geno_mu[sum_n_j])
			# re_3_m_all <- d_f_i1_m_abqff1(a0, a2, b0, b2, q0, q2, f0, f2, f1, mu0, theta,m0[sum_n_j],r0[sum_n_j],tau[i], t0[sum_n_j], geno_a[sum_n_j], geno_b[sum_n_j], geno_q[sum_n_j], geno_f[sum_n_j])
			
			## continue here
			deriv_a0_a0 <- deriv_a0_a0 + re_3_a0[1]
			deriv_a0_a2 <- deriv_a0_a2 + re_3_a0[2]
			deriv_a0_b0 <- deriv_a0_b0 + re_3_a0[3]
			deriv_a0_b2 <- deriv_a0_b2 + re_3_a0[4]
			deriv_a0_q0 <- deriv_a0_q0 + re_3_a0[5]
			deriv_a0_q2 <- deriv_a0_q2 + re_3_a0[6]
			deriv_a0_f0 <- deriv_a0_f0 + re_3_a0[7]
			deriv_a0_f2 <- deriv_a0_f2 + re_3_a0[8]
			deriv_a0_f1 <- deriv_a0_f1 + re_3_a0[9]
			deriv_a0_mu00 <- deriv_a0_mu00 + re_3_a0[10]
			deriv_a0_mu02 <- deriv_a0_mu02 + re_3_a0[11]
			deriv_a0_theta <- deriv_a0_theta + re_3_a0[12]
			
			deriv_a2_a2 <- deriv_a2_a2 + re_3_a2[1]
			deriv_a2_b0 <- deriv_a2_b0 + re_3_a2[2]
			deriv_a2_b2 <- deriv_a2_b2 + re_3_a2[3]
			deriv_a2_q0 <- deriv_a2_q0 + re_3_a2[4]
			deriv_a2_q2 <- deriv_a2_q2 + re_3_a2[5]
			deriv_a2_f0 <- deriv_a2_f0 + re_3_a2[6]
			deriv_a2_f2 <- deriv_a2_f2 + re_3_a2[7]
			deriv_a2_f1 <- deriv_a2_f1 + re_3_a2[8]
			deriv_a2_mu00 <- deriv_a2_mu00 + re_3_a2[9]
			deriv_a2_mu02 <- deriv_a2_mu02 + re_3_a2[10]
			deriv_a2_theta <- deriv_a2_theta + re_3_a2[11]
			
			deriv_b0_b0 <- deriv_b0_b0 + re_3_b0[1]
			deriv_b0_b2 <- deriv_b0_b2 + re_3_b0[2]
			#deriv_b0_q0 <- deriv_b0_q0 + re_3_b0[3]
			#deriv_b0_q2 <- deriv_b0_q2 + re_3_b0[4]
			deriv_b0_q0 <- deriv_b0_q0 + re_3_q0[9]
			deriv_b0_q2 <- deriv_b0_q2 + re_3_q2[8]
			deriv_b0_f0 <- deriv_b0_f0 + re_3_b0[5]
			deriv_b0_f2 <- deriv_b0_f2 + re_3_b0[6]
			deriv_b0_f1 <- deriv_b0_f1 + re_3_b0[7]
			deriv_b0_mu00 <- deriv_b0_mu00 + re_3_b0[8]
			deriv_b0_mu02 <- deriv_b0_mu02 + re_3_b0[9]
			deriv_b0_theta <- deriv_b0_theta + re_3_b0[10]
			
			deriv_b2_b2 <- deriv_b2_b2 + re_3_b2[1]
			#deriv_b2_q0 <- deriv_b2_q0 + re_3_b2[2]
			#deriv_b2_q2 <- deriv_b2_q2 + re_3_b2[3]
			deriv_b2_q0 <- deriv_b2_q0 + re_3_q0[10]
			deriv_b2_q2 <- deriv_b2_q2 + re_3_q2[9]
			deriv_b2_f0 <- deriv_b2_f0 + re_3_b2[4]
			deriv_b2_f2 <- deriv_b2_f2 + re_3_b2[5]
			deriv_b2_f1 <- deriv_b2_f1 + re_3_b2[6]
			deriv_b2_mu00 <- deriv_b2_mu00 + re_3_b2[7]
			deriv_b2_mu02 <- deriv_b2_mu02 + re_3_b2[8]
			deriv_b2_theta <- deriv_b2_theta + re_3_b2[9]
			
			deriv_q0_q0 <- deriv_q0_q0 + re_3_q0[1]
			deriv_q0_q2 <- deriv_q0_q2 + re_3_q0[2]
			deriv_q0_f0 <- deriv_q0_f0 + re_3_q0[3]
			deriv_q0_f2 <- deriv_q0_f2 + re_3_q0[4]
			deriv_q0_f1 <- deriv_q0_f1 + re_3_q0[5]
			deriv_q0_mu00 <- deriv_q0_mu00 + re_3_q0[6]
			deriv_q0_mu02 <- deriv_q0_mu02 + re_3_q0[7]
			deriv_q0_theta <- deriv_q0_theta + re_3_q0[8]
			
			deriv_q2_q2 <- deriv_q2_q2 + re_3_q2[1]
			deriv_q2_f0 <- deriv_q2_f0 + re_3_q2[2]
			deriv_q2_f2 <- deriv_q2_f2 + re_3_q2[3]
			deriv_q2_f1 <- deriv_q2_f1 + re_3_q2[4]
			deriv_q2_mu00 <- deriv_q2_mu00 + re_3_q2[5]
			deriv_q2_mu02 <- deriv_q2_mu02 + re_3_q2[6]
			deriv_q2_theta <- deriv_q2_theta + re_3_q2[7]
			
			deriv_f0_f0 <- deriv_f0_f0 + re_3_f0[1]
			deriv_f0_f2 <- deriv_f0_f2 + re_3_f0[2]
			deriv_f0_f1 <- deriv_f0_f1 + re_3_f0[3]
			deriv_f0_mu00 <- deriv_f0_mu00 + re_3_f0[4]
			deriv_f0_mu02 <- deriv_f0_mu02 + re_3_f0[5]
			deriv_f0_theta <- deriv_f0_theta + re_3_f0[6]
			
			deriv_f2_f2 <- deriv_f2_f2 + re_3_f2[1]
			deriv_f2_f1 <- deriv_f2_f1 + re_3_f2[2]
			deriv_f2_mu00 <- deriv_f2_mu00 + re_3_f2[3]
			deriv_f2_mu02 <- deriv_f2_mu02 + re_3_f2[4]
			deriv_f2_theta <- deriv_f2_theta + re_3_f2[5]
			
			deriv_f1_f1 <- deriv_f1_f1 + re_3_f1[1]
			deriv_f1_mu00 <- deriv_f1_mu00 + re_3_f1[2]
			deriv_f1_mu02 <- deriv_f1_mu02 + re_3_f1[3]
			deriv_f1_theta <- deriv_f1_theta + re_3_f1[4]
			
			deriv_mu00_mu00 <- deriv_mu00_mu00 + re_3_mu00[1]
			deriv_mu00_mu02 <- deriv_mu00_mu02 + re_3_mu00[2]
			deriv_mu00_theta <- deriv_mu00_theta + re_3_mu00[3]
			
			deriv_mu02_mu02 <- deriv_mu02_mu02 + re_3_mu02[1]
			deriv_mu02_theta <- deriv_mu02_theta + re_3_mu02[2]
			
			deriv_theta_theta <- deriv_theta_theta + re_3_theta[1]
			
		}else{ 
		# re_3 <- rep(0,7)
		}
		
		
		# print(deriv_q)
	}
	
	hes <- matrix(0, 12, 12)
	hes[1,] <- c(deriv_a0_a0, deriv_a0_a2, deriv_a0_b0, deriv_a0_b2, deriv_a0_q0, deriv_a0_q2, deriv_a0_f0, deriv_a0_f2, deriv_a0_f1, deriv_a0_mu00, deriv_a0_mu02, deriv_a0_theta)
	hes[2,2:12] <- c(deriv_a2_a2, deriv_a2_b0, deriv_a2_b2, deriv_a2_q0, deriv_a2_q2, deriv_a2_f0, deriv_a2_f2, deriv_a2_f1, deriv_a2_mu00, deriv_a2_mu02, deriv_a2_theta)
	hes[3,3:12] <- c(deriv_b0_b0, deriv_b0_b2, deriv_b0_q0, deriv_b0_q2, deriv_b0_f0, deriv_b0_f2, deriv_b0_f1, deriv_b0_mu00, deriv_b0_mu02, deriv_b0_theta)
	hes[4,4:12] <- c(deriv_b2_b2, deriv_b2_q0, deriv_b2_q2, deriv_b2_f0, deriv_b2_f2, deriv_b2_f1, deriv_b2_mu00, deriv_b2_mu02, deriv_b2_theta)
	hes[5,5:12] <- c(deriv_q0_q0, deriv_q0_q2, deriv_q0_f0, deriv_q0_f2, deriv_q0_f1, deriv_q0_mu00, deriv_q0_mu02, deriv_q0_theta)
	hes[6,6:12] <- c(deriv_q2_q2, deriv_q2_f0, deriv_q2_f2, deriv_q2_f1, deriv_q2_mu00, deriv_q2_mu02, deriv_q2_theta)
	hes[7,7:12] <- c(deriv_f0_f0, deriv_f0_f2, deriv_f0_f1, deriv_f0_mu00, deriv_f0_mu02, deriv_f0_theta)
	hes[8,8:12] <- c(deriv_f2_f2, deriv_f2_f1, deriv_f2_mu00, deriv_f2_mu02, deriv_f2_theta)
	hes[9,9:12] <- c(deriv_f1_f1, deriv_f1_mu00, deriv_f1_mu02, deriv_f1_theta)
	hes[10,10:12] <- c(deriv_mu00_mu00, deriv_mu00_mu02, deriv_mu00_theta)
	hes[11,11:12] <- c(deriv_mu02_mu02, deriv_mu02_theta)
	hes[12,12] <- c(deriv_theta_theta)
	dia <- diag(hes)
	hes <- hes + t(hes)
	diag(hes) <- dia
	(-1)*hes
}

Try the stpm package in your browser

Any scripts or data that you put into this service are public.

stpm documentation built on Sept. 5, 2022, 5:06 p.m.