model {
	A ~ dcat(p_A[input_A, ])
		input_A <- 4*(D - 1) + 2*(B - 1) + C
	B ~ dcat(p_B[input_B, ])
		input_B <- 2*(C - 1) + D
	C ~ dcat(p_C[input_C, ])
		input_C <- D
	D ~ dcat(p_D[])
}
