State(AnyValue inArg) : mStorage(inArg.copyIfImmutable()), widthOfX(&mStorage[0]), coef(TransparentHandle::create(&mStorage[1]), widthOfX), numRows(&mStorage[1 + widthOfX]), X_transp_Az(TransparentHandle::create(&mStorage[2 + widthOfX]), widthOfX), X_transp_AX(TransparentHandle::create(&mStorage[2 + 2 * widthOfX]), widthOfX, widthOfX), logLikelihood(&mStorage[2 + widthOfX * widthOfX + 2 * widthOfX]) { }