TITLE:
  Ch 7b: Random Linear Age Model

DATA:
  ! Prior necessary data manipulation conducted using other programs
  FILE = MPLUS_Chapter7b.csv;
  FORMAT = FREE;

VARIABLE:
  NAMES = PersonID att12 copymon18 occasion age risky monitor agec18 att4;
  USEVARIABLES = risky agec18;
  MISSING = ALL (-9999);
  CLUSTER = PersonID;
  WITHIN = agec18;

ANALYSIS:
  ESTIMATOR = ML;
  PROCESSORS = 4;
  TYPE = TWOLEVEL RANDOM;

MODEL:

%WITHIN%
  risky;
  linear | risky ON agec18;

%BETWEEN%
  [risky linear] (int bagec18);
  risky linear;
  risky WITH linear;

MODEL CONSTRAINT:
  NEW(est1-est7);
! est1: Intercept at Age=12
  est1 = int*1 - bagec18*6;
! est2: Intercept at Age=13
  est2 = int*1 - bagec18*5;
! est3: Intercept at Age=14
  est3 = int*1 - bagec18*4;
! est4: Intercept at Age=15
  est4 = int*1 - bagec18*3;
! est5: Intercept at Age=16
  est5 = int*1 - bagec18*2;
! est6: Intercept at Age=17
  est6 = int*1 - bagec18*1;
! est7: Intercept at Age=18
  est7 = int*1 - bagec18*0;