! Latent predictor variable X measured by X1-X4
! Latent mediator M measured by 4 observed variables M1-M4
! Latent moderators W, Z, V, and Q, each measured by sets of 4 observed variables W1-W4, Z1-Z4, V1-V4, and Q1-Q4 respectively
! Latent outcome variable Y measured by Y1-Y4
USEVARIABLES = X1 X2 X3 X4 M1 M2 M3 M4
W1 W2 W3 W4 Z1 Z2 Z3 Z4 V1 V2 V3 V4 Q1 Q2 Q3 Q4
Y1 Y2 Y3 Y4;
ANALYSIS:
   TYPE = GENERAL RANDOM;
   ESTIMATOR = ML;
   ALGORITHM = INTEGRATION;
! In model statement first state measurement model
! Then create any latent interactions required
! Then state structural model naming each path and intercept using parentheses
MODEL:
! Measurement model
! Identify moderator factors by fixing variance = 1 (instead of first loading)
! This makes these factors standardised
   X BY X1 X2 X3 X4;
   M BY M1 M2 M3 M4;
   W BY W1* W2 W3 W4;
   Z BY Z1* Z2 Z3 Z4;
   V BY V1* V2 V3 V4;
   Q BY Q1* Q2 Q3 Q4;
   Y BY Y1 Y2 Y3 Y4;
 
  W@1;
  Z@1;
  V@1;
  Q@1;
! Create latent interactions
   MV | M XWITH V;
   MQ | M XWITH Q;
   XW | X XWITH W;
   XZ | X XWITH Z;
   XV | X XWITH V;
   XQ | X XWITH Q;
   WZ | W XWITH Z;
   VQ | V XWITH Q;
   MVQ | M XWITH VQ;
   XWZ | X XWITH WZ;
   XVQ | X XWITH VQ;
! Fit structural model and name parameters
! Note that intercepts of M, Y are fixed = 0 since they are latent vars
! so no code to state and name them as parameters
   Y ON M (b1);
   Y ON MV (b2);
   Y ON MQ (b3);
   Y ON MVQ (b4);
   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);
   Y ON V (cdash8);
   Y ON Q (cdash9);
   Y ON XV (cdash10);
   Y ON XQ (cdash11);
   Y ON VQ (cdash12);
   Y ON XVQ (cdash13);
   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
    DLLLL DMLLL DHLLL DLMLL DMMLL DHMLL DLHLL DMHLL DHHLL
    DLLML DMLML DHLML DLMML DMMML DHMML DLHML DMHML DHHML
    DLLHL DMLHL DHLHL DLMHL DMMHL DHMHL DLHHL DMHHL DHHHL
    DLLLM DMLLM DHLLM DLMLM DMMLM DHMLM DLHLM DMHLM DHHLM
    DLLMM DMLMM DHLMM DLMMM DMMMM DHMMM DLHMM DMHMM DHHMM
    DLLHM DMLHM DHLHM DLMHM DMMHM DHMHM DLHHM DMHHM DHHHM
    DLLLH DMLLH DHLLH DLMLH DMMLH DHMLH DLHLH DMHLH DHHLH
    DLLMH DMLMH DHLMH DLMMH DMMMH DHMMH DLHMH DMHMH DHHMH
    DLLHH DMLHH DHLHH DLMHH DMMHH DHMHH DLHHH DMHHH DHHHH
    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 = -1;   ! -1 SD below mean value of W
    MED_W = 0;   ! mean value of W
    HIGH_W = 1;   ! +1 SD above mean value of W
    LOW_Z = -1;   ! -1 SD below mean value of Z
    MED_Z = 0;   ! mean value of Z
    HIGH_Z = 1;   ! +1 SD above mean value of Z
    LOW_V = -1;   ! -1 SD below mean value of V
    MED_V = 0;   ! mean value of V
    HIGH_V = 1;   ! +1 SD above mean value of V
    LOW_Q = -1;   ! -1 SD below mean value of Q
    MED_Q = 0;   ! mean value of Q
    HIGH_Q = 1;   ! +1 SD above mean 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
    DLLLL = cdash1 + cdash4*LOW_W + cdash5*LOW_Z + cdash7*LOW_W*LOW_Z +
     cdash10*LOW_V + cdash11*LOW_Q + cdash13*LOW_V*LOW_Q;
    DMLLL = cdash1 + cdash4*MED_W + cdash5*LOW_Z + cdash7*MED_W*LOW_Z +
     cdash10*LOW_V + cdash11*LOW_Q + cdash13*LOW_V*LOW_Q;
    DHLLL = cdash1 + cdash4*HIGH_W + cdash5*LOW_Z + cdash7*HIGH_W*LOW_Z +
     cdash10*LOW_V + cdash11*LOW_Q + cdash13*LOW_V*LOW_Q;
    DLMLL = cdash1 + cdash4*LOW_W + cdash5*MED_Z + cdash7*LOW_W*MED_Z +
     cdash10*LOW_V + cdash11*LOW_Q + cdash13*LOW_V*LOW_Q;
    DMMLL = cdash1 + cdash4*MED_W + cdash5*MED_Z + cdash7*MED_W*MED_Z +
     cdash10*LOW_V + cdash11*LOW_Q + cdash13*LOW_V*LOW_Q;
    DHMLL = cdash1 + cdash4*HIGH_W + cdash5*MED_Z + cdash7*HIGH_W*MED_Z +
     cdash10*LOW_V + cdash11*LOW_Q + cdash13*LOW_V*LOW_Q;
    DLHLL = cdash1 + cdash4*LOW_W + cdash5*HIGH_Z + cdash7*LOW_W*HIGH_Z +
     cdash10*LOW_V + cdash11*LOW_Q + cdash13*LOW_V*LOW_Q;
    DMHLL = cdash1 + cdash4*MED_W + cdash5*HIGH_Z + cdash7*MED_W*HIGH_Z +
     cdash10*LOW_V + cdash11*LOW_Q + cdash13*LOW_V*LOW_Q;
    DHHLL = cdash1 + cdash4*HIGH_W + cdash5*HIGH_Z + cdash7*HIGH_W*HIGH_Z +
     cdash10*LOW_V + cdash11*LOW_Q + cdash13*LOW_V*LOW_Q;
    DLLML = cdash1 + cdash4*LOW_W + cdash5*LOW_Z + cdash7*LOW_W*LOW_Z +
     cdash10*MED_V + cdash11*LOW_Q + cdash13*MED_V*LOW_Q;
    DMLML = cdash1 + cdash4*MED_W + cdash5*LOW_Z + cdash7*MED_W*LOW_Z +
     cdash10*MED_V + cdash11*LOW_Q + cdash13*MED_V*LOW_Q;
    DHLML = cdash1 + cdash4*HIGH_W + cdash5*LOW_Z + cdash7*HIGH_W*LOW_Z +
     cdash10*MED_V + cdash11*LOW_Q + cdash13*MED_V*LOW_Q;
    DLMML = cdash1 + cdash4*LOW_W + cdash5*MED_Z + cdash7*LOW_W*MED_Z +
     cdash10*MED_V + cdash11*LOW_Q + cdash13*MED_V*LOW_Q;
    DMMML = cdash1 + cdash4*MED_W + cdash5*MED_Z + cdash7*MED_W*MED_Z +
     cdash10*MED_V + cdash11*LOW_Q + cdash13*MED_V*LOW_Q;
    DHMML = cdash1 + cdash4*HIGH_W + cdash5*MED_Z + cdash7*HIGH_W*MED_Z +
     cdash10*MED_V + cdash11*LOW_Q + cdash13*MED_V*LOW_Q;
    DLHML = cdash1 + cdash4*LOW_W + cdash5*HIGH_Z + cdash7*LOW_W*HIGH_Z +
     cdash10*MED_V + cdash11*LOW_Q + cdash13*MED_V*LOW_Q;
    DMHML = cdash1 + cdash4*MED_W + cdash5*HIGH_Z + cdash7*MED_W*HIGH_Z +
     cdash10*MED_V + cdash11*LOW_Q + cdash13*MED_V*LOW_Q;
    DHHML = cdash1 + cdash4*HIGH_W + cdash5*HIGH_Z + cdash7*HIGH_W*HIGH_Z +
     cdash10*MED_V + cdash11*LOW_Q + cdash13*MED_V*LOW_Q;
    DLLHL = cdash1 + cdash4*LOW_W + cdash5*LOW_Z + cdash7*LOW_W*LOW_Z +
     cdash10*HIGH_V + cdash11*LOW_Q + cdash13*HIGH_V*LOW_Q;
    DMLHL = cdash1 + cdash4*MED_W + cdash5*LOW_Z + cdash7*MED_W*LOW_Z +
     cdash10*HIGH_V + cdash11*LOW_Q + cdash13*HIGH_V*LOW_Q;
    DHLHL = cdash1 + cdash4*HIGH_W + cdash5*LOW_Z + cdash7*HIGH_W*LOW_Z +
     cdash10*HIGH_V + cdash11*LOW_Q + cdash13*HIGH_V*LOW_Q;
    DLMHL = cdash1 + cdash4*LOW_W + cdash5*MED_Z + cdash7*LOW_W*MED_Z +
     cdash10*HIGH_V + cdash11*LOW_Q + cdash13*HIGH_V*LOW_Q;
    DMMHL = cdash1 + cdash4*MED_W + cdash5*MED_Z + cdash7*MED_W*MED_Z +
     cdash10*HIGH_V + cdash11*LOW_Q + cdash13*HIGH_V*LOW_Q;
    DHMHL = cdash1 + cdash4*HIGH_W + cdash5*MED_Z + cdash7*HIGH_W*MED_Z +
     cdash10*HIGH_V + cdash11*LOW_Q + cdash13*HIGH_V*LOW_Q;
    DLHHL = cdash1 + cdash4*LOW_W + cdash5*HIGH_Z + cdash7*LOW_W*HIGH_Z +
     cdash10*HIGH_V + cdash11*LOW_Q + cdash13*HIGH_V*LOW_Q;
    DMHHL = cdash1 + cdash4*MED_W + cdash5*HIGH_Z + cdash7*MED_W*HIGH_Z +
     cdash10*HIGH_V + cdash11*LOW_Q + cdash13*HIGH_V*LOW_Q;
    DHHHL = cdash1 + cdash4*HIGH_W + cdash5*HIGH_Z + cdash7*HIGH_W*HIGH_Z +
     cdash10*HIGH_V + cdash11*LOW_Q + cdash13*HIGH_V*LOW_Q;
    DLLLM = cdash1 + cdash4*LOW_W + cdash5*LOW_Z + cdash7*LOW_W*LOW_Z +
     cdash10*LOW_V + cdash11*MED_Q + cdash13*LOW_V*MED_Q;
    DMLLM = cdash1 + cdash4*MED_W + cdash5*LOW_Z + cdash7*MED_W*LOW_Z +
     cdash10*LOW_V + cdash11*MED_Q + cdash13*LOW_V*MED_Q;
    DHLLM = cdash1 + cdash4*HIGH_W + cdash5*LOW_Z + cdash7*HIGH_W*LOW_Z +
     cdash10*LOW_V + cdash11*MED_Q + cdash13*LOW_V*MED_Q;
    DLMLM = cdash1 + cdash4*LOW_W + cdash5*MED_Z + cdash7*LOW_W*MED_Z +
     cdash10*LOW_V + cdash11*MED_Q + cdash13*LOW_V*MED_Q;
    DMMLM = cdash1 + cdash4*MED_W + cdash5*MED_Z + cdash7*MED_W*MED_Z +
     cdash10*LOW_V + cdash11*MED_Q + cdash13*LOW_V*MED_Q;
    DHMLM = cdash1 + cdash4*HIGH_W + cdash5*MED_Z + cdash7*HIGH_W*MED_Z +
     cdash10*LOW_V + cdash11*MED_Q + cdash13*LOW_V*MED_Q;
    DLHLM = cdash1 + cdash4*LOW_W + cdash5*HIGH_Z + cdash7*LOW_W*HIGH_Z +
     cdash10*LOW_V + cdash11*MED_Q + cdash13*LOW_V*MED_Q;
    DMHLM = cdash1 + cdash4*MED_W + cdash5*HIGH_Z + cdash7*MED_W*HIGH_Z +
     cdash10*LOW_V + cdash11*MED_Q + cdash13*LOW_V*MED_Q;
    DHHLM = cdash1 + cdash4*HIGH_W + cdash5*HIGH_Z + cdash7*HIGH_W*HIGH_Z +
     cdash10*LOW_V + cdash11*MED_Q + cdash13*LOW_V*MED_Q;
    DLLMM = cdash1 + cdash4*LOW_W + cdash5*LOW_Z + cdash7*LOW_W*LOW_Z +
     cdash10*MED_V + cdash11*MED_Q + cdash13*MED_V*MED_Q;
    DMLMM = cdash1 + cdash4*MED_W + cdash5*LOW_Z + cdash7*MED_W*LOW_Z +
     cdash10*MED_V + cdash11*MED_Q + cdash13*MED_V*MED_Q;
    DHLMM = cdash1 + cdash4*HIGH_W + cdash5*LOW_Z + cdash7*HIGH_W*LOW_Z +
     cdash10*MED_V + cdash11*MED_Q + cdash13*MED_V*MED_Q;
    DLMMM = cdash1 + cdash4*LOW_W + cdash5*MED_Z + cdash7*LOW_W*MED_Z +
     cdash10*MED_V + cdash11*MED_Q + cdash13*MED_V*MED_Q;
    DMMMM = cdash1 + cdash4*MED_W + cdash5*MED_Z + cdash7*MED_W*MED_Z +
     cdash10*MED_V + cdash11*MED_Q + cdash13*MED_V*MED_Q;
    DHMMM = cdash1 + cdash4*HIGH_W + cdash5*MED_Z + cdash7*HIGH_W*MED_Z +
     cdash10*MED_V + cdash11*MED_Q + cdash13*MED_V*MED_Q;
    DLHMM = cdash1 + cdash4*LOW_W + cdash5*HIGH_Z + cdash7*LOW_W*HIGH_Z +
     cdash10*MED_V + cdash11*MED_Q + cdash13*MED_V*MED_Q;
    DMHMM = cdash1 + cdash4*MED_W + cdash5*HIGH_Z + cdash7*MED_W*HIGH_Z +
     cdash10*MED_V + cdash11*MED_Q + cdash13*MED_V*MED_Q;
    DHHMM = cdash1 + cdash4*HIGH_W + cdash5*HIGH_Z + cdash7*HIGH_W*HIGH_Z +
     cdash10*MED_V + cdash11*MED_Q + cdash13*MED_V*MED_Q;
    DLLHM = cdash1 + cdash4*LOW_W + cdash5*LOW_Z + cdash7*LOW_W*LOW_Z +
     cdash10*HIGH_V + cdash11*MED_Q + cdash13*HIGH_V*MED_Q;
    DMLHM = cdash1 + cdash4*MED_W + cdash5*LOW_Z + cdash7*MED_W*LOW_Z +
     cdash10*HIGH_V + cdash11*MED_Q + cdash13*HIGH_V*MED_Q;
    DHLHM = cdash1 + cdash4*HIGH_W + cdash5*LOW_Z + cdash7*HIGH_W*LOW_Z +
     cdash10*HIGH_V + cdash11*MED_Q + cdash13*HIGH_V*MED_Q;
    DLMHM = cdash1 + cdash4*LOW_W + cdash5*MED_Z + cdash7*LOW_W*MED_Z +
     cdash10*HIGH_V + cdash11*MED_Q + cdash13*HIGH_V*MED_Q;
    DMMHM = cdash1 + cdash4*MED_W + cdash5*MED_Z + cdash7*MED_W*MED_Z +
     cdash10*HIGH_V + cdash11*MED_Q + cdash13*HIGH_V*MED_Q;
    DHMHM = cdash1 + cdash4*HIGH_W + cdash5*MED_Z + cdash7*HIGH_W*MED_Z +
     cdash10*HIGH_V + cdash11*MED_Q + cdash13*HIGH_V*MED_Q;
    DLHHM = cdash1 + cdash4*LOW_W + cdash5*HIGH_Z + cdash7*LOW_W*HIGH_Z +
     cdash10*HIGH_V + cdash11*MED_Q + cdash13*HIGH_V*MED_Q;
    DMHHM = cdash1 + cdash4*MED_W + cdash5*HIGH_Z + cdash7*MED_W*HIGH_Z +
     cdash10*HIGH_V + cdash11*MED_Q + cdash13*HIGH_V*MED_Q;
    DHHHM = cdash1 + cdash4*HIGH_W + cdash5*HIGH_Z + cdash7*HIGH_W*HIGH_Z +
     cdash10*HIGH_V + cdash11*MED_Q + cdash13*HIGH_V*MED_Q;
    DLLLH = cdash1 + cdash4*LOW_W + cdash5*LOW_Z + cdash7*LOW_W*LOW_Z +
     cdash10*LOW_V + cdash11*HIGH_Q + cdash13*LOW_V*HIGH_Q;
    DMLLH = cdash1 + cdash4*MED_W + cdash5*LOW_Z + cdash7*MED_W*LOW_Z +
     cdash10*LOW_V + cdash11*HIGH_Q + cdash13*LOW_V*HIGH_Q;
    DHLLH = cdash1 + cdash4*HIGH_W + cdash5*LOW_Z + cdash7*HIGH_W*LOW_Z +
     cdash10*LOW_V + cdash11*HIGH_Q + cdash13*LOW_V*HIGH_Q;
    DLMLH = cdash1 + cdash4*LOW_W + cdash5*MED_Z + cdash7*LOW_W*MED_Z +
     cdash10*LOW_V + cdash11*HIGH_Q + cdash13*LOW_V*HIGH_Q;
    DMMLH = cdash1 + cdash4*MED_W + cdash5*MED_Z + cdash7*MED_W*MED_Z +
     cdash10*LOW_V + cdash11*HIGH_Q + cdash13*LOW_V*HIGH_Q;
    DHMLH = cdash1 + cdash4*HIGH_W + cdash5*MED_Z + cdash7*HIGH_W*MED_Z +
     cdash10*LOW_V + cdash11*HIGH_Q + cdash13*LOW_V*HIGH_Q;
    DLHLH = cdash1 + cdash4*LOW_W + cdash5*HIGH_Z + cdash7*LOW_W*HIGH_Z +
     cdash10*LOW_V + cdash11*HIGH_Q + cdash13*LOW_V*HIGH_Q;
    DMHLH = cdash1 + cdash4*MED_W + cdash5*HIGH_Z + cdash7*MED_W*HIGH_Z +
     cdash10*LOW_V + cdash11*HIGH_Q + cdash13*LOW_V*HIGH_Q;
    DHHLH = cdash1 + cdash4*HIGH_W + cdash5*HIGH_Z + cdash7*HIGH_W*HIGH_Z +
     cdash10*LOW_V + cdash11*HIGH_Q + cdash13*LOW_V*HIGH_Q;
    DLLMH = cdash1 + cdash4*LOW_W + cdash5*LOW_Z + cdash7*LOW_W*LOW_Z +
     cdash10*MED_V + cdash11*HIGH_Q + cdash13*MED_V*HIGH_Q;
    DMLMH = cdash1 + cdash4*MED_W + cdash5*LOW_Z + cdash7*MED_W*LOW_Z +
     cdash10*MED_V + cdash11*HIGH_Q + cdash13*MED_V*HIGH_Q;
    DHLMH = cdash1 + cdash4*HIGH_W + cdash5*LOW_Z + cdash7*HIGH_W*LOW_Z +
     cdash10*MED_V + cdash11*HIGH_Q + cdash13*MED_V*HIGH_Q;
    DLMMH = cdash1 + cdash4*LOW_W + cdash5*MED_Z + cdash7*LOW_W*MED_Z +
     cdash10*MED_V + cdash11*HIGH_Q + cdash13*MED_V*HIGH_Q;
    DMMMH = cdash1 + cdash4*MED_W + cdash5*MED_Z + cdash7*MED_W*MED_Z +
     cdash10*MED_V + cdash11*HIGH_Q + cdash13*MED_V*HIGH_Q;
    DHMMH = cdash1 + cdash4*HIGH_W + cdash5*MED_Z + cdash7*HIGH_W*MED_Z +
     cdash10*MED_V + cdash11*HIGH_Q + cdash13*MED_V*HIGH_Q;
    DLHMH = cdash1 + cdash4*LOW_W + cdash5*HIGH_Z + cdash7*LOW_W*HIGH_Z +
     cdash10*MED_V + cdash11*HIGH_Q + cdash13*MED_V*HIGH_Q;
    DMHMH = cdash1 + cdash4*MED_W + cdash5*HIGH_Z + cdash7*MED_W*HIGH_Z +
     cdash10*MED_V + cdash11*HIGH_Q + cdash13*MED_V*HIGH_Q;
    DHHMH = cdash1 + cdash4*HIGH_W + cdash5*HIGH_Z + cdash7*HIGH_W*HIGH_Z +
     cdash10*MED_V + cdash11*HIGH_Q + cdash13*MED_V*HIGH_Q;
    DLLHH = cdash1 + cdash4*LOW_W + cdash5*LOW_Z + cdash7*LOW_W*LOW_Z +
     cdash10*HIGH_V + cdash11*HIGH_Q + cdash13*HIGH_V*HIGH_Q;
    DMLHH = cdash1 + cdash4*MED_W + cdash5*LOW_Z + cdash7*MED_W*LOW_Z +
     cdash10*HIGH_V + cdash11*HIGH_Q + cdash13*HIGH_V*HIGH_Q;
    DHLHH = cdash1 + cdash4*HIGH_W + cdash5*LOW_Z + cdash7*HIGH_W*LOW_Z +
     cdash10*HIGH_V + cdash11*HIGH_Q + cdash13*HIGH_V*HIGH_Q;
    DLMHH = cdash1 + cdash4*LOW_W + cdash5*MED_Z + cdash7*LOW_W*MED_Z +
     cdash10*HIGH_V + cdash11*HIGH_Q + cdash13*HIGH_V*HIGH_Q;
    DMMHH = cdash1 + cdash4*MED_W + cdash5*MED_Z + cdash7*MED_W*MED_Z +
     cdash10*HIGH_V + cdash11*HIGH_Q + cdash13*HIGH_V*HIGH_Q;
    DHMHH = cdash1 + cdash4*HIGH_W + cdash5*MED_Z + cdash7*HIGH_W*MED_Z +
     cdash10*HIGH_V + cdash11*HIGH_Q + cdash13*HIGH_V*HIGH_Q;
    DLHHH = cdash1 + cdash4*LOW_W + cdash5*HIGH_Z + cdash7*LOW_W*HIGH_Z +
     cdash10*HIGH_V + cdash11*HIGH_Q + cdash13*HIGH_V*HIGH_Q;
    DMHHH = cdash1 + cdash4*MED_W + cdash5*HIGH_Z + cdash7*MED_W*HIGH_Z +
     cdash10*HIGH_V + cdash11*HIGH_Q + cdash13*HIGH_V*HIGH_Q;
    DHHHH = cdash1 + cdash4*HIGH_W + cdash5*HIGH_Z + cdash7*HIGH_W*HIGH_Z +
     cdash10*HIGH_V + cdash11*HIGH_Q + cdash13*HIGH_V*HIGH_Q;
! Calc conditional total effects for each combination of moderator values
    TLLLL = ILLLL + DLLLL;
    TMLLL = IMLLL + DMLLL;
    THLLL = IHLLL + DHLLL;
    TLMLL = ILMLL + DLMLL;
    TMMLL = IMMLL + DMMLL;
    THMLL = IHMLL + DHMLL;
    TLHLL = ILHLL + DLHLL;
    TMHLL = IMHLL + DMHLL;
    THHLL = IHHLL + DHHLL;
    TLLML = ILLML + DLLML;
    TMLML = IMLML + DMLML;
    THLML = IHLML + DHLML;
    TLMML = ILMML + DLMML;
    TMMML = IMMML + DMMML;
    THMML = IHMML + DHMML;
    TLHML = ILHML + DLHML;
    TMHML = IMHML + DMHML;
    THHML = IHHML + DHHML;
    TLLHL = ILLHL + DLLHL;
    TMLHL = IMLHL + DMLHL;
    THLHL = IHLHL + DHLHL;
    TLMHL = ILMHL + DLMHL;
    TMMHL = IMMHL + DMMHL;
    THMHL = IHMHL + DHMHL;
    TLHHL = ILHHL + DLHHL;
    TMHHL = IMHHL + DMHHL;
    THHHL = IHHHL + DHHHL;
    TLLLM = ILLLM + DLLLM;
    TMLLM = IMLLM + DMLLM;
    THLLM = IHLLM + DHLLM;
    TLMLM = ILMLM + DLMLM;
    TMMLM = IMMLM + DMMLM;
    THMLM = IHMLM + DHMLM;
    TLHLM = ILHLM + DLHLM;
    TMHLM = IMHLM + DMHLM;
    THHLM = IHHLM + DHHLM;
    TLLMM = ILLMM + DLLMM;
    TMLMM = IMLMM + DMLMM;
    THLMM = IHLMM + DHLMM;
    TLMMM = ILMMM + DLMMM;
    TMMMM = IMMMM + DMMMM;
    THMMM = IHMMM + DHMMM;
    TLHMM = ILHMM + DLHMM;
    TMHMM = IMHMM + DMHMM;
    THHMM = IHHMM + DHHMM;
    TLLHM = ILLHM + DLLHM;
    TMLHM = IMLHM + DMLHM;
    THLHM = IHLHM + DHLHM;
    TLMHM = ILMHM + DLMHM;
    TMMHM = IMMHM + DMMHM;
    THMHM = IHMHM + DHMHM;
    TLHHM = ILHHM + DLHHM;
    TMHHM = IMHHM + DMHHM;
    THHHM = IHHHM + DHHHM;
    TLLLH = ILLLH + DLLLH;
    TMLLH = IMLLH + DMLLH;
    THLLH = IHLLH + DHLLH;
    TLMLH = ILMLH + DLMLH;
    TMMLH = IMMLH + DMMLH;
    THMLH = IHMLH + DHMLH;
    TLHLH = ILHLH + DLHLH;
    TMHLH = IMHLH + DMHLH;
    THHLH = IHHLH + DHHLH;
    TLLMH = ILLMH + DLLMH;
    TMLMH = IMLMH + DMLMH;
    THLMH = IHLMH + DHLMH;
    TLMMH = ILMMH + DLMMH;
    TMMMH = IMMMH + DMMMH;
    THMMH = IHMMH + DHMMH;
    TLHMH = ILHMH + DLHMH;
    TMHMH = IMHMH + DMHMH;
    THHMH = IHHMH + DHHMH;
    TLLHH = ILLHH + DLLHH;
    TMLHH = IMLHH + DMLHH;
    THLHH = IHLHH + DHLHH;
    TLMHH = ILMHH + DLMHH;
    TMMHH = IMMHH + DMMHH;
    THMHH = IHMHH + DHMHH;
    TLHHH = ILHHH + DLHHH;
    TMHHH = IMHHH + DMHHH;
    THHHH = IHHHH + DHHHH;
! 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 from -3 to 3 in LOOP() statement since
! X is factor with mean set at default of 0
    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,-3,3,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:
   CINT;