! Predictor variable - X
! Mediator variable(s) – M
! Moderator variable(s) – W, Z, V, Q
! Outcome variable - Y
USEVARIABLES = X M W Z V Q Y XW XZ WZ XV XQ VQ MV MQ XWZ XVQ MVQ;
! Create interaction terms
! Note that they have to be placed at end of USEVARIABLES subcommand above
DEFINE:
   MQ = M*Q;
   MV = M*V;
   XW = X*W;
   XZ = X*Z;
   XQ = X*Q;
   XV = X*V;
   WZ = W*Z;
   VQ = V*Q;
   MVQ = M*V*Q;
   XWZ = X*W*Z;
   XVQ = X*V*Q;
ANALYSIS:
   TYPE = GENERAL;
   ESTIMATOR = ML;
   BOOTSTRAP = 10000;
! In model statement name each path and intercept using parentheses
MODEL:
   [Y] (b0);
   Y ON M (b1);
   Y ON MV (b2);
   Y ON MQ (b3);
   Y ON MVQ (b4);
   Y ON X (cdash1);
   Y ON V (cdash2);
   Y ON Q (cdash3);
   Y ON XV (cdash4);
   Y ON XQ (cdash5);
   Y ON VQ (cdash6);
   Y ON XVQ (cdash7);
   [M] (a0);
   M ON X (a1);
   M ON W (a2);
   M ON Z (a3);
   M ON XW (a4);
   M ON XZ (a5);
   M ON WZ (a6);
   M ON XWZ (a7);
! Use model constraint subcommand to test conditional indirect effects
! You need to pick low, medium and high moderator values for W, Z, V, Q
! for example, of 1 SD below mean, mean, 1 SD above mean
! 4 moderators, 3 values for each, gives 81 combinations
! arbitrary naming convention for conditional indirect and total effects used below:
! HHML = high value of W, high value of Z, medium value of V and low value of Q.
MODEL CONSTRAINT:
    NEW(LOW_W MED_W HIGH_W LOW_Z MED_Z HIGH_Z LOW_V MED_V HIGH_V LOW_Q MED_Q HIGH_Q
    ILLLL IMLLL IHLLL ILMLL IMMLL IHMLL ILHLL IMHLL IHHLL
    ILLML IMLML IHLML ILMML IMMML IHMML ILHML IMHML IHHML
    ILLHL IMLHL IHLHL ILMHL IMMHL IHMHL ILHHL IMHHL IHHHL
    ILLLM IMLLM IHLLM ILMLM IMMLM IHMLM ILHLM IMHLM IHHLM
    ILLMM IMLMM IHLMM ILMMM IMMMM IHMMM ILHMM IMHMM IHHMM
    ILLHM IMLHM IHLHM ILMHM IMMHM IHMHM ILHHM IMHHM IHHHM
    ILLLH IMLLH IHLLH ILMLH IMMLH IHMLH ILHLH IMHLH IHHLH
    ILLMH IMLMH IHLMH ILMMH IMMMH IHMMH ILHMH IMHMH IHHMH
    ILLHH IMLHH IHLHH ILMHH IMMHH IHMHH ILHHH IMHHH IHHHH
    DLOV_LOQ DMEV_LOQ DHIV_LOQ DLOV_MEQ DMEV_MEQ DHIV_MEQ
    DLOV_HIQ DMEV_HIQ DHIV_HIQ
    TLLLL TMLLL THLLL TLMLL TMMLL THMLL TLHLL TMHLL THHLL
    TLLML TMLML THLML TLMML TMMML THMML TLHML TMHML THHML
    TLLHL TMLHL THLHL TLMHL TMMHL THMHL TLHHL TMHHL THHHL
    TLLLM TMLLM THLLM TLMLM TMMLM THMLM TLHLM TMHLM THHLM
    TLLMM TMLMM THLMM TLMMM TMMMM THMMM TLHMM TMHMM THHMM
    TLLHM TMLHM THLHM TLMHM TMMHM THMHM TLHHM TMHHM THHHM
    TLLLH TMLLH THLLH TLMLH TMMLH THMLH TLHLH TMHLH THHLH
    TLLMH TMLMH THLMH TLMMH TMMMH THMMH TLHMH TMHMH THHMH
    TLLHH TMLHH THLHH TLMHH TMMHH THMHH TLHHH TMHHH THHHH);
    LOW_W = #LOWW;   ! replace #LOWW in the code with your chosen low value of W
    MED_W = #MEDW;   ! replace #MEDW in the code with your chosen medium value of W
    HIGH_W = #HIGHW;   ! replace #HIGHW in the code with your chosen high value of W
    LOW_Z = #LOWZ;   ! replace #LOWZ in the code with your chosen low value of Z
    MED_Z = #MEDZ;   ! replace #MEDZ in the code with your chosen medium value of Z
    HIGH_Z = #HIGHZ;   ! replace #HIGHZ in the code with your chosen high value of Z
    LOW_V = #LOWV;   ! replace #LOWV in the code with your chosen low value of V
    MED_V = #MEDV;   ! replace #MEDV in the code with your chosen medium value of V
    HIGH_V = #HIGHV;   ! replace #HIGHV in the code with your chosen high value of V
    LOW_Q = #LOWQ;   ! replace #LOWQ in the code with your chosen low value of Q
    MED_Q = #MEDQ;   ! replace #MEDQ in the code with your chosen medium value of Q
    HIGH_Q = #HIGHQ;   ! replace #HIGHQ in the code with your chosen high value of Q
! Calc conditional indirect effects for each combination of moderator values
    ILLLL = a1*b1 + a4*b1*LOW_W + a5*b1*LOW_Z + a7*b1*LOW_W*LOW_Z +
     a1*b2*LOW_V + a4*b2*LOW_W*LOW_V + a5*b2*LOW_Z*LOW_V +
     a7*b2*LOW_W*LOW_Z*LOW_V + a1*b3*LOW_Q + a4*b3*LOW_W*LOW_Q +
     a5*b3*LOW_Z*LOW_Q + a7*b3*LOW_W*LOW_Z*LOW_Q + a1*b4*LOW_V*LOW_Q +
     a4*b4*LOW_W*LOW_V*LOW_Q + a5*b4*LOW_Z*LOW_V*LOW_Q +
     a7*b4*LOW_W*LOW_Z*LOW_V*LOW_Q;
    IMLLL = a1*b1 + a4*b1*MED_W + a5*b1*LOW_Z + a7*b1*MED_W*LOW_Z +
     a1*b2*LOW_V + a4*b2*MED_W*LOW_V + a5*b2*LOW_Z*LOW_V +
     a7*b2*MED_W*LOW_Z*LOW_V + a1*b3*LOW_Q + a4*b3*MED_W*LOW_Q +
     a5*b3*LOW_Z*LOW_Q + a7*b3*MED_W*LOW_Z*LOW_Q + a1*b4*LOW_V*LOW_Q +
     a4*b4*MED_W*LOW_V*LOW_Q + a5*b4*LOW_Z*LOW_V*LOW_Q +
     a7*b4*MED_W*LOW_Z*LOW_V*LOW_Q;
    IHLLL = a1*b1 + a4*b1*HIGH_W + a5*b1*LOW_Z + a7*b1*HIGH_W*LOW_Z +
     a1*b2*LOW_V + a4*b2*HIGH_W*LOW_V + a5*b2*LOW_Z*LOW_V +
     a7*b2*HIGH_W*LOW_Z*LOW_V + a1*b3*LOW_Q + a4*b3*HIGH_W*LOW_Q +
     a5*b3*LOW_Z*LOW_Q + a7*b3*HIGH_W*LOW_Z*LOW_Q + a1*b4*LOW_V*LOW_Q +
     a4*b4*HIGH_W*LOW_V*LOW_Q + a5*b4*LOW_Z*LOW_V*LOW_Q +
     a7*b4*HIGH_W*LOW_Z*LOW_V*LOW_Q;
    ILMLL = a1*b1 + a4*b1*LOW_W + a5*b1*MED_Z + a7*b1*LOW_W*MED_Z +
     a1*b2*LOW_V + a4*b2*LOW_W*LOW_V + a5*b2*MED_Z*LOW_V +
     a7*b2*LOW_W*MED_Z*LOW_V + a1*b3*LOW_Q + a4*b3*LOW_W*LOW_Q +
     a5*b3*MED_Z*LOW_Q + a7*b3*LOW_W*MED_Z*LOW_Q + a1*b4*LOW_V*LOW_Q +
     a4*b4*LOW_W*LOW_V*LOW_Q + a5*b4*MED_Z*LOW_V*LOW_Q +
     a7*b4*LOW_W*MED_Z*LOW_V*LOW_Q;
    IMMLL = a1*b1 + a4*b1*MED_W + a5*b1*MED_Z + a7*b1*MED_W*MED_Z +
     a1*b2*LOW_V + a4*b2*MED_W*LOW_V + a5*b2*MED_Z*LOW_V +
     a7*b2*MED_W*MED_Z*LOW_V + a1*b3*LOW_Q + a4*b3*MED_W*LOW_Q +
     a5*b3*MED_Z*LOW_Q + a7*b3*MED_W*MED_Z*LOW_Q + a1*b4*LOW_V*LOW_Q +
     a4*b4*MED_W*LOW_V*LOW_Q + a5*b4*MED_Z*LOW_V*LOW_Q +
     a7*b4*MED_W*MED_Z*LOW_V*LOW_Q;
    IHMLL = a1*b1 + a4*b1*HIGH_W + a5*b1*MED_Z + a7*b1*HIGH_W*MED_Z +
     a1*b2*LOW_V + a4*b2*HIGH_W*LOW_V + a5*b2*MED_Z*LOW_V +
     a7*b2*HIGH_W*MED_Z*LOW_V + a1*b3*LOW_Q + a4*b3*HIGH_W*LOW_Q +
     a5*b3*MED_Z*LOW_Q + a7*b3*HIGH_W*MED_Z*LOW_Q + a1*b4*LOW_V*LOW_Q +
     a4*b4*HIGH_W*LOW_V*LOW_Q + a5*b4*MED_Z*LOW_V*LOW_Q +
     a7*b4*HIGH_W*MED_Z*LOW_V*LOW_Q;
    ILHLL = a1*b1 + a4*b1*LOW_W + a5*b1*HIGH_Z + a7*b1*LOW_W*HIGH_Z +
     a1*b2*LOW_V + a4*b2*LOW_W*LOW_V + a5*b2*HIGH_Z*LOW_V +
     a7*b2*LOW_W*HIGH_Z*LOW_V + a1*b3*LOW_Q + a4*b3*LOW_W*LOW_Q +
     a5*b3*HIGH_Z*LOW_Q + a7*b3*LOW_W*HIGH_Z*LOW_Q + a1*b4*LOW_V*LOW_Q +
     a4*b4*LOW_W*LOW_V*LOW_Q + a5*b4*HIGH_Z*LOW_V*LOW_Q +
     a7*b4*LOW_W*HIGH_Z*LOW_V*LOW_Q;
    IMHLL = a1*b1 + a4*b1*MED_W + a5*b1*HIGH_Z + a7*b1*MED_W*HIGH_Z +
     a1*b2*LOW_V + a4*b2*MED_W*LOW_V + a5*b2*HIGH_Z*LOW_V +
     a7*b2*MED_W*HIGH_Z*LOW_V + a1*b3*LOW_Q + a4*b3*MED_W*LOW_Q +
     a5*b3*HIGH_Z*LOW_Q + a7*b3*MED_W*HIGH_Z*LOW_Q + a1*b4*LOW_V*LOW_Q +
     a4*b4*MED_W*LOW_V*LOW_Q + a5*b4*HIGH_Z*LOW_V*LOW_Q +
     a7*b4*MED_W*HIGH_Z*LOW_V*LOW_Q;
    IHHLL = a1*b1 + a4*b1*HIGH_W + a5*b1*HIGH_Z + a7*b1*HIGH_W*HIGH_Z +
     a1*b2*LOW_V + a4*b2*HIGH_W*LOW_V + a5*b2*HIGH_Z*LOW_V +
     a7*b2*HIGH_W*HIGH_Z*LOW_V + a1*b3*LOW_Q + a4*b3*HIGH_W*LOW_Q +
     a5*b3*HIGH_Z*LOW_Q + a7*b3*HIGH_W*HIGH_Z*LOW_Q + a1*b4*LOW_V*LOW_Q +
     a4*b4*HIGH_W*LOW_V*LOW_Q + a5*b4*HIGH_Z*LOW_V*LOW_Q +
     a7*b4*HIGH_W*HIGH_Z*LOW_V*LOW_Q;
    ILLML = a1*b1 + a4*b1*LOW_W + a5*b1*LOW_Z + a7*b1*LOW_W*LOW_Z +
     a1*b2*MED_V + a4*b2*LOW_W*MED_V + a5*b2*LOW_Z*MED_V +
     a7*b2*LOW_W*LOW_Z*MED_V + a1*b3*LOW_Q + a4*b3*LOW_W*LOW_Q +
     a5*b3*LOW_Z*LOW_Q + a7*b3*LOW_W*LOW_Z*LOW_Q + a1*b4*MED_V*LOW_Q +
     a4*b4*LOW_W*MED_V*LOW_Q + a5*b4*LOW_Z*MED_V*LOW_Q +
     a7*b4*LOW_W*LOW_Z*MED_V*LOW_Q;
    IMLML = a1*b1 + a4*b1*MED_W + a5*b1*LOW_Z + a7*b1*MED_W*LOW_Z +
     a1*b2*MED_V + a4*b2*MED_W*MED_V + a5*b2*LOW_Z*MED_V +
     a7*b2*MED_W*LOW_Z*MED_V + a1*b3*LOW_Q + a4*b3*MED_W*LOW_Q +
     a5*b3*LOW_Z*LOW_Q + a7*b3*MED_W*LOW_Z*LOW_Q + a1*b4*MED_V*LOW_Q +
     a4*b4*MED_W*MED_V*LOW_Q + a5*b4*LOW_Z*MED_V*LOW_Q +
     a7*b4*MED_W*LOW_Z*MED_V*LOW_Q;
    IHLML = a1*b1 + a4*b1*HIGH_W + a5*b1*LOW_Z + a7*b1*HIGH_W*LOW_Z +
     a1*b2*MED_V + a4*b2*HIGH_W*MED_V + a5*b2*LOW_Z*MED_V +
     a7*b2*HIGH_W*LOW_Z*MED_V + a1*b3*LOW_Q + a4*b3*HIGH_W*LOW_Q +
     a5*b3*LOW_Z*LOW_Q + a7*b3*HIGH_W*LOW_Z*LOW_Q + a1*b4*MED_V*LOW_Q +
     a4*b4*HIGH_W*MED_V*LOW_Q + a5*b4*LOW_Z*MED_V*LOW_Q +
     a7*b4*HIGH_W*LOW_Z*MED_V*LOW_Q;
    ILMML = a1*b1 + a4*b1*LOW_W + a5*b1*MED_Z + a7*b1*LOW_W*MED_Z +
     a1*b2*MED_V + a4*b2*LOW_W*MED_V + a5*b2*MED_Z*MED_V +
     a7*b2*LOW_W*MED_Z*MED_V + a1*b3*LOW_Q + a4*b3*LOW_W*LOW_Q +
     a5*b3*MED_Z*LOW_Q + a7*b3*LOW_W*MED_Z*LOW_Q + a1*b4*MED_V*LOW_Q +
     a4*b4*LOW_W*MED_V*LOW_Q + a5*b4*MED_Z*MED_V*LOW_Q +
     a7*b4*LOW_W*MED_Z*MED_V*LOW_Q;
    IMMML = a1*b1 + a4*b1*MED_W + a5*b1*MED_Z + a7*b1*MED_W*MED_Z +
     a1*b2*MED_V + a4*b2*MED_W*MED_V + a5*b2*MED_Z*MED_V +
     a7*b2*MED_W*MED_Z*MED_V + a1*b3*LOW_Q + a4*b3*MED_W*LOW_Q +
     a5*b3*MED_Z*LOW_Q + a7*b3*MED_W*MED_Z*LOW_Q + a1*b4*MED_V*LOW_Q +
     a4*b4*MED_W*MED_V*LOW_Q + a5*b4*MED_Z*MED_V*LOW_Q +
     a7*b4*MED_W*MED_Z*MED_V*LOW_Q;
    IHMML = a1*b1 + a4*b1*HIGH_W + a5*b1*MED_Z + a7*b1*HIGH_W*MED_Z +
     a1*b2*MED_V + a4*b2*HIGH_W*MED_V + a5*b2*MED_Z*MED_V +
     a7*b2*HIGH_W*MED_Z*MED_V + a1*b3*LOW_Q + a4*b3*HIGH_W*LOW_Q +
     a5*b3*MED_Z*LOW_Q + a7*b3*HIGH_W*MED_Z*LOW_Q + a1*b4*MED_V*LOW_Q +
     a4*b4*HIGH_W*MED_V*LOW_Q + a5*b4*MED_Z*MED_V*LOW_Q +
     a7*b4*HIGH_W*MED_Z*MED_V*LOW_Q;
    ILHML = a1*b1 + a4*b1*LOW_W + a5*b1*HIGH_Z + a7*b1*LOW_W*HIGH_Z +
     a1*b2*MED_V + a4*b2*LOW_W*MED_V + a5*b2*HIGH_Z*MED_V +
     a7*b2*LOW_W*HIGH_Z*MED_V + a1*b3*LOW_Q + a4*b3*LOW_W*LOW_Q +
     a5*b3*HIGH_Z*LOW_Q + a7*b3*LOW_W*HIGH_Z*LOW_Q + a1*b4*MED_V*LOW_Q +
     a4*b4*LOW_W*MED_V*LOW_Q + a5*b4*HIGH_Z*MED_V*LOW_Q +
     a7*b4*LOW_W*HIGH_Z*MED_V*LOW_Q;
    IMHML = a1*b1 + a4*b1*MED_W + a5*b1*HIGH_Z + a7*b1*MED_W*HIGH_Z +
     a1*b2*MED_V + a4*b2*MED_W*MED_V + a5*b2*HIGH_Z*MED_V +
     a7*b2*MED_W*HIGH_Z*MED_V + a1*b3*LOW_Q + a4*b3*MED_W*LOW_Q +
     a5*b3*HIGH_Z*LOW_Q + a7*b3*MED_W*HIGH_Z*LOW_Q + a1*b4*MED_V*LOW_Q +
     a4*b4*MED_W*MED_V*LOW_Q + a5*b4*HIGH_Z*MED_V*LOW_Q +
     a7*b4*MED_W*HIGH_Z*MED_V*LOW_Q;
    IHHML = a1*b1 + a4*b1*HIGH_W + a5*b1*HIGH_Z + a7*b1*HIGH_W*HIGH_Z +
     a1*b2*MED_V + a4*b2*HIGH_W*MED_V + a5*b2*HIGH_Z*MED_V +
     a7*b2*HIGH_W*HIGH_Z*MED_V + a1*b3*LOW_Q + a4*b3*HIGH_W*LOW_Q +
     a5*b3*HIGH_Z*LOW_Q + a7*b3*HIGH_W*HIGH_Z*LOW_Q + a1*b4*MED_V*LOW_Q +
     a4*b4*HIGH_W*MED_V*LOW_Q + a5*b4*HIGH_Z*MED_V*LOW_Q +
     a7*b4*HIGH_W*HIGH_Z*MED_V*LOW_Q;
    ILLHL = a1*b1 + a4*b1*LOW_W + a5*b1*LOW_Z + a7*b1*LOW_W*LOW_Z +
     a1*b2*HIGH_V + a4*b2*LOW_W*HIGH_V + a5*b2*LOW_Z*HIGH_V +
     a7*b2*LOW_W*LOW_Z*HIGH_V + a1*b3*LOW_Q + a4*b3*LOW_W*LOW_Q +
     a5*b3*LOW_Z*LOW_Q + a7*b3*LOW_W*LOW_Z*LOW_Q + a1*b4*HIGH_V*LOW_Q +
     a4*b4*LOW_W*HIGH_V*LOW_Q + a5*b4*LOW_Z*HIGH_V*LOW_Q +
     a7*b4*LOW_W*LOW_Z*HIGH_V*LOW_Q;
    IMLHL = a1*b1 + a4*b1*MED_W + a5*b1*LOW_Z + a7*b1*MED_W*LOW_Z +
     a1*b2*HIGH_V + a4*b2*MED_W*HIGH_V + a5*b2*LOW_Z*HIGH_V +
     a7*b2*MED_W*LOW_Z*HIGH_V + a1*b3*LOW_Q + a4*b3*MED_W*LOW_Q +
     a5*b3*LOW_Z*LOW_Q + a7*b3*MED_W*LOW_Z*LOW_Q + a1*b4*HIGH_V*LOW_Q +
     a4*b4*MED_W*HIGH_V*LOW_Q + a5*b4*LOW_Z*HIGH_V*LOW_Q +
     a7*b4*MED_W*LOW_Z*HIGH_V*LOW_Q;
    IHLHL = a1*b1 + a4*b1*HIGH_W + a5*b1*LOW_Z + a7*b1*HIGH_W*LOW_Z +
     a1*b2*HIGH_V + a4*b2*HIGH_W*HIGH_V + a5*b2*LOW_Z*HIGH_V +
     a7*b2*HIGH_W*LOW_Z*HIGH_V + a1*b3*LOW_Q + a4*b3*HIGH_W*LOW_Q +
     a5*b3*LOW_Z*LOW_Q + a7*b3*HIGH_W*LOW_Z*LOW_Q + a1*b4*HIGH_V*LOW_Q +
     a4*b4*HIGH_W*HIGH_V*LOW_Q + a5*b4*LOW_Z*HIGH_V*LOW_Q +
     a7*b4*HIGH_W*LOW_Z*HIGH_V*LOW_Q;
    ILMHL = a1*b1 + a4*b1*LOW_W + a5*b1*MED_Z + a7*b1*LOW_W*MED_Z +
     a1*b2*HIGH_V + a4*b2*LOW_W*HIGH_V + a5*b2*MED_Z*HIGH_V +
     a7*b2*LOW_W*MED_Z*HIGH_V + a1*b3*LOW_Q + a4*b3*LOW_W*LOW_Q +
     a5*b3*MED_Z*LOW_Q + a7*b3*LOW_W*MED_Z*LOW_Q + a1*b4*HIGH_V*LOW_Q +
     a4*b4*LOW_W*HIGH_V*LOW_Q + a5*b4*MED_Z*HIGH_V*LOW_Q +
     a7*b4*LOW_W*MED_Z*HIGH_V*LOW_Q;
    IMMHL = a1*b1 + a4*b1*MED_W + a5*b1*MED_Z + a7*b1*MED_W*MED_Z +
     a1*b2*HIGH_V + a4*b2*MED_W*HIGH_V + a5*b2*MED_Z*HIGH_V +
     a7*b2*MED_W*MED_Z*HIGH_V + a1*b3*LOW_Q + a4*b3*MED_W*LOW_Q +
     a5*b3*MED_Z*LOW_Q + a7*b3*MED_W*MED_Z*LOW_Q + a1*b4*HIGH_V*LOW_Q +
     a4*b4*MED_W*HIGH_V*LOW_Q + a5*b4*MED_Z*HIGH_V*LOW_Q +
     a7*b4*MED_W*MED_Z*HIGH_V*LOW_Q;
    IHMHL = a1*b1 + a4*b1*HIGH_W + a5*b1*MED_Z + a7*b1*HIGH_W*MED_Z +
     a1*b2*HIGH_V + a4*b2*HIGH_W*HIGH_V + a5*b2*MED_Z*HIGH_V +
     a7*b2*HIGH_W*MED_Z*HIGH_V + a1*b3*LOW_Q + a4*b3*HIGH_W*LOW_Q +
     a5*b3*MED_Z*LOW_Q + a7*b3*HIGH_W*MED_Z*LOW_Q + a1*b4*HIGH_V*LOW_Q +
     a4*b4*HIGH_W*HIGH_V*LOW_Q + a5*b4*MED_Z*HIGH_V*LOW_Q +
     a7*b4*HIGH_W*MED_Z*HIGH_V*LOW_Q;
    ILHHL = a1*b1 + a4*b1*LOW_W + a5*b1*HIGH_Z + a7*b1*LOW_W*HIGH_Z +
     a1*b2*HIGH_V + a4*b2*LOW_W*HIGH_V + a5*b2*HIGH_Z*HIGH_V +
     a7*b2*LOW_W*HIGH_Z*HIGH_V + a1*b3*LOW_Q + a4*b3*LOW_W*LOW_Q +
     a5*b3*HIGH_Z*LOW_Q + a7*b3*LOW_W*HIGH_Z*LOW_Q + a1*b4*HIGH_V*LOW_Q +
     a4*b4*LOW_W*HIGH_V*LOW_Q + a5*b4*HIGH_Z*HIGH_V*LOW_Q +
     a7*b4*LOW_W*HIGH_Z*HIGH_V*LOW_Q;
    IMHHL = a1*b1 + a4*b1*MED_W + a5*b1*HIGH_Z + a7*b1*MED_W*HIGH_Z +
     a1*b2*HIGH_V + a4*b2*MED_W*HIGH_V + a5*b2*HIGH_Z*HIGH_V +
     a7*b2*MED_W*HIGH_Z*HIGH_V + a1*b3*LOW_Q + a4*b3*MED_W*LOW_Q +
     a5*b3*HIGH_Z*LOW_Q + a7*b3*MED_W*HIGH_Z*LOW_Q + a1*b4*HIGH_V*LOW_Q +
     a4*b4*MED_W*HIGH_V*LOW_Q + a5*b4*HIGH_Z*HIGH_V*LOW_Q +
     a7*b4*MED_W*HIGH_Z*HIGH_V*LOW_Q;
    IHHHL = a1*b1 + a4*b1*HIGH_W + a5*b1*HIGH_Z + a7*b1*HIGH_W*HIGH_Z +
     a1*b2*HIGH_V + a4*b2*HIGH_W*HIGH_V + a5*b2*HIGH_Z*HIGH_V +
     a7*b2*HIGH_W*HIGH_Z*HIGH_V + a1*b3*LOW_Q + a4*b3*HIGH_W*LOW_Q +
     a5*b3*HIGH_Z*LOW_Q + a7*b3*HIGH_W*HIGH_Z*LOW_Q + a1*b4*HIGH_V*LOW_Q +
     a4*b4*HIGH_W*HIGH_V*LOW_Q + a5*b4*HIGH_Z*HIGH_V*LOW_Q +
     a7*b4*HIGH_W*HIGH_Z*HIGH_V*LOW_Q;
    ILLLM = a1*b1 + a4*b1*LOW_W + a5*b1*LOW_Z + a7*b1*LOW_W*LOW_Z +
     a1*b2*LOW_V + a4*b2*LOW_W*LOW_V + a5*b2*LOW_Z*LOW_V +
     a7*b2*LOW_W*LOW_Z*LOW_V + a1*b3*MED_Q + a4*b3*LOW_W*MED_Q +
     a5*b3*LOW_Z*MED_Q + a7*b3*LOW_W*LOW_Z*MED_Q + a1*b4*LOW_V*MED_Q +
     a4*b4*LOW_W*LOW_V*MED_Q + a5*b4*LOW_Z*LOW_V*MED_Q +
     a7*b4*LOW_W*LOW_Z*LOW_V*MED_Q;
    IMLLM = a1*b1 + a4*b1*MED_W + a5*b1*LOW_Z + a7*b1*MED_W*LOW_Z +
     a1*b2*LOW_V + a4*b2*MED_W*LOW_V + a5*b2*LOW_Z*LOW_V +
     a7*b2*MED_W*LOW_Z*LOW_V + a1*b3*MED_Q + a4*b3*MED_W*MED_Q +
     a5*b3*LOW_Z*MED_Q + a7*b3*MED_W*LOW_Z*MED_Q + a1*b4*LOW_V*MED_Q +
     a4*b4*MED_W*LOW_V*MED_Q + a5*b4*LOW_Z*LOW_V*MED_Q +
     a7*b4*MED_W*LOW_Z*LOW_V*MED_Q;
    IHLLM = a1*b1 + a4*b1*HIGH_W + a5*b1*LOW_Z + a7*b1*HIGH_W*LOW_Z +
     a1*b2*LOW_V + a4*b2*HIGH_W*LOW_V + a5*b2*LOW_Z*LOW_V +
     a7*b2*HIGH_W*LOW_Z*LOW_V + a1*b3*MED_Q + a4*b3*HIGH_W*MED_Q +
     a5*b3*LOW_Z*MED_Q + a7*b3*HIGH_W*LOW_Z*MED_Q + a1*b4*LOW_V*MED_Q +
     a4*b4*HIGH_W*LOW_V*MED_Q + a5*b4*LOW_Z*LOW_V*MED_Q +
     a7*b4*HIGH_W*LOW_Z*LOW_V*MED_Q;
    ILMLM = a1*b1 + a4*b1*LOW_W + a5*b1*MED_Z + a7*b1*LOW_W*MED_Z +
     a1*b2*LOW_V + a4*b2*LOW_W*LOW_V + a5*b2*MED_Z*LOW_V +
     a7*b2*LOW_W*MED_Z*LOW_V + a1*b3*MED_Q + a4*b3*LOW_W*MED_Q +
     a5*b3*MED_Z*MED_Q + a7*b3*LOW_W*MED_Z*MED_Q + a1*b4*LOW_V*MED_Q +
     a4*b4*LOW_W*LOW_V*MED_Q + a5*b4*MED_Z*LOW_V*MED_Q +
     a7*b4*LOW_W*MED_Z*LOW_V*MED_Q;
    IMMLM = a1*b1 + a4*b1*MED_W + a5*b1*MED_Z + a7*b1*MED_W*MED_Z +
     a1*b2*LOW_V + a4*b2*MED_W*LOW_V + a5*b2*MED_Z*LOW_V +
     a7*b2*MED_W*MED_Z*LOW_V + a1*b3*MED_Q + a4*b3*MED_W*MED_Q +
     a5*b3*MED_Z*MED_Q + a7*b3*MED_W*MED_Z*MED_Q + a1*b4*LOW_V*MED_Q +
     a4*b4*MED_W*LOW_V*MED_Q + a5*b4*MED_Z*LOW_V*MED_Q +
     a7*b4*MED_W*MED_Z*LOW_V*MED_Q;
    IHMLM = a1*b1 + a4*b1*HIGH_W + a5*b1*MED_Z + a7*b1*HIGH_W*MED_Z +
     a1*b2*LOW_V + a4*b2*HIGH_W*LOW_V + a5*b2*MED_Z*LOW_V +
     a7*b2*HIGH_W*MED_Z*LOW_V + a1*b3*MED_Q + a4*b3*HIGH_W*MED_Q +
     a5*b3*MED_Z*MED_Q + a7*b3*HIGH_W*MED_Z*MED_Q + a1*b4*LOW_V*MED_Q +
     a4*b4*HIGH_W*LOW_V*MED_Q + a5*b4*MED_Z*LOW_V*MED_Q +
     a7*b4*HIGH_W*MED_Z*LOW_V*MED_Q;
    ILHLM = a1*b1 + a4*b1*LOW_W + a5*b1*HIGH_Z + a7*b1*LOW_W*HIGH_Z +
     a1*b2*LOW_V + a4*b2*LOW_W*LOW_V + a5*b2*HIGH_Z*LOW_V +
     a7*b2*LOW_W*HIGH_Z*LOW_V + a1*b3*MED_Q + a4*b3*LOW_W*MED_Q +
     a5*b3*HIGH_Z*MED_Q + a7*b3*LOW_W*HIGH_Z*MED_Q + a1*b4*LOW_V*MED_Q +
     a4*b4*LOW_W*LOW_V*MED_Q + a5*b4*HIGH_Z*LOW_V*MED_Q +
     a7*b4*LOW_W*HIGH_Z*LOW_V*MED_Q;
    IMHLM = a1*b1 + a4*b1*MED_W + a5*b1*HIGH_Z + a7*b1*MED_W*HIGH_Z +
     a1*b2*LOW_V + a4*b2*MED_W*LOW_V + a5*b2*HIGH_Z*LOW_V +
     a7*b2*MED_W*HIGH_Z*LOW_V + a1*b3*MED_Q + a4*b3*MED_W*MED_Q +
     a5*b3*HIGH_Z*MED_Q + a7*b3*MED_W*HIGH_Z*MED_Q + a1*b4*LOW_V*MED_Q +
     a4*b4*MED_W*LOW_V*MED_Q + a5*b4*HIGH_Z*LOW_V*MED_Q +
     a7*b4*MED_W*HIGH_Z*LOW_V*MED_Q;
    IHHLM = a1*b1 + a4*b1*HIGH_W + a5*b1*HIGH_Z + a7*b1*HIGH_W*HIGH_Z +
     a1*b2*LOW_V + a4*b2*HIGH_W*LOW_V + a5*b2*HIGH_Z*LOW_V +
     a7*b2*HIGH_W*HIGH_Z*LOW_V + a1*b3*MED_Q + a4*b3*HIGH_W*MED_Q +
     a5*b3*HIGH_Z*MED_Q + a7*b3*HIGH_W*HIGH_Z*MED_Q + a1*b4*LOW_V*MED_Q +
     a4*b4*HIGH_W*LOW_V*MED_Q + a5*b4*HIGH_Z*LOW_V*MED_Q +
     a7*b4*HIGH_W*HIGH_Z*LOW_V*MED_Q;
    ILLMM = a1*b1 + a4*b1*LOW_W + a5*b1*LOW_Z + a7*b1*LOW_W*LOW_Z +
     a1*b2*MED_V + a4*b2*LOW_W*MED_V + a5*b2*LOW_Z*MED_V +
     a7*b2*LOW_W*LOW_Z*MED_V + a1*b3*MED_Q + a4*b3*LOW_W*MED_Q +
     a5*b3*LOW_Z*MED_Q + a7*b3*LOW_W*LOW_Z*MED_Q + a1*b4*MED_V*MED_Q +
     a4*b4*LOW_W*MED_V*MED_Q + a5*b4*LOW_Z*MED_V*MED_Q +
     a7*b4*LOW_W*LOW_Z*MED_V*MED_Q;
    IMLMM = a1*b1 + a4*b1*MED_W + a5*b1*LOW_Z + a7*b1*MED_W*LOW_Z +
     a1*b2*MED_V + a4*b2*MED_W*MED_V + a5*b2*LOW_Z*MED_V +
     a7*b2*MED_W*LOW_Z*MED_V + a1*b3*MED_Q + a4*b3*MED_W*MED_Q +
     a5*b3*LOW_Z*MED_Q + a7*b3*MED_W*LOW_Z*MED_Q + a1*b4*MED_V*MED_Q +
     a4*b4*MED_W*MED_V*MED_Q + a5*b4*LOW_Z*MED_V*MED_Q +
     a7*b4*MED_W*LOW_Z*MED_V*MED_Q;
    IHLMM = a1*b1 + a4*b1*HIGH_W + a5*b1*LOW_Z + a7*b1*HIGH_W*LOW_Z +
     a1*b2*MED_V + a4*b2*HIGH_W*MED_V + a5*b2*LOW_Z*MED_V +
     a7*b2*HIGH_W*LOW_Z*MED_V + a1*b3*MED_Q + a4*b3*HIGH_W*MED_Q +
     a5*b3*LOW_Z*MED_Q + a7*b3*HIGH_W*LOW_Z*MED_Q + a1*b4*MED_V*MED_Q +
     a4*b4*HIGH_W*MED_V*MED_Q + a5*b4*LOW_Z*MED_V*MED_Q +
     a7*b4*HIGH_W*LOW_Z*MED_V*MED_Q;
    ILMMM = a1*b1 + a4*b1*LOW_W + a5*b1*MED_Z + a7*b1*LOW_W*MED_Z +
     a1*b2*MED_V + a4*b2*LOW_W*MED_V + a5*b2*MED_Z*MED_V +
     a7*b2*LOW_W*MED_Z*MED_V + a1*b3*MED_Q + a4*b3*LOW_W*MED_Q +
     a5*b3*MED_Z*MED_Q + a7*b3*LOW_W*MED_Z*MED_Q + a1*b4*MED_V*MED_Q +
     a4*b4*LOW_W*MED_V*MED_Q + a5*b4*MED_Z*MED_V*MED_Q +
     a7*b4*LOW_W*MED_Z*MED_V*MED_Q;
    IMMMM = a1*b1 + a4*b1*MED_W + a5*b1*MED_Z + a7*b1*MED_W*MED_Z +
     a1*b2*MED_V + a4*b2*MED_W*MED_V + a5*b2*MED_Z*MED_V +
     a7*b2*MED_W*MED_Z*MED_V + a1*b3*MED_Q + a4*b3*MED_W*MED_Q +
     a5*b3*MED_Z*MED_Q + a7*b3*MED_W*MED_Z*MED_Q + a1*b4*MED_V*MED_Q +
     a4*b4*MED_W*MED_V*MED_Q + a5*b4*MED_Z*MED_V*MED_Q +
     a7*b4*MED_W*MED_Z*MED_V*MED_Q;
    IHMMM = a1*b1 + a4*b1*HIGH_W + a5*b1*MED_Z + a7*b1*HIGH_W*MED_Z +
     a1*b2*MED_V + a4*b2*HIGH_W*MED_V + a5*b2*MED_Z*MED_V +
     a7*b2*HIGH_W*MED_Z*MED_V + a1*b3*MED_Q + a4*b3*HIGH_W*MED_Q +
     a5*b3*MED_Z*MED_Q + a7*b3*HIGH_W*MED_Z*MED_Q + a1*b4*MED_V*MED_Q +
     a4*b4*HIGH_W*MED_V*MED_Q + a5*b4*MED_Z*MED_V*MED_Q +
     a7*b4*HIGH_W*MED_Z*MED_V*MED_Q;
    ILHMM = a1*b1 + a4*b1*LOW_W + a5*b1*HIGH_Z + a7*b1*LOW_W*HIGH_Z +
     a1*b2*MED_V + a4*b2*LOW_W*MED_V + a5*b2*HIGH_Z*MED_V +
     a7*b2*LOW_W*HIGH_Z*MED_V + a1*b3*MED_Q + a4*b3*LOW_W*MED_Q +
     a5*b3*HIGH_Z*MED_Q + a7*b3*LOW_W*HIGH_Z*MED_Q + a1*b4*MED_V*MED_Q +
     a4*b4*LOW_W*MED_V*MED_Q + a5*b4*HIGH_Z*MED_V*MED_Q +
     a7*b4*LOW_W*HIGH_Z*MED_V*MED_Q;
    IMHMM = a1*b1 + a4*b1*MED_W + a5*b1*HIGH_Z + a7*b1*MED_W*HIGH_Z +
     a1*b2*MED_V + a4*b2*MED_W*MED_V + a5*b2*HIGH_Z*MED_V +
     a7*b2*MED_W*HIGH_Z*MED_V + a1*b3*MED_Q + a4*b3*MED_W*MED_Q +
     a5*b3*HIGH_Z*MED_Q + a7*b3*MED_W*HIGH_Z*MED_Q + a1*b4*MED_V*MED_Q +
     a4*b4*MED_W*MED_V*MED_Q + a5*b4*HIGH_Z*MED_V*MED_Q +
     a7*b4*MED_W*HIGH_Z*MED_V*MED_Q;
    IHHMM = a1*b1 + a4*b1*HIGH_W + a5*b1*HIGH_Z + a7*b1*HIGH_W*HIGH_Z +
     a1*b2*MED_V + a4*b2*HIGH_W*MED_V + a5*b2*HIGH_Z*MED_V +
     a7*b2*HIGH_W*HIGH_Z*MED_V + a1*b3*MED_Q + a4*b3*HIGH_W*MED_Q +
     a5*b3*HIGH_Z*MED_Q + a7*b3*HIGH_W*HIGH_Z*MED_Q + a1*b4*MED_V*MED_Q +
     a4*b4*HIGH_W*MED_V*MED_Q + a5*b4*HIGH_Z*MED_V*MED_Q +
     a7*b4*HIGH_W*HIGH_Z*MED_V*MED_Q;
    ILLHM = a1*b1 + a4*b1*LOW_W + a5*b1*LOW_Z + a7*b1*LOW_W*LOW_Z +
     a1*b2*HIGH_V + a4*b2*LOW_W*HIGH_V + a5*b2*LOW_Z*HIGH_V +
     a7*b2*LOW_W*LOW_Z*HIGH_V + a1*b3*MED_Q + a4*b3*LOW_W*MED_Q +
     a5*b3*LOW_Z*MED_Q + a7*b3*LOW_W*LOW_Z*MED_Q + a1*b4*HIGH_V*MED_Q +
     a4*b4*LOW_W*HIGH_V*MED_Q + a5*b4*LOW_Z*HIGH_V*MED_Q +
     a7*b4*LOW_W*LOW_Z*HIGH_V*MED_Q;
    IMLHM = a1*b1 + a4*b1*MED_W + a5*b1*LOW_Z + a7*b1*MED_W*LOW_Z +
     a1*b2*HIGH_V + a4*b2*MED_W*HIGH_V + a5*b2*LOW_Z*HIGH_V +
     a7*b2*MED_W*LOW_Z*HIGH_V + a1*b3*MED_Q + a4*b3*MED_W*MED_Q +
     a5*b3*LOW_Z*MED_Q + a7*b3*MED_W*LOW_Z*MED_Q + a1*b4*HIGH_V*MED_Q +
     a4*b4*MED_W*HIGH_V*MED_Q + a5*b4*LOW_Z*HIGH_V*MED_Q +
     a7*b4*MED_W*LOW_Z*HIGH_V*MED_Q;
    IHLHM = a1*b1 + a4*b1*HIGH_W + a5*b1*LOW_Z + a7*b1*HIGH_W*LOW_Z +
     a1*b2*HIGH_V + a4*b2*HIGH_W*HIGH_V + a5*b2*LOW_Z*HIGH_V +
     a7*b2*HIGH_W*LOW_Z*HIGH_V + a1*b3*MED_Q + a4*b3*HIGH_W*MED_Q +
     a5*b3*LOW_Z*MED_Q + a7*b3*HIGH_W*LOW_Z*MED_Q + a1*b4*HIGH_V*MED_Q +
     a4*b4*HIGH_W*HIGH_V*MED_Q + a5*b4*LOW_Z*HIGH_V*MED_Q +
     a7*b4*HIGH_W*LOW_Z*HIGH_V*MED_Q;
    ILMHM = a1*b1 + a4*b1*LOW_W + a5*b1*MED_Z + a7*b1*LOW_W*MED_Z +
     a1*b2*HIGH_V + a4*b2*LOW_W*HIGH_V + a5*b2*MED_Z*HIGH_V +
     a7*b2*LOW_W*MED_Z*HIGH_V + a1*b3*MED_Q + a4*b3*LOW_W*MED_Q +
     a5*b3*MED_Z*MED_Q + a7*b3*LOW_W*MED_Z*MED_Q + a1*b4*HIGH_V*MED_Q +
     a4*b4*LOW_W*HIGH_V*MED_Q + a5*b4*MED_Z*HIGH_V*MED_Q +
     a7*b4*LOW_W*MED_Z*HIGH_V*MED_Q;
    IMMHM = a1*b1 + a4*b1*MED_W + a5*b1*MED_Z + a7*b1*MED_W*MED_Z +
     a1*b2*HIGH_V + a4*b2*MED_W*HIGH_V + a5*b2*MED_Z*HIGH_V +
     a7*b2*MED_W*MED_Z*HIGH_V + a1*b3*MED_Q + a4*b3*MED_W*MED_Q +
     a5*b3*MED_Z*MED_Q + a7*b3*MED_W*MED_Z*MED_Q + a1*b4*HIGH_V*MED_Q +
     a4*b4*MED_W*HIGH_V*MED_Q + a5*b4*MED_Z*HIGH_V*MED_Q +
     a7*b4*MED_W*MED_Z*HIGH_V*MED_Q;
    IHMHM = a1*b1 + a4*b1*HIGH_W + a5*b1*MED_Z + a7*b1*HIGH_W*MED_Z +
     a1*b2*HIGH_V + a4*b2*HIGH_W*HIGH_V + a5*b2*MED_Z*HIGH_V +
     a7*b2*HIGH_W*MED_Z*HIGH_V + a1*b3*MED_Q + a4*b3*HIGH_W*MED_Q +
     a5*b3*MED_Z*MED_Q + a7*b3*HIGH_W*MED_Z*MED_Q + a1*b4*HIGH_V*MED_Q +
     a4*b4*HIGH_W*HIGH_V*MED_Q + a5*b4*MED_Z*HIGH_V*MED_Q +
     a7*b4*HIGH_W*MED_Z*HIGH_V*MED_Q;
    ILHHM = a1*b1 + a4*b1*LOW_W + a5*b1*HIGH_Z + a7*b1*LOW_W*HIGH_Z +
     a1*b2*HIGH_V + a4*b2*LOW_W*HIGH_V + a5*b2*HIGH_Z*HIGH_V +
     a7*b2*LOW_W*HIGH_Z*HIGH_V + a1*b3*MED_Q + a4*b3*LOW_W*MED_Q +
     a5*b3*HIGH_Z*MED_Q + a7*b3*LOW_W*HIGH_Z*MED_Q + a1*b4*HIGH_V*MED_Q +
     a4*b4*LOW_W*HIGH_V*MED_Q + a5*b4*HIGH_Z*HIGH_V*MED_Q +
     a7*b4*LOW_W*HIGH_Z*HIGH_V*MED_Q;
    IMHHM = a1*b1 + a4*b1*MED_W + a5*b1*HIGH_Z + a7*b1*MED_W*HIGH_Z +
     a1*b2*HIGH_V + a4*b2*MED_W*HIGH_V + a5*b2*HIGH_Z*HIGH_V +
     a7*b2*MED_W*HIGH_Z*HIGH_V + a1*b3*MED_Q + a4*b3*MED_W*MED_Q +
     a5*b3*HIGH_Z*MED_Q + a7*b3*MED_W*HIGH_Z*MED_Q + a1*b4*HIGH_V*MED_Q +
     a4*b4*MED_W*HIGH_V*MED_Q + a5*b4*HIGH_Z*HIGH_V*MED_Q +
     a7*b4*MED_W*HIGH_Z*HIGH_V*MED_Q;
    IHHHM = a1*b1 + a4*b1*HIGH_W + a5*b1*HIGH_Z + a7*b1*HIGH_W*HIGH_Z +
     a1*b2*HIGH_V + a4*b2*HIGH_W*HIGH_V + a5*b2*HIGH_Z*HIGH_V +
     a7*b2*HIGH_W*HIGH_Z*HIGH_V + a1*b3*MED_Q + a4*b3*HIGH_W*MED_Q +
     a5*b3*HIGH_Z*MED_Q + a7*b3*HIGH_W*HIGH_Z*MED_Q + a1*b4*HIGH_V*MED_Q +
     a4*b4*HIGH_W*HIGH_V*MED_Q + a5*b4*HIGH_Z*HIGH_V*MED_Q +
     a7*b4*HIGH_W*HIGH_Z*HIGH_V*MED_Q;
    ILLLH = a1*b1 + a4*b1*LOW_W + a5*b1*LOW_Z + a7*b1*LOW_W*LOW_Z +
     a1*b2*LOW_V + a4*b2*LOW_W*LOW_V + a5*b2*LOW_Z*LOW_V +
     a7*b2*LOW_W*LOW_Z*LOW_V + a1*b3*HIGH_Q + a4*b3*LOW_W*HIGH_Q +
     a5*b3*LOW_Z*HIGH_Q + a7*b3*LOW_W*LOW_Z*HIGH_Q + a1*b4*LOW_V*HIGH_Q +
     a4*b4*LOW_W*LOW_V*HIGH_Q + a5*b4*LOW_Z*LOW_V*HIGH_Q +
     a7*b4*LOW_W*LOW_Z*LOW_V*HIGH_Q;
    IMLLH = a1*b1 + a4*b1*MED_W + a5*b1*LOW_Z + a7*b1*MED_W*LOW_Z +
     a1*b2*LOW_V + a4*b2*MED_W*LOW_V + a5*b2*LOW_Z*LOW_V +
     a7*b2*MED_W*LOW_Z*LOW_V + a1*b3*HIGH_Q + a4*b3*MED_W*HIGH_Q +
     a5*b3*LOW_Z*HIGH_Q + a7*b3*MED_W*LOW_Z*HIGH_Q + a1*b4*LOW_V*HIGH_Q +
     a4*b4*MED_W*LOW_V*HIGH_Q + a5*b4*LOW_Z*LOW_V*HIGH_Q +
     a7*b4*MED_W*LOW_Z*LOW_V*HIGH_Q;
    IHLLH = a1*b1 + a4*b1*HIGH_W + a5*b1*LOW_Z + a7*b1*HIGH_W*LOW_Z +
     a1*b2*LOW_V + a4*b2*HIGH_W*LOW_V + a5*b2*LOW_Z*LOW_V +
     a7*b2*HIGH_W*LOW_Z*LOW_V + a1*b3*HIGH_Q + a4*b3*HIGH_W*HIGH_Q +
     a5*b3*LOW_Z*HIGH_Q + a7*b3*HIGH_W*LOW_Z*HIGH_Q + a1*b4*LOW_V*HIGH_Q +
     a4*b4*HIGH_W*LOW_V*HIGH_Q + a5*b4*LOW_Z*LOW_V*HIGH_Q +
     a7*b4*HIGH_W*LOW_Z*LOW_V*HIGH_Q;
    ILMLH = a1*b1 + a4*b1*LOW_W + a5*b1*MED_Z + a7*b1*LOW_W*MED_Z +
     a1*b2*LOW_V + a4*b2*LOW_W*LOW_V + a5*b2*MED_Z*LOW_V +
     a7*b2*LOW_W*MED_Z*LOW_V + a1*b3*HIGH_Q + a4*b3*LOW_W*HIGH_Q +
     a5*b3*MED_Z*HIGH_Q + a7*b3*LOW_W*MED_Z*HIGH_Q + a1*b4*LOW_V*HIGH_Q +
     a4*b4*LOW_W*LOW_V*HIGH_Q + a5*b4*MED_Z*LOW_V*HIGH_Q +
     a7*b4*LOW_W*MED_Z*LOW_V*HIGH_Q;
    IMMLH = a1*b1 + a4*b1*MED_W + a5*b1*MED_Z + a7*b1*MED_W*MED_Z +
     a1*b2*LOW_V + a4*b2*MED_W*LOW_V + a5*b2*MED_Z*LOW_V +
     a7*b2*MED_W*MED_Z*LOW_V + a1*b3*HIGH_Q + a4*b3*MED_W*HIGH_Q +
     a5*b3*MED_Z*HIGH_Q + a7*b3*MED_W*MED_Z*HIGH_Q + a1*b4*LOW_V*HIGH_Q +
     a4*b4*MED_W*LOW_V*HIGH_Q + a5*b4*MED_Z*LOW_V*HIGH_Q +
     a7*b4*MED_W*MED_Z*LOW_V*HIGH_Q;
    IHMLH = a1*b1 + a4*b1*HIGH_W + a5*b1*MED_Z + a7*b1*HIGH_W*MED_Z +
     a1*b2*LOW_V + a4*b2*HIGH_W*LOW_V + a5*b2*MED_Z*LOW_V +
     a7*b2*HIGH_W*MED_Z*LOW_V + a1*b3*HIGH_Q + a4*b3*HIGH_W*HIGH_Q +
     a5*b3*MED_Z*HIGH_Q + a7*b3*HIGH_W*MED_Z*HIGH_Q + a1*b4*LOW_V*HIGH_Q +
     a4*b4*HIGH_W*LOW_V*HIGH_Q + a5*b4*MED_Z*LOW_V*HIGH_Q +
     a7*b4*HIGH_W*MED_Z*LOW_V*HIGH_Q;
    ILHLH = a1*b1 + a4*b1*LOW_W + a5*b1*HIGH_Z + a7*b1*LOW_W*HIGH_Z +
     a1*b2*LOW_V + a4*b2*LOW_W*LOW_V + a5*b2*HIGH_Z*LOW_V +
     a7*b2*LOW_W*HIGH_Z*LOW_V + a1*b3*HIGH_Q + a4*b3*LOW_W*HIGH_Q +
     a5*b3*HIGH_Z*HIGH_Q + a7*b3*LOW_W*HIGH_Z*HIGH_Q + a1*b4*LOW_V*HIGH_Q +
     a4*b4*LOW_W*LOW_V*HIGH_Q + a5*b4*HIGH_Z*LOW_V*HIGH_Q +
     a7*b4*LOW_W*HIGH_Z*LOW_V*HIGH_Q;
    IMHLH = a1*b1 + a4*b1*MED_W + a5*b1*HIGH_Z + a7*b1*MED_W*HIGH_Z +
     a1*b2*LOW_V + a4*b2*MED_W*LOW_V + a5*b2*HIGH_Z*LOW_V +
     a7*b2*MED_W*HIGH_Z*LOW_V + a1*b3*HIGH_Q + a4*b3*MED_W*HIGH_Q +
     a5*b3*HIGH_Z*HIGH_Q + a7*b3*MED_W*HIGH_Z*HIGH_Q + a1*b4*LOW_V*HIGH_Q +
     a4*b4*MED_W*LOW_V*HIGH_Q + a5*b4*HIGH_Z*LOW_V*HIGH_Q +
     a7*b4*MED_W*HIGH_Z*LOW_V*HIGH_Q;
    IHHLH = a1*b1 + a4*b1*HIGH_W + a5*b1*HIGH_Z + a7*b1*HIGH_W*HIGH_Z +
     a1*b2*LOW_V + a4*b2*HIGH_W*LOW_V + a5*b2*HIGH_Z*LOW_V +
     a7*b2*HIGH_W*HIGH_Z*LOW_V + a1*b3*HIGH_Q + a4*b3*HIGH_W*HIGH_Q +
     a5*b3*HIGH_Z*HIGH_Q + a7*b3*HIGH_W*HIGH_Z*HIGH_Q + a1*b4*LOW_V*HIGH_Q +
     a4*b4*HIGH_W*LOW_V*HIGH_Q + a5*b4*HIGH_Z*LOW_V*HIGH_Q +
     a7*b4*HIGH_W*HIGH_Z*LOW_V*HIGH_Q;
    ILLMH = a1*b1 + a4*b1*LOW_W + a5*b1*LOW_Z + a7*b1*LOW_W*LOW_Z +
     a1*b2*MED_V + a4*b2*LOW_W*MED_V + a5*b2*LOW_Z*MED_V +
     a7*b2*LOW_W*LOW_Z*MED_V + a1*b3*HIGH_Q + a4*b3*LOW_W*HIGH_Q +
     a5*b3*LOW_Z*HIGH_Q + a7*b3*LOW_W*LOW_Z*HIGH_Q + a1*b4*MED_V*HIGH_Q +
     a4*b4*LOW_W*MED_V*HIGH_Q + a5*b4*LOW_Z*MED_V*HIGH_Q +
     a7*b4*LOW_W*LOW_Z*MED_V*HIGH_Q;
    IMLMH = a1*b1 + a4*b1*MED_W + a5*b1*LOW_Z + a7*b1*MED_W*LOW_Z +
     a1*b2*MED_V + a4*b2*MED_W*MED_V + a5*b2*LOW_Z*MED_V +
     a7*b2*MED_W*LOW_Z*MED_V + a1*b3*HIGH_Q + a4*b3*MED_W*HIGH_Q +
     a5*b3*LOW_Z*HIGH_Q + a7*b3*MED_W*LOW_Z*HIGH_Q + a1*b4*MED_V*HIGH_Q +
     a4*b4*MED_W*MED_V*HIGH_Q + a5*b4*LOW_Z*MED_V*HIGH_Q +
     a7*b4*MED_W*LOW_Z*MED_V*HIGH_Q;
    IHLMH = a1*b1 + a4*b1*HIGH_W + a5*b1*LOW_Z + a7*b1*HIGH_W*LOW_Z +
     a1*b2*MED_V + a4*b2*HIGH_W*MED_V + a5*b2*LOW_Z*MED_V +
     a7*b2*HIGH_W*LOW_Z*MED_V + a1*b3*HIGH_Q + a4*b3*HIGH_W*HIGH_Q +
     a5*b3*LOW_Z*HIGH_Q + a7*b3*HIGH_W*LOW_Z*HIGH_Q + a1*b4*MED_V*HIGH_Q +
     a4*b4*HIGH_W*MED_V*HIGH_Q + a5*b4*LOW_Z*MED_V*HIGH_Q +
     a7*b4*HIGH_W*LOW_Z*MED_V*HIGH_Q;
    ILMMH = a1*b1 + a4*b1*LOW_W + a5*b1*MED_Z + a7*b1*LOW_W*MED_Z +
     a1*b2*MED_V + a4*b2*LOW_W*MED_V + a5*b2*MED_Z*MED_V +
     a7*b2*LOW_W*MED_Z*MED_V + a1*b3*HIGH_Q + a4*b3*LOW_W*HIGH_Q +
     a5*b3*MED_Z*HIGH_Q + a7*b3*LOW_W*MED_Z*HIGH_Q + a1*b4*MED_V*HIGH_Q +
     a4*b4*LOW_W*MED_V*HIGH_Q + a5*b4*MED_Z*MED_V*HIGH_Q +
     a7*b4*LOW_W*MED_Z*MED_V*HIGH_Q;
    IMMMH = a1*b1 + a4*b1*MED_W + a5*b1*MED_Z + a7*b1*MED_W*MED_Z +
     a1*b2*MED_V + a4*b2*MED_W*MED_V + a5*b2*MED_Z*MED_V +
     a7*b2*MED_W*MED_Z*MED_V + a1*b3*HIGH_Q + a4*b3*MED_W*HIGH_Q +
     a5*b3*MED_Z*HIGH_Q + a7*b3*MED_W*MED_Z*HIGH_Q + a1*b4*MED_V*HIGH_Q +
     a4*b4*MED_W*MED_V*HIGH_Q + a5*b4*MED_Z*MED_V*HIGH_Q +
     a7*b4*MED_W*MED_Z*MED_V*HIGH_Q;
    IHMMH = a1*b1 + a4*b1*HIGH_W + a5*b1*MED_Z + a7*b1*HIGH_W*MED_Z +
     a1*b2*MED_V + a4*b2*HIGH_W*MED_V + a5*b2*MED_Z*MED_V +
     a7*b2*HIGH_W*MED_Z*MED_V + a1*b3*HIGH_Q + a4*b3*HIGH_W*HIGH_Q +
     a5*b3*MED_Z*HIGH_Q + a7*b3*HIGH_W*MED_Z*HIGH_Q + a1*b4*MED_V*HIGH_Q +
     a4*b4*HIGH_W*MED_V*HIGH_Q + a5*b4*MED_Z*MED_V*HIGH_Q +
     a7*b4*HIGH_W*MED_Z*MED_V*HIGH_Q;
    ILHMH = a1*b1 + a4*b1*LOW_W + a5*b1*HIGH_Z + a7*b1*LOW_W*HIGH_Z +
     a1*b2*MED_V + a4*b2*LOW_W*MED_V + a5*b2*HIGH_Z*MED_V +
     a7*b2*LOW_W*HIGH_Z*MED_V + a1*b3*HIGH_Q + a4*b3*LOW_W*HIGH_Q +
     a5*b3*HIGH_Z*HIGH_Q + a7*b3*LOW_W*HIGH_Z*HIGH_Q + a1*b4*MED_V*HIGH_Q +
     a4*b4*LOW_W*MED_V*HIGH_Q + a5*b4*HIGH_Z*MED_V*HIGH_Q +
     a7*b4*LOW_W*HIGH_Z*MED_V*HIGH_Q;
    IMHMH = a1*b1 + a4*b1*MED_W + a5*b1*HIGH_Z + a7*b1*MED_W*HIGH_Z +
     a1*b2*MED_V + a4*b2*MED_W*MED_V + a5*b2*HIGH_Z*MED_V +
     a7*b2*MED_W*HIGH_Z*MED_V + a1*b3*HIGH_Q + a4*b3*MED_W*HIGH_Q +
     a5*b3*HIGH_Z*HIGH_Q + a7*b3*MED_W*HIGH_Z*HIGH_Q + a1*b4*MED_V*HIGH_Q +
     a4*b4*MED_W*MED_V*HIGH_Q + a5*b4*HIGH_Z*MED_V*HIGH_Q +
     a7*b4*MED_W*HIGH_Z*MED_V*HIGH_Q;
    IHHMH = a1*b1 + a4*b1*HIGH_W + a5*b1*HIGH_Z + a7*b1*HIGH_W*HIGH_Z +
     a1*b2*MED_V + a4*b2*HIGH_W*MED_V + a5*b2*HIGH_Z*MED_V +
     a7*b2*HIGH_W*HIGH_Z*MED_V + a1*b3*HIGH_Q + a4*b3*HIGH_W*HIGH_Q +
     a5*b3*HIGH_Z*HIGH_Q + a7*b3*HIGH_W*HIGH_Z*HIGH_Q + a1*b4*MED_V*HIGH_Q +
     a4*b4*HIGH_W*MED_V*HIGH_Q + a5*b4*HIGH_Z*MED_V*HIGH_Q +
     a7*b4*HIGH_W*HIGH_Z*MED_V*HIGH_Q;
    ILLHH = a1*b1 + a4*b1*LOW_W + a5*b1*LOW_Z + a7*b1*LOW_W*LOW_Z +
     a1*b2*HIGH_V + a4*b2*LOW_W*HIGH_V + a5*b2*LOW_Z*HIGH_V +
     a7*b2*LOW_W*LOW_Z*HIGH_V + a1*b3*HIGH_Q + a4*b3*LOW_W*HIGH_Q +
     a5*b3*LOW_Z*HIGH_Q + a7*b3*LOW_W*LOW_Z*HIGH_Q + a1*b4*HIGH_V*HIGH_Q +
     a4*b4*LOW_W*HIGH_V*HIGH_Q + a5*b4*LOW_Z*HIGH_V*HIGH_Q +
     a7*b4*LOW_W*LOW_Z*HIGH_V*HIGH_Q;
    IMLHH = a1*b1 + a4*b1*MED_W + a5*b1*LOW_Z + a7*b1*MED_W*LOW_Z +
     a1*b2*HIGH_V + a4*b2*MED_W*HIGH_V + a5*b2*LOW_Z*HIGH_V +
     a7*b2*MED_W*LOW_Z*HIGH_V + a1*b3*HIGH_Q + a4*b3*MED_W*HIGH_Q +
     a5*b3*LOW_Z*HIGH_Q + a7*b3*MED_W*LOW_Z*HIGH_Q + a1*b4*HIGH_V*HIGH_Q +
     a4*b4*MED_W*HIGH_V*HIGH_Q + a5*b4*LOW_Z*HIGH_V*HIGH_Q +
     a7*b4*MED_W*LOW_Z*HIGH_V*HIGH_Q;
    IHLHH = a1*b1 + a4*b1*HIGH_W + a5*b1*LOW_Z + a7*b1*HIGH_W*LOW_Z +
     a1*b2*HIGH_V + a4*b2*HIGH_W*HIGH_V + a5*b2*LOW_Z*HIGH_V +
     a7*b2*HIGH_W*LOW_Z*HIGH_V + a1*b3*HIGH_Q + a4*b3*HIGH_W*HIGH_Q +
     a5*b3*LOW_Z*HIGH_Q + a7*b3*HIGH_W*LOW_Z*HIGH_Q + a1*b4*HIGH_V*HIGH_Q +
     a4*b4*HIGH_W*HIGH_V*HIGH_Q + a5*b4*LOW_Z*HIGH_V*HIGH_Q +
     a7*b4*HIGH_W*LOW_Z*HIGH_V*HIGH_Q;
    ILMHH = a1*b1 + a4*b1*LOW_W + a5*b1*MED_Z + a7*b1*LOW_W*MED_Z +
     a1*b2*HIGH_V + a4*b2*LOW_W*HIGH_V + a5*b2*MED_Z*HIGH_V +
     a7*b2*LOW_W*MED_Z*HIGH_V + a1*b3*HIGH_Q + a4*b3*LOW_W*HIGH_Q +
     a5*b3*MED_Z*HIGH_Q + a7*b3*LOW_W*MED_Z*HIGH_Q + a1*b4*HIGH_V*HIGH_Q +
     a4*b4*LOW_W*HIGH_V*HIGH_Q + a5*b4*MED_Z*HIGH_V*HIGH_Q +
     a7*b4*LOW_W*MED_Z*HIGH_V*HIGH_Q;
    IMMHH = a1*b1 + a4*b1*MED_W + a5*b1*MED_Z + a7*b1*MED_W*MED_Z +
     a1*b2*HIGH_V + a4*b2*MED_W*HIGH_V + a5*b2*MED_Z*HIGH_V +
     a7*b2*MED_W*MED_Z*HIGH_V + a1*b3*HIGH_Q + a4*b3*MED_W*HIGH_Q +
     a5*b3*MED_Z*HIGH_Q + a7*b3*MED_W*MED_Z*HIGH_Q + a1*b4*HIGH_V*HIGH_Q +
     a4*b4*MED_W*HIGH_V*HIGH_Q + a5*b4*MED_Z*HIGH_V*HIGH_Q +
     a7*b4*MED_W*MED_Z*HIGH_V*HIGH_Q;
    IHMHH = a1*b1 + a4*b1*HIGH_W + a5*b1*MED_Z + a7*b1*HIGH_W*MED_Z +
     a1*b2*HIGH_V + a4*b2*HIGH_W*HIGH_V + a5*b2*MED_Z*HIGH_V +
     a7*b2*HIGH_W*MED_Z*HIGH_V + a1*b3*HIGH_Q + a4*b3*HIGH_W*HIGH_Q +
     a5*b3*MED_Z*HIGH_Q + a7*b3*HIGH_W*MED_Z*HIGH_Q + a1*b4*HIGH_V*HIGH_Q +
     a4*b4*HIGH_W*HIGH_V*HIGH_Q + a5*b4*MED_Z*HIGH_V*HIGH_Q +
     a7*b4*HIGH_W*MED_Z*HIGH_V*HIGH_Q;
    ILHHH = a1*b1 + a4*b1*LOW_W + a5*b1*HIGH_Z + a7*b1*LOW_W*HIGH_Z +
     a1*b2*HIGH_V + a4*b2*LOW_W*HIGH_V + a5*b2*HIGH_Z*HIGH_V +
     a7*b2*LOW_W*HIGH_Z*HIGH_V + a1*b3*HIGH_Q + a4*b3*LOW_W*HIGH_Q +
     a5*b3*HIGH_Z*HIGH_Q + a7*b3*LOW_W*HIGH_Z*HIGH_Q + a1*b4*HIGH_V*HIGH_Q +
     a4*b4*LOW_W*HIGH_V*HIGH_Q + a5*b4*HIGH_Z*HIGH_V*HIGH_Q +
     a7*b4*LOW_W*HIGH_Z*HIGH_V*HIGH_Q;
    IMHHH = a1*b1 + a4*b1*MED_W + a5*b1*HIGH_Z + a7*b1*MED_W*HIGH_Z +
     a1*b2*HIGH_V + a4*b2*MED_W*HIGH_V + a5*b2*HIGH_Z*HIGH_V +
     a7*b2*MED_W*HIGH_Z*HIGH_V + a1*b3*HIGH_Q + a4*b3*MED_W*HIGH_Q +
     a5*b3*HIGH_Z*HIGH_Q + a7*b3*MED_W*HIGH_Z*HIGH_Q + a1*b4*HIGH_V*HIGH_Q +
     a4*b4*MED_W*HIGH_V*HIGH_Q + a5*b4*HIGH_Z*HIGH_V*HIGH_Q +
     a7*b4*MED_W*HIGH_Z*HIGH_V*HIGH_Q;
    IHHHH = a1*b1 + a4*b1*HIGH_W + a5*b1*HIGH_Z + a7*b1*HIGH_W*HIGH_Z +
     a1*b2*HIGH_V + a4*b2*HIGH_W*HIGH_V + a5*b2*HIGH_Z*HIGH_V +
     a7*b2*HIGH_W*HIGH_Z*HIGH_V + a1*b3*HIGH_Q + a4*b3*HIGH_W*HIGH_Q +
     a5*b3*HIGH_Z*HIGH_Q + a7*b3*HIGH_W*HIGH_Z*HIGH_Q + a1*b4*HIGH_V*HIGH_Q +
     a4*b4*HIGH_W*HIGH_V*HIGH_Q + a5*b4*HIGH_Z*HIGH_V*HIGH_Q +
     a7*b4*HIGH_W*HIGH_Z*HIGH_V*HIGH_Q;
! Calc conditional direct effects for each combination of moderator values
    DLOV_LOQ = cdash1 + cdash4*LOW_V + cdash5*LOW_Q + cdash7*LOW_V*LOW_Q;
    DMEV_LOQ = cdash1 + cdash4*MED_V + cdash5*LOW_Q + cdash7*MED_V*LOW_Q;
    DHIV_LOQ = cdash1 + cdash4*HIGH_V + cdash5*LOW_Q + cdash7*HIGH_V*LOW_Q;
    DLOV_MEQ = cdash1 + cdash4*LOW_V + cdash5*MED_Q + cdash7*LOW_V*MED_Q;
    DMEV_MEQ = cdash1 + cdash4*MED_V + cdash5*MED_Q + cdash7*MED_V*MED_Q;
    DHIV_MEQ = cdash1 + cdash4*HIGH_V + cdash5*MED_Q + cdash7*HIGH_V*MED_Q;
    DLOV_HIQ = cdash1 + cdash4*LOW_V + cdash5*HIGH_Q + cdash7*LOW_V*HIGH_Q;
    DMEV_HIQ = cdash1 + cdash4*MED_V + cdash5*HIGH_Q + cdash7*MED_V*HIGH_Q;
    DHIV_HIQ = cdash1 + cdash4*HIGH_V + cdash5*HIGH_Q + cdash7*HIGH_V*HIGH_Q;
! Calc conditional total effects for each combination of moderator values
    TLLLL = ILLLL + DLOV_LOQ;
    TMLLL = IMLLL + DLOV_LOQ;
    THLLL = IHLLL + DLOV_LOQ;
    TLMLL = ILMLL + DLOV_LOQ;
    TMMLL = IMMLL + DLOV_LOQ;
    THMLL = IHMLL + DLOV_LOQ;
    TLHLL = ILHLL + DLOV_LOQ;
    TMHLL = IMHLL + DLOV_LOQ;
    THHLL = IHHLL + DLOV_LOQ;
    TLLML = ILLML + DMEV_LOQ;
    TMLML = IMLML + DMEV_LOQ;
    THLML = IHLML + DMEV_LOQ;
    TLMML = ILMML + DMEV_LOQ;
    TMMML = IMMML + DMEV_LOQ;
    THMML = IHMML + DMEV_LOQ;
    TLHML = ILHML + DMEV_LOQ;
    TMHML = IMHML + DMEV_LOQ;
    THHML = IHHML + DMEV_LOQ;
    TLLHL = ILLHL + DHIV_LOQ;
    TMLHL = IMLHL + DHIV_LOQ;
    THLHL = IHLHL + DHIV_LOQ;
    TLMHL = ILMHL + DHIV_LOQ;
    TMMHL = IMMHL + DHIV_LOQ;
    THMHL = IHMHL + DHIV_LOQ;
    TLHHL = ILHHL + DHIV_LOQ;
    TMHHL = IMHHL + DHIV_LOQ;
    THHHL = IHHHL + DHIV_LOQ;
    TLLLM = ILLLM + DLOV_MEQ;
    TMLLM = IMLLM + DLOV_MEQ;
    THLLM = IHLLM + DLOV_MEQ;
    TLMLM = ILMLM + DLOV_MEQ;
    TMMLM = IMMLM + DLOV_MEQ;
    THMLM = IHMLM + DLOV_MEQ;
    TLHLM = ILHLM + DLOV_MEQ;
    TMHLM = IMHLM + DLOV_MEQ;
    THHLM = IHHLM + DLOV_MEQ;
    TLLMM = ILLMM + DMEV_MEQ;
    TMLMM = IMLMM + DMEV_MEQ;
    THLMM = IHLMM + DMEV_MEQ;
    TLMMM = ILMMM + DMEV_MEQ;
    TMMMM = IMMMM + DMEV_MEQ;
    THMMM = IHMMM + DMEV_MEQ;
    TLHMM = ILHMM + DMEV_MEQ;
    TMHMM = IMHMM + DMEV_MEQ;
    THHMM = IHHMM + DMEV_MEQ;
    TLLHM = ILLHM + DHIV_MEQ;
    TMLHM = IMLHM + DHIV_MEQ;
    THLHM = IHLHM + DHIV_MEQ;
    TLMHM = ILMHM + DHIV_MEQ;
    TMMHM = IMMHM + DHIV_MEQ;
    THMHM = IHMHM + DHIV_MEQ;
    TLHHM = ILHHM + DHIV_MEQ;
    TMHHM = IMHHM + DHIV_MEQ;
    THHHM = IHHHM + DHIV_MEQ;
    TLLLH = ILLLH + DLOV_HIQ;
    TMLLH = IMLLH + DLOV_HIQ;
    THLLH = IHLLH + DLOV_HIQ;
    TLMLH = ILMLH + DLOV_HIQ;
    TMMLH = IMMLH + DLOV_HIQ;
    THMLH = IHMLH + DLOV_HIQ;
    TLHLH = ILHLH + DLOV_HIQ;
    TMHLH = IMHLH + DLOV_HIQ;
    THHLH = IHHLH + DLOV_HIQ;
    TLLMH = ILLMH + DMEV_HIQ;
    TMLMH = IMLMH + DMEV_HIQ;
    THLMH = IHLMH + DMEV_HIQ;
    TLMMH = ILMMH + DMEV_HIQ;
    TMMMH = IMMMH + DMEV_HIQ;
    THMMH = IHMMH + DMEV_HIQ;
    TLHMH = ILHMH + DMEV_HIQ;
    TMHMH = IMHMH + DMEV_HIQ;
    THHMH = IHHMH + DMEV_HIQ;
    TLLHH = ILLHH + DHIV_HIQ;
    TMLHH = IMLHH + DHIV_HIQ;
    THLHH = IHLHH + DHIV_HIQ;
    TLMHH = ILMHH + DHIV_HIQ;
    TMMHH = IMMHH + DHIV_HIQ;
    THMHH = IHMHH + DHIV_HIQ;
    TLHHH = ILHHH + DHIV_HIQ;
    TMHHH = IMHHH + DHIV_HIQ;
    THHHH = IHHHH + DHIV_HIQ;
! Use loop plot to plot conditional indirect effect of X on Y for each combination of low, med, high moderator values
! Could be edited to show conditional direct or conditional total effects instead
! NOTE - values of 1,5 in LOOP() statement need to be replaced by
! logical min and max limits of predictor X used in analysis
    PLOT(PLLLL PMLLL PHLLL PLMLL PMMLL PHMLL PLHLL PMHLL PHHLL
    PLLML PMLML PHLML PLMML PMMML PHMML PLHML PMHML PHHML
    PLLHL PMLHL PHLHL PLMHL PMMHL PHMHL PLHHL PMHHL PHHHL
    PLLLM PMLLM PHLLM PLMLM PMMLM PHMLM PLHLM PMHLM PHHLM
    PLLMM PMLMM PHLMM PLMMM PMMMM PHMMM PLHMM PMHMM PHHMM
    PLLHM PMLHM PHLHM PLMHM PMMHM PHMHM PLHHM PMHHM PHHHM
    PLLLH PMLLH PHLLH PLMLH PMMLH PHMLH PLHLH PMHLH PHHLH
    PLLMH PMLMH PHLMH PLMMH PMMMH PHMMH PLHMH PMHMH PHHMH
    PLLHH PMLHH PHLHH PLMHH PMMHH PHMHH PLHHH PMHHH PHHHH);
    LOOP(XVAL,1,5,0.1);
    PLLLL = ILLLL*XVAL;
    PMLLL = IMLLL*XVAL;
    PHLLL = IHLLL*XVAL;
    PLMLL = ILMLL*XVAL;
    PMMLL = IMMLL*XVAL;
    PHMLL = IHMLL*XVAL;
    PLHLL = ILHLL*XVAL;
    PMHLL = IMHLL*XVAL;
    PHHLL = IHHLL*XVAL;
    PLLML = ILLML*XVAL;
    PMLML = IMLML*XVAL;
    PHLML = IHLML*XVAL;
    PLMML = ILMML*XVAL;
    PMMML = IMMML*XVAL;
    PHMML = IHMML*XVAL;
    PLHML = ILHML*XVAL;
    PMHML = IMHML*XVAL;
    PHHML = IHHML*XVAL;
    PLLHL = ILLHL*XVAL;
    PMLHL = IMLHL*XVAL;
    PHLHL = IHLHL*XVAL;
    PLMHL = ILMHL*XVAL;
    PMMHL = IMMHL*XVAL;
    PHMHL = IHMHL*XVAL;
    PLHHL = ILHHL*XVAL;
    PMHHL = IMHHL*XVAL;
    PHHHL = IHHHL*XVAL;
    PLLLM = ILLLM*XVAL;
    PMLLM = IMLLM*XVAL;
    PHLLM = IHLLM*XVAL;
    PLMLM = ILMLM*XVAL;
    PMMLM = IMMLM*XVAL;
    PHMLM = IHMLM*XVAL;
    PLHLM = ILHLM*XVAL;
    PMHLM = IMHLM*XVAL;
    PHHLM = IHHLM*XVAL;
    PLLMM = ILLMM*XVAL;
    PMLMM = IMLMM*XVAL;
    PHLMM = IHLMM*XVAL;
    PLMMM = ILMMM*XVAL;
    PMMMM = IMMMM*XVAL;
    PHMMM = IHMMM*XVAL;
    PLHMM = ILHMM*XVAL;
    PMHMM = IMHMM*XVAL;
    PHHMM = IHHMM*XVAL;
    PLLHM = ILLHM*XVAL;
    PMLHM = IMLHM*XVAL;
    PHLHM = IHLHM*XVAL;
    PLMHM = ILMHM*XVAL;
    PMMHM = IMMHM*XVAL;
    PHMHM = IHMHM*XVAL;
    PLHHM = ILHHM*XVAL;
    PMHHM = IMHHM*XVAL;
    PHHHM = IHHHM*XVAL;
    PLLLH = ILLLH*XVAL;
    PMLLH = IMLLH*XVAL;
    PHLLH = IHLLH*XVAL;
    PLMLH = ILMLH*XVAL;
    PMMLH = IMMLH*XVAL;
    PHMLH = IHMLH*XVAL;
    PLHLH = ILHLH*XVAL;
    PMHLH = IMHLH*XVAL;
    PHHLH = IHHLH*XVAL;
    PLLMH = ILLMH*XVAL;
    PMLMH = IMLMH*XVAL;
    PHLMH = IHLMH*XVAL;
    PLMMH = ILMMH*XVAL;
    PMMMH = IMMMH*XVAL;
    PHMMH = IHMMH*XVAL;
    PLHMH = ILHMH*XVAL;
    PMHMH = IMHMH*XVAL;
    PHHMH = IHHMH*XVAL;
    PLLHH = ILLHH*XVAL;
    PMLHH = IMLHH*XVAL;
    PHLHH = IHLHH*XVAL;
    PLMHH = ILMHH*XVAL;
    PMMHH = IMMHH*XVAL;
    PHMHH = IHMHH*XVAL;
    PLHHH = ILHHH*XVAL;
    PMHHH = IMHHH*XVAL;
    PHHHH = IHHHH*XVAL;
PLOT:
   TYPE = plot2;
OUTPUT:
   STAND CINT(bcbootstrap);