! 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 VQ MV MQ XWZ 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;
   WZ = W*Z;
   VQ = V*Q;
   MVQ = M*V*Q;
   XWZ = X*W*Z;
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 V (b2);
   Y ON Q (b3);
   Y ON MV (b4);
   Y ON MQ (b5);
   Y ON VQ (b6);
   Y ON MVQ (b7);
   Y ON X (cdash1);
   Y ON W (cdash2);
   Y ON Z (cdash3);
   Y ON XW (cdash4);
   Y ON XZ (cdash5);
   Y ON WZ (cdash6);
   Y ON XWZ (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
    DLOW_LOZ DMEW_LOZ DHIW_LOZ DLOW_MEZ DMEW_MEZ DHIW_MEZ
    DLOW_HIZ DMEW_HIZ DHIW_HIZ
    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*b4*LOW_V + a4*b4*LOW_W*LOW_V + a5*b4*LOW_Z*LOW_V +
     a7*b4*LOW_W*LOW_Z*LOW_V + a1*b5*LOW_Q + a4*b5*LOW_W*LOW_Q +
     a5*b5*LOW_Z*LOW_Q + a7*b5*LOW_W*LOW_Z*LOW_Q + a1*b7*LOW_V*LOW_Q +
     a4*b7*LOW_W*LOW_V*LOW_Q + a5*b7*LOW_Z*LOW_V*LOW_Q +
     a7*b7*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*b4*LOW_V + a4*b4*MED_W*LOW_V + a5*b4*LOW_Z*LOW_V +
     a7*b4*MED_W*LOW_Z*LOW_V + a1*b5*LOW_Q + a4*b5*MED_W*LOW_Q +
     a5*b5*LOW_Z*LOW_Q + a7*b5*MED_W*LOW_Z*LOW_Q + a1*b7*LOW_V*LOW_Q +
     a4*b7*MED_W*LOW_V*LOW_Q + a5*b7*LOW_Z*LOW_V*LOW_Q +
     a7*b7*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*b4*LOW_V + a4*b4*HIGH_W*LOW_V + a5*b4*LOW_Z*LOW_V +
     a7*b4*HIGH_W*LOW_Z*LOW_V + a1*b5*LOW_Q + a4*b5*HIGH_W*LOW_Q +
     a5*b5*LOW_Z*LOW_Q + a7*b5*HIGH_W*LOW_Z*LOW_Q + a1*b7*LOW_V*LOW_Q +
     a4*b7*HIGH_W*LOW_V*LOW_Q + a5*b7*LOW_Z*LOW_V*LOW_Q +
     a7*b7*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*b4*LOW_V + a4*b4*LOW_W*LOW_V + a5*b4*MED_Z*LOW_V +
     a7*b4*LOW_W*MED_Z*LOW_V + a1*b5*LOW_Q + a4*b5*LOW_W*LOW_Q +
     a5*b5*MED_Z*LOW_Q + a7*b5*LOW_W*MED_Z*LOW_Q + a1*b7*LOW_V*LOW_Q +
     a4*b7*LOW_W*LOW_V*LOW_Q + a5*b7*MED_Z*LOW_V*LOW_Q +
     a7*b7*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*b4*LOW_V + a4*b4*MED_W*LOW_V + a5*b4*MED_Z*LOW_V +
     a7*b4*MED_W*MED_Z*LOW_V + a1*b5*LOW_Q + a4*b5*MED_W*LOW_Q +
     a5*b5*MED_Z*LOW_Q + a7*b5*MED_W*MED_Z*LOW_Q + a1*b7*LOW_V*LOW_Q +
     a4*b7*MED_W*LOW_V*LOW_Q + a5*b7*MED_Z*LOW_V*LOW_Q +
     a7*b7*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*b4*LOW_V + a4*b4*HIGH_W*LOW_V + a5*b4*MED_Z*LOW_V +
     a7*b4*HIGH_W*MED_Z*LOW_V + a1*b5*LOW_Q + a4*b5*HIGH_W*LOW_Q +
     a5*b5*MED_Z*LOW_Q + a7*b5*HIGH_W*MED_Z*LOW_Q + a1*b7*LOW_V*LOW_Q +
     a4*b7*HIGH_W*LOW_V*LOW_Q + a5*b7*MED_Z*LOW_V*LOW_Q +
     a7*b7*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*b4*LOW_V + a4*b4*LOW_W*LOW_V + a5*b4*HIGH_Z*LOW_V +
     a7*b4*LOW_W*HIGH_Z*LOW_V + a1*b5*LOW_Q + a4*b5*LOW_W*LOW_Q +
     a5*b5*HIGH_Z*LOW_Q + a7*b5*LOW_W*HIGH_Z*LOW_Q + a1*b7*LOW_V*LOW_Q +
     a4*b7*LOW_W*LOW_V*LOW_Q + a5*b7*HIGH_Z*LOW_V*LOW_Q +
     a7*b7*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*b4*LOW_V + a4*b4*MED_W*LOW_V + a5*b4*HIGH_Z*LOW_V +
     a7*b4*MED_W*HIGH_Z*LOW_V + a1*b5*LOW_Q + a4*b5*MED_W*LOW_Q +
     a5*b5*HIGH_Z*LOW_Q + a7*b5*MED_W*HIGH_Z*LOW_Q + a1*b7*LOW_V*LOW_Q +
     a4*b7*MED_W*LOW_V*LOW_Q + a5*b7*HIGH_Z*LOW_V*LOW_Q +
     a7*b7*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*b4*LOW_V + a4*b4*HIGH_W*LOW_V + a5*b4*HIGH_Z*LOW_V +
     a7*b4*HIGH_W*HIGH_Z*LOW_V + a1*b5*LOW_Q + a4*b5*HIGH_W*LOW_Q +
     a5*b5*HIGH_Z*LOW_Q + a7*b5*HIGH_W*HIGH_Z*LOW_Q + a1*b7*LOW_V*LOW_Q +
     a4*b7*HIGH_W*LOW_V*LOW_Q + a5*b7*HIGH_Z*LOW_V*LOW_Q +
     a7*b7*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*b4*MED_V + a4*b4*LOW_W*MED_V + a5*b4*LOW_Z*MED_V +
     a7*b4*LOW_W*LOW_Z*MED_V + a1*b5*LOW_Q + a4*b5*LOW_W*LOW_Q +
     a5*b5*LOW_Z*LOW_Q + a7*b5*LOW_W*LOW_Z*LOW_Q + a1*b7*MED_V*LOW_Q +
     a4*b7*LOW_W*MED_V*LOW_Q + a5*b7*LOW_Z*MED_V*LOW_Q +
     a7*b7*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*b4*MED_V + a4*b4*MED_W*MED_V + a5*b4*LOW_Z*MED_V +
     a7*b4*MED_W*LOW_Z*MED_V + a1*b5*LOW_Q + a4*b5*MED_W*LOW_Q +
     a5*b5*LOW_Z*LOW_Q + a7*b5*MED_W*LOW_Z*LOW_Q + a1*b7*MED_V*LOW_Q +
     a4*b7*MED_W*MED_V*LOW_Q + a5*b7*LOW_Z*MED_V*LOW_Q +
     a7*b7*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*b4*MED_V + a4*b4*HIGH_W*MED_V + a5*b4*LOW_Z*MED_V +
     a7*b4*HIGH_W*LOW_Z*MED_V + a1*b5*LOW_Q + a4*b5*HIGH_W*LOW_Q +
     a5*b5*LOW_Z*LOW_Q + a7*b5*HIGH_W*LOW_Z*LOW_Q + a1*b7*MED_V*LOW_Q +
     a4*b7*HIGH_W*MED_V*LOW_Q + a5*b7*LOW_Z*MED_V*LOW_Q +
     a7*b7*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*b4*MED_V + a4*b4*LOW_W*MED_V + a5*b4*MED_Z*MED_V +
     a7*b4*LOW_W*MED_Z*MED_V + a1*b5*LOW_Q + a4*b5*LOW_W*LOW_Q +
     a5*b5*MED_Z*LOW_Q + a7*b5*LOW_W*MED_Z*LOW_Q + a1*b7*MED_V*LOW_Q +
     a4*b7*LOW_W*MED_V*LOW_Q + a5*b7*MED_Z*MED_V*LOW_Q +
     a7*b7*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*b4*MED_V + a4*b4*MED_W*MED_V + a5*b4*MED_Z*MED_V +
     a7*b4*MED_W*MED_Z*MED_V + a1*b5*LOW_Q + a4*b5*MED_W*LOW_Q +
     a5*b5*MED_Z*LOW_Q + a7*b5*MED_W*MED_Z*LOW_Q + a1*b7*MED_V*LOW_Q +
     a4*b7*MED_W*MED_V*LOW_Q + a5*b7*MED_Z*MED_V*LOW_Q +
     a7*b7*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*b4*MED_V + a4*b4*HIGH_W*MED_V + a5*b4*MED_Z*MED_V +
     a7*b4*HIGH_W*MED_Z*MED_V + a1*b5*LOW_Q + a4*b5*HIGH_W*LOW_Q +
     a5*b5*MED_Z*LOW_Q + a7*b5*HIGH_W*MED_Z*LOW_Q + a1*b7*MED_V*LOW_Q +
     a4*b7*HIGH_W*MED_V*LOW_Q + a5*b7*MED_Z*MED_V*LOW_Q +
     a7*b7*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*b4*MED_V + a4*b4*LOW_W*MED_V + a5*b4*HIGH_Z*MED_V +
     a7*b4*LOW_W*HIGH_Z*MED_V + a1*b5*LOW_Q + a4*b5*LOW_W*LOW_Q +
     a5*b5*HIGH_Z*LOW_Q + a7*b5*LOW_W*HIGH_Z*LOW_Q + a1*b7*MED_V*LOW_Q +
     a4*b7*LOW_W*MED_V*LOW_Q + a5*b7*HIGH_Z*MED_V*LOW_Q +
     a7*b7*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*b4*MED_V + a4*b4*MED_W*MED_V + a5*b4*HIGH_Z*MED_V +
     a7*b4*MED_W*HIGH_Z*MED_V + a1*b5*LOW_Q + a4*b5*MED_W*LOW_Q +
     a5*b5*HIGH_Z*LOW_Q + a7*b5*MED_W*HIGH_Z*LOW_Q + a1*b7*MED_V*LOW_Q +
     a4*b7*MED_W*MED_V*LOW_Q + a5*b7*HIGH_Z*MED_V*LOW_Q +
     a7*b7*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*b4*MED_V + a4*b4*HIGH_W*MED_V + a5*b4*HIGH_Z*MED_V +
     a7*b4*HIGH_W*HIGH_Z*MED_V + a1*b5*LOW_Q + a4*b5*HIGH_W*LOW_Q +
     a5*b5*HIGH_Z*LOW_Q + a7*b5*HIGH_W*HIGH_Z*LOW_Q + a1*b7*MED_V*LOW_Q +
     a4*b7*HIGH_W*MED_V*LOW_Q + a5*b7*HIGH_Z*MED_V*LOW_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*LOW_W*HIGH_V + a5*b4*LOW_Z*HIGH_V +
     a7*b4*LOW_W*LOW_Z*HIGH_V + a1*b5*LOW_Q + a4*b5*LOW_W*LOW_Q +
     a5*b5*LOW_Z*LOW_Q + a7*b5*LOW_W*LOW_Z*LOW_Q + a1*b7*HIGH_V*LOW_Q +
     a4*b7*LOW_W*HIGH_V*LOW_Q + a5*b7*LOW_Z*HIGH_V*LOW_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*MED_W*HIGH_V + a5*b4*LOW_Z*HIGH_V +
     a7*b4*MED_W*LOW_Z*HIGH_V + a1*b5*LOW_Q + a4*b5*MED_W*LOW_Q +
     a5*b5*LOW_Z*LOW_Q + a7*b5*MED_W*LOW_Z*LOW_Q + a1*b7*HIGH_V*LOW_Q +
     a4*b7*MED_W*HIGH_V*LOW_Q + a5*b7*LOW_Z*HIGH_V*LOW_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*HIGH_W*HIGH_V + a5*b4*LOW_Z*HIGH_V +
     a7*b4*HIGH_W*LOW_Z*HIGH_V + a1*b5*LOW_Q + a4*b5*HIGH_W*LOW_Q +
     a5*b5*LOW_Z*LOW_Q + a7*b5*HIGH_W*LOW_Z*LOW_Q + a1*b7*HIGH_V*LOW_Q +
     a4*b7*HIGH_W*HIGH_V*LOW_Q + a5*b7*LOW_Z*HIGH_V*LOW_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*LOW_W*HIGH_V + a5*b4*MED_Z*HIGH_V +
     a7*b4*LOW_W*MED_Z*HIGH_V + a1*b5*LOW_Q + a4*b5*LOW_W*LOW_Q +
     a5*b5*MED_Z*LOW_Q + a7*b5*LOW_W*MED_Z*LOW_Q + a1*b7*HIGH_V*LOW_Q +
     a4*b7*LOW_W*HIGH_V*LOW_Q + a5*b7*MED_Z*HIGH_V*LOW_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*MED_W*HIGH_V + a5*b4*MED_Z*HIGH_V +
     a7*b4*MED_W*MED_Z*HIGH_V + a1*b5*LOW_Q + a4*b5*MED_W*LOW_Q +
     a5*b5*MED_Z*LOW_Q + a7*b5*MED_W*MED_Z*LOW_Q + a1*b7*HIGH_V*LOW_Q +
     a4*b7*MED_W*HIGH_V*LOW_Q + a5*b7*MED_Z*HIGH_V*LOW_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*HIGH_W*HIGH_V + a5*b4*MED_Z*HIGH_V +
     a7*b4*HIGH_W*MED_Z*HIGH_V + a1*b5*LOW_Q + a4*b5*HIGH_W*LOW_Q +
     a5*b5*MED_Z*LOW_Q + a7*b5*HIGH_W*MED_Z*LOW_Q + a1*b7*HIGH_V*LOW_Q +
     a4*b7*HIGH_W*HIGH_V*LOW_Q + a5*b7*MED_Z*HIGH_V*LOW_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*LOW_W*HIGH_V + a5*b4*HIGH_Z*HIGH_V +
     a7*b4*LOW_W*HIGH_Z*HIGH_V + a1*b5*LOW_Q + a4*b5*LOW_W*LOW_Q +
     a5*b5*HIGH_Z*LOW_Q + a7*b5*LOW_W*HIGH_Z*LOW_Q + a1*b7*HIGH_V*LOW_Q +
     a4*b7*LOW_W*HIGH_V*LOW_Q + a5*b7*HIGH_Z*HIGH_V*LOW_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*MED_W*HIGH_V + a5*b4*HIGH_Z*HIGH_V +
     a7*b4*MED_W*HIGH_Z*HIGH_V + a1*b5*LOW_Q + a4*b5*MED_W*LOW_Q +
     a5*b5*HIGH_Z*LOW_Q + a7*b5*MED_W*HIGH_Z*LOW_Q + a1*b7*HIGH_V*LOW_Q +
     a4*b7*MED_W*HIGH_V*LOW_Q + a5*b7*HIGH_Z*HIGH_V*LOW_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*HIGH_W*HIGH_V + a5*b4*HIGH_Z*HIGH_V +
     a7*b4*HIGH_W*HIGH_Z*HIGH_V + a1*b5*LOW_Q + a4*b5*HIGH_W*LOW_Q +
     a5*b5*HIGH_Z*LOW_Q + a7*b5*HIGH_W*HIGH_Z*LOW_Q + a1*b7*HIGH_V*LOW_Q +
     a4*b7*HIGH_W*HIGH_V*LOW_Q + a5*b7*HIGH_Z*HIGH_V*LOW_Q +
     a7*b7*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*b4*LOW_V + a4*b4*LOW_W*LOW_V + a5*b4*LOW_Z*LOW_V +
     a7*b4*LOW_W*LOW_Z*LOW_V + a1*b5*MED_Q + a4*b5*LOW_W*MED_Q +
     a5*b5*LOW_Z*MED_Q + a7*b5*LOW_W*LOW_Z*MED_Q + a1*b7*LOW_V*MED_Q +
     a4*b7*LOW_W*LOW_V*MED_Q + a5*b7*LOW_Z*LOW_V*MED_Q +
     a7*b7*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*b4*LOW_V + a4*b4*MED_W*LOW_V + a5*b4*LOW_Z*LOW_V +
     a7*b4*MED_W*LOW_Z*LOW_V + a1*b5*MED_Q + a4*b5*MED_W*MED_Q +
     a5*b5*LOW_Z*MED_Q + a7*b5*MED_W*LOW_Z*MED_Q + a1*b7*LOW_V*MED_Q +
     a4*b7*MED_W*LOW_V*MED_Q + a5*b7*LOW_Z*LOW_V*MED_Q +
     a7*b7*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*b4*LOW_V + a4*b4*HIGH_W*LOW_V + a5*b4*LOW_Z*LOW_V +
     a7*b4*HIGH_W*LOW_Z*LOW_V + a1*b5*MED_Q + a4*b5*HIGH_W*MED_Q +
     a5*b5*LOW_Z*MED_Q + a7*b5*HIGH_W*LOW_Z*MED_Q + a1*b7*LOW_V*MED_Q +
     a4*b7*HIGH_W*LOW_V*MED_Q + a5*b7*LOW_Z*LOW_V*MED_Q +
     a7*b7*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*b4*LOW_V + a4*b4*LOW_W*LOW_V + a5*b4*MED_Z*LOW_V +
     a7*b4*LOW_W*MED_Z*LOW_V + a1*b5*MED_Q + a4*b5*LOW_W*MED_Q +
     a5*b5*MED_Z*MED_Q + a7*b5*LOW_W*MED_Z*MED_Q + a1*b7*LOW_V*MED_Q +
     a4*b7*LOW_W*LOW_V*MED_Q + a5*b7*MED_Z*LOW_V*MED_Q +
     a7*b7*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*b4*LOW_V + a4*b4*MED_W*LOW_V + a5*b4*MED_Z*LOW_V +
     a7*b4*MED_W*MED_Z*LOW_V + a1*b5*MED_Q + a4*b5*MED_W*MED_Q +
     a5*b5*MED_Z*MED_Q + a7*b5*MED_W*MED_Z*MED_Q + a1*b7*LOW_V*MED_Q +
     a4*b7*MED_W*LOW_V*MED_Q + a5*b7*MED_Z*LOW_V*MED_Q +
     a7*b7*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*b4*LOW_V + a4*b4*HIGH_W*LOW_V + a5*b4*MED_Z*LOW_V +
     a7*b4*HIGH_W*MED_Z*LOW_V + a1*b5*MED_Q + a4*b5*HIGH_W*MED_Q +
     a5*b5*MED_Z*MED_Q + a7*b5*HIGH_W*MED_Z*MED_Q + a1*b7*LOW_V*MED_Q +
     a4*b7*HIGH_W*LOW_V*MED_Q + a5*b7*MED_Z*LOW_V*MED_Q +
     a7*b7*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*b4*LOW_V + a4*b4*LOW_W*LOW_V + a5*b4*HIGH_Z*LOW_V +
     a7*b4*LOW_W*HIGH_Z*LOW_V + a1*b5*MED_Q + a4*b5*LOW_W*MED_Q +
     a5*b5*HIGH_Z*MED_Q + a7*b5*LOW_W*HIGH_Z*MED_Q + a1*b7*LOW_V*MED_Q +
     a4*b7*LOW_W*LOW_V*MED_Q + a5*b7*HIGH_Z*LOW_V*MED_Q +
     a7*b7*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*b4*LOW_V + a4*b4*MED_W*LOW_V + a5*b4*HIGH_Z*LOW_V +
     a7*b4*MED_W*HIGH_Z*LOW_V + a1*b5*MED_Q + a4*b5*MED_W*MED_Q +
     a5*b5*HIGH_Z*MED_Q + a7*b5*MED_W*HIGH_Z*MED_Q + a1*b7*LOW_V*MED_Q +
     a4*b7*MED_W*LOW_V*MED_Q + a5*b7*HIGH_Z*LOW_V*MED_Q +
     a7*b7*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*b4*LOW_V + a4*b4*HIGH_W*LOW_V + a5*b4*HIGH_Z*LOW_V +
     a7*b4*HIGH_W*HIGH_Z*LOW_V + a1*b5*MED_Q + a4*b5*HIGH_W*MED_Q +
     a5*b5*HIGH_Z*MED_Q + a7*b5*HIGH_W*HIGH_Z*MED_Q + a1*b7*LOW_V*MED_Q +
     a4*b7*HIGH_W*LOW_V*MED_Q + a5*b7*HIGH_Z*LOW_V*MED_Q +
     a7*b7*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*b4*MED_V + a4*b4*LOW_W*MED_V + a5*b4*LOW_Z*MED_V +
     a7*b4*LOW_W*LOW_Z*MED_V + a1*b5*MED_Q + a4*b5*LOW_W*MED_Q +
     a5*b5*LOW_Z*MED_Q + a7*b5*LOW_W*LOW_Z*MED_Q + a1*b7*MED_V*MED_Q +
     a4*b7*LOW_W*MED_V*MED_Q + a5*b7*LOW_Z*MED_V*MED_Q +
     a7*b7*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*b4*MED_V + a4*b4*MED_W*MED_V + a5*b4*LOW_Z*MED_V +
     a7*b4*MED_W*LOW_Z*MED_V + a1*b5*MED_Q + a4*b5*MED_W*MED_Q +
     a5*b5*LOW_Z*MED_Q + a7*b5*MED_W*LOW_Z*MED_Q + a1*b7*MED_V*MED_Q +
     a4*b7*MED_W*MED_V*MED_Q + a5*b7*LOW_Z*MED_V*MED_Q +
     a7*b7*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*b4*MED_V + a4*b4*HIGH_W*MED_V + a5*b4*LOW_Z*MED_V +
     a7*b4*HIGH_W*LOW_Z*MED_V + a1*b5*MED_Q + a4*b5*HIGH_W*MED_Q +
     a5*b5*LOW_Z*MED_Q + a7*b5*HIGH_W*LOW_Z*MED_Q + a1*b7*MED_V*MED_Q +
     a4*b7*HIGH_W*MED_V*MED_Q + a5*b7*LOW_Z*MED_V*MED_Q +
     a7*b7*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*b4*MED_V + a4*b4*LOW_W*MED_V + a5*b4*MED_Z*MED_V +
     a7*b4*LOW_W*MED_Z*MED_V + a1*b5*MED_Q + a4*b5*LOW_W*MED_Q +
     a5*b5*MED_Z*MED_Q + a7*b5*LOW_W*MED_Z*MED_Q + a1*b7*MED_V*MED_Q +
     a4*b7*LOW_W*MED_V*MED_Q + a5*b7*MED_Z*MED_V*MED_Q +
     a7*b7*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*b4*MED_V + a4*b4*MED_W*MED_V + a5*b4*MED_Z*MED_V +
     a7*b4*MED_W*MED_Z*MED_V + a1*b5*MED_Q + a4*b5*MED_W*MED_Q +
     a5*b5*MED_Z*MED_Q + a7*b5*MED_W*MED_Z*MED_Q + a1*b7*MED_V*MED_Q +
     a4*b7*MED_W*MED_V*MED_Q + a5*b7*MED_Z*MED_V*MED_Q +
     a7*b7*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*b4*MED_V + a4*b4*HIGH_W*MED_V + a5*b4*MED_Z*MED_V +
     a7*b4*HIGH_W*MED_Z*MED_V + a1*b5*MED_Q + a4*b5*HIGH_W*MED_Q +
     a5*b5*MED_Z*MED_Q + a7*b5*HIGH_W*MED_Z*MED_Q + a1*b7*MED_V*MED_Q +
     a4*b7*HIGH_W*MED_V*MED_Q + a5*b7*MED_Z*MED_V*MED_Q +
     a7*b7*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*b4*MED_V + a4*b4*LOW_W*MED_V + a5*b4*HIGH_Z*MED_V +
     a7*b4*LOW_W*HIGH_Z*MED_V + a1*b5*MED_Q + a4*b5*LOW_W*MED_Q +
     a5*b5*HIGH_Z*MED_Q + a7*b5*LOW_W*HIGH_Z*MED_Q + a1*b7*MED_V*MED_Q +
     a4*b7*LOW_W*MED_V*MED_Q + a5*b7*HIGH_Z*MED_V*MED_Q +
     a7*b7*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*b4*MED_V + a4*b4*MED_W*MED_V + a5*b4*HIGH_Z*MED_V +
     a7*b4*MED_W*HIGH_Z*MED_V + a1*b5*MED_Q + a4*b5*MED_W*MED_Q +
     a5*b5*HIGH_Z*MED_Q + a7*b5*MED_W*HIGH_Z*MED_Q + a1*b7*MED_V*MED_Q +
     a4*b7*MED_W*MED_V*MED_Q + a5*b7*HIGH_Z*MED_V*MED_Q +
     a7*b7*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*b4*MED_V + a4*b4*HIGH_W*MED_V + a5*b4*HIGH_Z*MED_V +
     a7*b4*HIGH_W*HIGH_Z*MED_V + a1*b5*MED_Q + a4*b5*HIGH_W*MED_Q +
     a5*b5*HIGH_Z*MED_Q + a7*b5*HIGH_W*HIGH_Z*MED_Q + a1*b7*MED_V*MED_Q +
     a4*b7*HIGH_W*MED_V*MED_Q + a5*b7*HIGH_Z*MED_V*MED_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*LOW_W*HIGH_V + a5*b4*LOW_Z*HIGH_V +
     a7*b4*LOW_W*LOW_Z*HIGH_V + a1*b5*MED_Q + a4*b5*LOW_W*MED_Q +
     a5*b5*LOW_Z*MED_Q + a7*b5*LOW_W*LOW_Z*MED_Q + a1*b7*HIGH_V*MED_Q +
     a4*b7*LOW_W*HIGH_V*MED_Q + a5*b7*LOW_Z*HIGH_V*MED_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*MED_W*HIGH_V + a5*b4*LOW_Z*HIGH_V +
     a7*b4*MED_W*LOW_Z*HIGH_V + a1*b5*MED_Q + a4*b5*MED_W*MED_Q +
     a5*b5*LOW_Z*MED_Q + a7*b5*MED_W*LOW_Z*MED_Q + a1*b7*HIGH_V*MED_Q +
     a4*b7*MED_W*HIGH_V*MED_Q + a5*b7*LOW_Z*HIGH_V*MED_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*HIGH_W*HIGH_V + a5*b4*LOW_Z*HIGH_V +
     a7*b4*HIGH_W*LOW_Z*HIGH_V + a1*b5*MED_Q + a4*b5*HIGH_W*MED_Q +
     a5*b5*LOW_Z*MED_Q + a7*b5*HIGH_W*LOW_Z*MED_Q + a1*b7*HIGH_V*MED_Q +
     a4*b7*HIGH_W*HIGH_V*MED_Q + a5*b7*LOW_Z*HIGH_V*MED_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*LOW_W*HIGH_V + a5*b4*MED_Z*HIGH_V +
     a7*b4*LOW_W*MED_Z*HIGH_V + a1*b5*MED_Q + a4*b5*LOW_W*MED_Q +
     a5*b5*MED_Z*MED_Q + a7*b5*LOW_W*MED_Z*MED_Q + a1*b7*HIGH_V*MED_Q +
     a4*b7*LOW_W*HIGH_V*MED_Q + a5*b7*MED_Z*HIGH_V*MED_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*MED_W*HIGH_V + a5*b4*MED_Z*HIGH_V +
     a7*b4*MED_W*MED_Z*HIGH_V + a1*b5*MED_Q + a4*b5*MED_W*MED_Q +
     a5*b5*MED_Z*MED_Q + a7*b5*MED_W*MED_Z*MED_Q + a1*b7*HIGH_V*MED_Q +
     a4*b7*MED_W*HIGH_V*MED_Q + a5*b7*MED_Z*HIGH_V*MED_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*HIGH_W*HIGH_V + a5*b4*MED_Z*HIGH_V +
     a7*b4*HIGH_W*MED_Z*HIGH_V + a1*b5*MED_Q + a4*b5*HIGH_W*MED_Q +
     a5*b5*MED_Z*MED_Q + a7*b5*HIGH_W*MED_Z*MED_Q + a1*b7*HIGH_V*MED_Q +
     a4*b7*HIGH_W*HIGH_V*MED_Q + a5*b7*MED_Z*HIGH_V*MED_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*LOW_W*HIGH_V + a5*b4*HIGH_Z*HIGH_V +
     a7*b4*LOW_W*HIGH_Z*HIGH_V + a1*b5*MED_Q + a4*b5*LOW_W*MED_Q +
     a5*b5*HIGH_Z*MED_Q + a7*b5*LOW_W*HIGH_Z*MED_Q + a1*b7*HIGH_V*MED_Q +
     a4*b7*LOW_W*HIGH_V*MED_Q + a5*b7*HIGH_Z*HIGH_V*MED_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*MED_W*HIGH_V + a5*b4*HIGH_Z*HIGH_V +
     a7*b4*MED_W*HIGH_Z*HIGH_V + a1*b5*MED_Q + a4*b5*MED_W*MED_Q +
     a5*b5*HIGH_Z*MED_Q + a7*b5*MED_W*HIGH_Z*MED_Q + a1*b7*HIGH_V*MED_Q +
     a4*b7*MED_W*HIGH_V*MED_Q + a5*b7*HIGH_Z*HIGH_V*MED_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*HIGH_W*HIGH_V + a5*b4*HIGH_Z*HIGH_V +
     a7*b4*HIGH_W*HIGH_Z*HIGH_V + a1*b5*MED_Q + a4*b5*HIGH_W*MED_Q +
     a5*b5*HIGH_Z*MED_Q + a7*b5*HIGH_W*HIGH_Z*MED_Q + a1*b7*HIGH_V*MED_Q +
     a4*b7*HIGH_W*HIGH_V*MED_Q + a5*b7*HIGH_Z*HIGH_V*MED_Q +
     a7*b7*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*b4*LOW_V + a4*b4*LOW_W*LOW_V + a5*b4*LOW_Z*LOW_V +
     a7*b4*LOW_W*LOW_Z*LOW_V + a1*b5*HIGH_Q + a4*b5*LOW_W*HIGH_Q +
     a5*b5*LOW_Z*HIGH_Q + a7*b5*LOW_W*LOW_Z*HIGH_Q + a1*b7*LOW_V*HIGH_Q +
     a4*b7*LOW_W*LOW_V*HIGH_Q + a5*b7*LOW_Z*LOW_V*HIGH_Q +
     a7*b7*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*b4*LOW_V + a4*b4*MED_W*LOW_V + a5*b4*LOW_Z*LOW_V +
     a7*b4*MED_W*LOW_Z*LOW_V + a1*b5*HIGH_Q + a4*b5*MED_W*HIGH_Q +
     a5*b5*LOW_Z*HIGH_Q + a7*b5*MED_W*LOW_Z*HIGH_Q + a1*b7*LOW_V*HIGH_Q +
     a4*b7*MED_W*LOW_V*HIGH_Q + a5*b7*LOW_Z*LOW_V*HIGH_Q +
     a7*b7*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*b4*LOW_V + a4*b4*HIGH_W*LOW_V + a5*b4*LOW_Z*LOW_V +
     a7*b4*HIGH_W*LOW_Z*LOW_V + a1*b5*HIGH_Q + a4*b5*HIGH_W*HIGH_Q +
     a5*b5*LOW_Z*HIGH_Q + a7*b5*HIGH_W*LOW_Z*HIGH_Q + a1*b7*LOW_V*HIGH_Q +
     a4*b7*HIGH_W*LOW_V*HIGH_Q + a5*b7*LOW_Z*LOW_V*HIGH_Q +
     a7*b7*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*b4*LOW_V + a4*b4*LOW_W*LOW_V + a5*b4*MED_Z*LOW_V +
     a7*b4*LOW_W*MED_Z*LOW_V + a1*b5*HIGH_Q + a4*b5*LOW_W*HIGH_Q +
     a5*b5*MED_Z*HIGH_Q + a7*b5*LOW_W*MED_Z*HIGH_Q + a1*b7*LOW_V*HIGH_Q +
     a4*b7*LOW_W*LOW_V*HIGH_Q + a5*b7*MED_Z*LOW_V*HIGH_Q +
     a7*b7*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*b4*LOW_V + a4*b4*MED_W*LOW_V + a5*b4*MED_Z*LOW_V +
     a7*b4*MED_W*MED_Z*LOW_V + a1*b5*HIGH_Q + a4*b5*MED_W*HIGH_Q +
     a5*b5*MED_Z*HIGH_Q + a7*b5*MED_W*MED_Z*HIGH_Q + a1*b7*LOW_V*HIGH_Q +
     a4*b7*MED_W*LOW_V*HIGH_Q + a5*b7*MED_Z*LOW_V*HIGH_Q +
     a7*b7*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*b4*LOW_V + a4*b4*HIGH_W*LOW_V + a5*b4*MED_Z*LOW_V +
     a7*b4*HIGH_W*MED_Z*LOW_V + a1*b5*HIGH_Q + a4*b5*HIGH_W*HIGH_Q +
     a5*b5*MED_Z*HIGH_Q + a7*b5*HIGH_W*MED_Z*HIGH_Q + a1*b7*LOW_V*HIGH_Q +
     a4*b7*HIGH_W*LOW_V*HIGH_Q + a5*b7*MED_Z*LOW_V*HIGH_Q +
     a7*b7*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*b4*LOW_V + a4*b4*LOW_W*LOW_V + a5*b4*HIGH_Z*LOW_V +
     a7*b4*LOW_W*HIGH_Z*LOW_V + a1*b5*HIGH_Q + a4*b5*LOW_W*HIGH_Q +
     a5*b5*HIGH_Z*HIGH_Q + a7*b5*LOW_W*HIGH_Z*HIGH_Q + a1*b7*LOW_V*HIGH_Q +
     a4*b7*LOW_W*LOW_V*HIGH_Q + a5*b7*HIGH_Z*LOW_V*HIGH_Q +
     a7*b7*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*b4*LOW_V + a4*b4*MED_W*LOW_V + a5*b4*HIGH_Z*LOW_V +
     a7*b4*MED_W*HIGH_Z*LOW_V + a1*b5*HIGH_Q + a4*b5*MED_W*HIGH_Q +
     a5*b5*HIGH_Z*HIGH_Q + a7*b5*MED_W*HIGH_Z*HIGH_Q + a1*b7*LOW_V*HIGH_Q +
     a4*b7*MED_W*LOW_V*HIGH_Q + a5*b7*HIGH_Z*LOW_V*HIGH_Q +
     a7*b7*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*b4*LOW_V + a4*b4*HIGH_W*LOW_V + a5*b4*HIGH_Z*LOW_V +
     a7*b4*HIGH_W*HIGH_Z*LOW_V + a1*b5*HIGH_Q + a4*b5*HIGH_W*HIGH_Q +
     a5*b5*HIGH_Z*HIGH_Q + a7*b5*HIGH_W*HIGH_Z*HIGH_Q + a1*b7*LOW_V*HIGH_Q +
     a4*b7*HIGH_W*LOW_V*HIGH_Q + a5*b7*HIGH_Z*LOW_V*HIGH_Q +
     a7*b7*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*b4*MED_V + a4*b4*LOW_W*MED_V + a5*b4*LOW_Z*MED_V +
     a7*b4*LOW_W*LOW_Z*MED_V + a1*b5*HIGH_Q + a4*b5*LOW_W*HIGH_Q +
     a5*b5*LOW_Z*HIGH_Q + a7*b5*LOW_W*LOW_Z*HIGH_Q + a1*b7*MED_V*HIGH_Q +
     a4*b7*LOW_W*MED_V*HIGH_Q + a5*b7*LOW_Z*MED_V*HIGH_Q +
     a7*b7*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*b4*MED_V + a4*b4*MED_W*MED_V + a5*b4*LOW_Z*MED_V +
     a7*b4*MED_W*LOW_Z*MED_V + a1*b5*HIGH_Q + a4*b5*MED_W*HIGH_Q +
     a5*b5*LOW_Z*HIGH_Q + a7*b5*MED_W*LOW_Z*HIGH_Q + a1*b7*MED_V*HIGH_Q +
     a4*b7*MED_W*MED_V*HIGH_Q + a5*b7*LOW_Z*MED_V*HIGH_Q +
     a7*b7*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*b4*MED_V + a4*b4*HIGH_W*MED_V + a5*b4*LOW_Z*MED_V +
     a7*b4*HIGH_W*LOW_Z*MED_V + a1*b5*HIGH_Q + a4*b5*HIGH_W*HIGH_Q +
     a5*b5*LOW_Z*HIGH_Q + a7*b5*HIGH_W*LOW_Z*HIGH_Q + a1*b7*MED_V*HIGH_Q +
     a4*b7*HIGH_W*MED_V*HIGH_Q + a5*b7*LOW_Z*MED_V*HIGH_Q +
     a7*b7*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*b4*MED_V + a4*b4*LOW_W*MED_V + a5*b4*MED_Z*MED_V +
     a7*b4*LOW_W*MED_Z*MED_V + a1*b5*HIGH_Q + a4*b5*LOW_W*HIGH_Q +
     a5*b5*MED_Z*HIGH_Q + a7*b5*LOW_W*MED_Z*HIGH_Q + a1*b7*MED_V*HIGH_Q +
     a4*b7*LOW_W*MED_V*HIGH_Q + a5*b7*MED_Z*MED_V*HIGH_Q +
     a7*b7*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*b4*MED_V + a4*b4*MED_W*MED_V + a5*b4*MED_Z*MED_V +
     a7*b4*MED_W*MED_Z*MED_V + a1*b5*HIGH_Q + a4*b5*MED_W*HIGH_Q +
     a5*b5*MED_Z*HIGH_Q + a7*b5*MED_W*MED_Z*HIGH_Q + a1*b7*MED_V*HIGH_Q +
     a4*b7*MED_W*MED_V*HIGH_Q + a5*b7*MED_Z*MED_V*HIGH_Q +
     a7*b7*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*b4*MED_V + a4*b4*HIGH_W*MED_V + a5*b4*MED_Z*MED_V +
     a7*b4*HIGH_W*MED_Z*MED_V + a1*b5*HIGH_Q + a4*b5*HIGH_W*HIGH_Q +
     a5*b5*MED_Z*HIGH_Q + a7*b5*HIGH_W*MED_Z*HIGH_Q + a1*b7*MED_V*HIGH_Q +
     a4*b7*HIGH_W*MED_V*HIGH_Q + a5*b7*MED_Z*MED_V*HIGH_Q +
     a7*b7*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*b4*MED_V + a4*b4*LOW_W*MED_V + a5*b4*HIGH_Z*MED_V +
     a7*b4*LOW_W*HIGH_Z*MED_V + a1*b5*HIGH_Q + a4*b5*LOW_W*HIGH_Q +
     a5*b5*HIGH_Z*HIGH_Q + a7*b5*LOW_W*HIGH_Z*HIGH_Q + a1*b7*MED_V*HIGH_Q +
     a4*b7*LOW_W*MED_V*HIGH_Q + a5*b7*HIGH_Z*MED_V*HIGH_Q +
     a7*b7*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*b4*MED_V + a4*b4*MED_W*MED_V + a5*b4*HIGH_Z*MED_V +
     a7*b4*MED_W*HIGH_Z*MED_V + a1*b5*HIGH_Q + a4*b5*MED_W*HIGH_Q +
     a5*b5*HIGH_Z*HIGH_Q + a7*b5*MED_W*HIGH_Z*HIGH_Q + a1*b7*MED_V*HIGH_Q +
     a4*b7*MED_W*MED_V*HIGH_Q + a5*b7*HIGH_Z*MED_V*HIGH_Q +
     a7*b7*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*b4*MED_V + a4*b4*HIGH_W*MED_V + a5*b4*HIGH_Z*MED_V +
     a7*b4*HIGH_W*HIGH_Z*MED_V + a1*b5*HIGH_Q + a4*b5*HIGH_W*HIGH_Q +
     a5*b5*HIGH_Z*HIGH_Q + a7*b5*HIGH_W*HIGH_Z*HIGH_Q + a1*b7*MED_V*HIGH_Q +
     a4*b7*HIGH_W*MED_V*HIGH_Q + a5*b7*HIGH_Z*MED_V*HIGH_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*LOW_W*HIGH_V + a5*b4*LOW_Z*HIGH_V +
     a7*b4*LOW_W*LOW_Z*HIGH_V + a1*b5*HIGH_Q + a4*b5*LOW_W*HIGH_Q +
     a5*b5*LOW_Z*HIGH_Q + a7*b5*LOW_W*LOW_Z*HIGH_Q + a1*b7*HIGH_V*HIGH_Q +
     a4*b7*LOW_W*HIGH_V*HIGH_Q + a5*b7*LOW_Z*HIGH_V*HIGH_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*MED_W*HIGH_V + a5*b4*LOW_Z*HIGH_V +
     a7*b4*MED_W*LOW_Z*HIGH_V + a1*b5*HIGH_Q + a4*b5*MED_W*HIGH_Q +
     a5*b5*LOW_Z*HIGH_Q + a7*b5*MED_W*LOW_Z*HIGH_Q + a1*b7*HIGH_V*HIGH_Q +
     a4*b7*MED_W*HIGH_V*HIGH_Q + a5*b7*LOW_Z*HIGH_V*HIGH_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*HIGH_W*HIGH_V + a5*b4*LOW_Z*HIGH_V +
     a7*b4*HIGH_W*LOW_Z*HIGH_V + a1*b5*HIGH_Q + a4*b5*HIGH_W*HIGH_Q +
     a5*b5*LOW_Z*HIGH_Q + a7*b5*HIGH_W*LOW_Z*HIGH_Q + a1*b7*HIGH_V*HIGH_Q +
     a4*b7*HIGH_W*HIGH_V*HIGH_Q + a5*b7*LOW_Z*HIGH_V*HIGH_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*LOW_W*HIGH_V + a5*b4*MED_Z*HIGH_V +
     a7*b4*LOW_W*MED_Z*HIGH_V + a1*b5*HIGH_Q + a4*b5*LOW_W*HIGH_Q +
     a5*b5*MED_Z*HIGH_Q + a7*b5*LOW_W*MED_Z*HIGH_Q + a1*b7*HIGH_V*HIGH_Q +
     a4*b7*LOW_W*HIGH_V*HIGH_Q + a5*b7*MED_Z*HIGH_V*HIGH_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*MED_W*HIGH_V + a5*b4*MED_Z*HIGH_V +
     a7*b4*MED_W*MED_Z*HIGH_V + a1*b5*HIGH_Q + a4*b5*MED_W*HIGH_Q +
     a5*b5*MED_Z*HIGH_Q + a7*b5*MED_W*MED_Z*HIGH_Q + a1*b7*HIGH_V*HIGH_Q +
     a4*b7*MED_W*HIGH_V*HIGH_Q + a5*b7*MED_Z*HIGH_V*HIGH_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*HIGH_W*HIGH_V + a5*b4*MED_Z*HIGH_V +
     a7*b4*HIGH_W*MED_Z*HIGH_V + a1*b5*HIGH_Q + a4*b5*HIGH_W*HIGH_Q +
     a5*b5*MED_Z*HIGH_Q + a7*b5*HIGH_W*MED_Z*HIGH_Q + a1*b7*HIGH_V*HIGH_Q +
     a4*b7*HIGH_W*HIGH_V*HIGH_Q + a5*b7*MED_Z*HIGH_V*HIGH_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*LOW_W*HIGH_V + a5*b4*HIGH_Z*HIGH_V +
     a7*b4*LOW_W*HIGH_Z*HIGH_V + a1*b5*HIGH_Q + a4*b5*LOW_W*HIGH_Q +
     a5*b5*HIGH_Z*HIGH_Q + a7*b5*LOW_W*HIGH_Z*HIGH_Q + a1*b7*HIGH_V*HIGH_Q +
     a4*b7*LOW_W*HIGH_V*HIGH_Q + a5*b7*HIGH_Z*HIGH_V*HIGH_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*MED_W*HIGH_V + a5*b4*HIGH_Z*HIGH_V +
     a7*b4*MED_W*HIGH_Z*HIGH_V + a1*b5*HIGH_Q + a4*b5*MED_W*HIGH_Q +
     a5*b5*HIGH_Z*HIGH_Q + a7*b5*MED_W*HIGH_Z*HIGH_Q + a1*b7*HIGH_V*HIGH_Q +
     a4*b7*MED_W*HIGH_V*HIGH_Q + a5*b7*HIGH_Z*HIGH_V*HIGH_Q +
     a7*b7*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*b4*HIGH_V + a4*b4*HIGH_W*HIGH_V + a5*b4*HIGH_Z*HIGH_V +
     a7*b4*HIGH_W*HIGH_Z*HIGH_V + a1*b5*HIGH_Q + a4*b5*HIGH_W*HIGH_Q +
     a5*b5*HIGH_Z*HIGH_Q + a7*b5*HIGH_W*HIGH_Z*HIGH_Q + a1*b7*HIGH_V*HIGH_Q +
     a4*b7*HIGH_W*HIGH_V*HIGH_Q + a5*b7*HIGH_Z*HIGH_V*HIGH_Q +
     a7*b7*HIGH_W*HIGH_Z*HIGH_V*HIGH_Q;
! Calc conditional direct effects for each combination of moderator values
    DLOW_LOZ = cdash1 + cdash4*LOW_W + cdash5*LOW_Z + cdash7*LOW_W*LOW_Z;
    DMEW_LOZ = cdash1 + cdash4*MED_W + cdash5*LOW_Z + cdash7*MED_W*LOW_Z;
    DHIW_LOZ = cdash1 + cdash4*HIGH_W + cdash5*LOW_Z + cdash7*HIGH_W*LOW_Z;
    DLOW_MEZ = cdash1 + cdash4*LOW_W + cdash5*MED_Z + cdash7*LOW_W*MED_Z;
    DMEW_MEZ = cdash1 + cdash4*MED_W + cdash5*MED_Z + cdash7*MED_W*MED_Z;
    DHIW_MEZ = cdash1 + cdash4*HIGH_W + cdash5*MED_Z + cdash7*HIGH_W*MED_Z;
    DLOW_HIZ = cdash1 + cdash4*LOW_W + cdash5*HIGH_Z + cdash7*LOW_W*HIGH_Z;
    DMEW_HIZ = cdash1 + cdash4*MED_W + cdash5*HIGH_Z + cdash7*MED_W*HIGH_Z;
    DHIW_HIZ = cdash1 + cdash4*HIGH_W + cdash5*HIGH_Z + cdash7*HIGH_W*HIGH_Z;
! Calc conditional total effects for each combination of moderator values
    TLLLL = ILLLL + DLOW_LOZ;
    TMLLL = IMLLL + DMEW_LOZ;
    THLLL = IHLLL + DHIW_LOZ;
    TLMLL = ILMLL + DLOW_MEZ;
    TMMLL = IMMLL + DMEW_MEZ;
    THMLL = IHMLL + DHIW_MEZ;
    TLHLL = ILHLL + DLOW_HIZ;
    TMHLL = IMHLL + DMEW_HIZ;
    THHLL = IHHLL + DHIW_HIZ;
    TLLML = ILLML + DLOW_LOZ;
    TMLML = IMLML + DMEW_LOZ;
    THLML = IHLML + DHIW_LOZ;
    TLMML = ILMML + DLOW_MEZ;
    TMMML = IMMML + DMEW_MEZ;
    THMML = IHMML + DHIW_MEZ;
    TLHML = ILHML + DLOW_HIZ;
    TMHML = IMHML + DMEW_HIZ;
    THHML = IHHML + DHIW_HIZ;
    TLLHL = ILLHL + DLOW_LOZ;
    TMLHL = IMLHL + DMEW_LOZ;
    THLHL = IHLHL + DHIW_LOZ;
    TLMHL = ILMHL + DLOW_MEZ;
    TMMHL = IMMHL + DMEW_MEZ;
    THMHL = IHMHL + DHIW_MEZ;
    TLHHL = ILHHL + DLOW_HIZ;
    TMHHL = IMHHL + DMEW_HIZ;
    THHHL = IHHHL + DHIW_HIZ;
    TLLLM = ILLLM + DLOW_LOZ;
    TMLLM = IMLLM + DMEW_LOZ;
    THLLM = IHLLM + DHIW_LOZ;
    TLMLM = ILMLM + DLOW_MEZ;
    TMMLM = IMMLM + DMEW_MEZ;
    THMLM = IHMLM + DHIW_MEZ;
    TLHLM = ILHLM + DLOW_HIZ;
    TMHLM = IMHLM + DMEW_HIZ;
    THHLM = IHHLM + DHIW_HIZ;
    TLLMM = ILLMM + DLOW_LOZ;
    TMLMM = IMLMM + DMEW_LOZ;
    THLMM = IHLMM + DHIW_LOZ;
    TLMMM = ILMMM + DLOW_MEZ;
    TMMMM = IMMMM + DMEW_MEZ;
    THMMM = IHMMM + DHIW_MEZ;
    TLHMM = ILHMM + DLOW_HIZ;
    TMHMM = IMHMM + DMEW_HIZ;
    THHMM = IHHMM + DHIW_HIZ;
    TLLHM = ILLHM + DLOW_LOZ;
    TMLHM = IMLHM + DMEW_LOZ;
    THLHM = IHLHM + DHIW_LOZ;
    TLMHM = ILMHM + DLOW_MEZ;
    TMMHM = IMMHM + DMEW_MEZ;
    THMHM = IHMHM + DHIW_MEZ;
    TLHHM = ILHHM + DLOW_HIZ;
    TMHHM = IMHHM + DMEW_HIZ;
    THHHM = IHHHM + DHIW_HIZ;
    TLLLH = ILLLH + DLOW_LOZ;
    TMLLH = IMLLH + DMEW_LOZ;
    THLLH = IHLLH + DHIW_LOZ;
    TLMLH = ILMLH + DLOW_MEZ;
    TMMLH = IMMLH + DMEW_MEZ;
    THMLH = IHMLH + DHIW_MEZ;
    TLHLH = ILHLH + DLOW_HIZ;
    TMHLH = IMHLH + DMEW_HIZ;
    THHLH = IHHLH + DHIW_HIZ;
    TLLMH = ILLMH + DLOW_LOZ;
    TMLMH = IMLMH + DMEW_LOZ;
    THLMH = IHLMH + DHIW_LOZ;
    TLMMH = ILMMH + DLOW_MEZ;
    TMMMH = IMMMH + DMEW_MEZ;
    THMMH = IHMMH + DHIW_MEZ;
    TLHMH = ILHMH + DLOW_HIZ;
    TMHMH = IMHMH + DMEW_HIZ;
    THHMH = IHHMH + DHIW_HIZ;
    TLLHH = ILLHH + DLOW_LOZ;
    TMLHH = IMLHH + DMEW_LOZ;
    THLHH = IHLHH + DHIW_LOZ;
    TLMHH = ILMHH + DLOW_MEZ;
    TMMHH = IMMHH + DMEW_MEZ;
    THMHH = IHMHH + DHIW_MEZ;
    TLHHH = ILHHH + DLOW_HIZ;
    TMHHH = IMHHH + DMEW_HIZ;
    THHHH = IHHHH + DHIW_HIZ;
! 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);