referred to as currentVars. This process modifies the variables assigned to currentVars using syntax elements and derived upper-case variables for the current macroblock, which is specified by its address mbAddr and the layer representation identifier currDQId. Unless stated otherwise, the syntax elements and derived upper-case variables that are referred to by the process specified in this clause and all child processes invoked from this process are the syntax elements and derived upper-case variables for the current layer representation with DQId equal to currDQId. Inside this clause, the arrays that are collectively referred to as currentVars are referred to by their names as specified in clause G.8.1.2.1. Inside this clause, the following applies: If refLayerVars is present as input to this clause, the arrays fieldMbFlag and mbType of the collective term refLayerVars are referred to as refLayerFieldMbFlag and refLayerMbType, respectively. Otherwise (refLayerVars are not present as input to this clause), the variables refLayerFieldMbFlag and refLayerMbType are marked as not available. The target macroblock decoding process is specified by the following ordered steps: 1. The variable CurrMbAddr is set equal to mbAddr. 2. When MaxTCoeffLevelPredFlag is equal to 1, (sliceIdc| mbAddr &127) is not equal to currDQId, and ChromaArrayType is not equal to 0, the following ordered steps are specified: The variable cQPy is set equal to tQPy[ mbAddr ], and for CX being replaced by Cb and Cr, the variable cQPcx is set equal to the value of QPcx that corresponds to a value of cQPy for QPy as specified in clause 8.5.8. b. The transform coefficient level scaling process prior to transform coefficient refinement as specified in clause G.8.5.2 is invoked with cTrafo[ mbAddr ], tCoeffLevel[ mbAddr ], tQPy set equal to cQPy, refQPy set equal to tQPy[ mbAddr ], and, when ChromaArrayType is not equal to 0, tQPCb set equal to cQPcb, tQPcr set equal to cQPcr, refQPcb set equal to tQPcb[ mbAddr ], refQPcr set equal to tQPcr[ mbAddr ] 