ansforms to produce an array of transformed samples, the final constructed residual sample values are derived as j = 0..7 (8-406) 8.5.14 Picture construction process prior to deblocking filter process Inputs to this process are: a sample array u with elements Uij which is a 16x16 luma block or an (MbWidthC)x(MbHeightC) chroma block or a 4x4 luma block or a 4x4 chroma block or an 8x8 luma block or, when ChromaArrayType is equal to 3, an 8x8 chroma block, when u is not a 16x16 luma block or an (MbWidthC)x(MbHeightC) chroma block, a block index luma4x4BlkIdx or chroma4x4BlkIdx or luma8x8BlkIdx or cb4x4BlkIdx or cr4x4BlkIdx or cb8x8BlkIdx or cr8x8BlkIdx. The position of the upper-left luma sample of the current macroblock is derived by invoking the inverse macroblock scanning process in clause 6.4.1 with CurrMbAddr as input and the output being assigned to ( xP, yP). When u is a luma block, for each sample Uij of the luma block, the following ordered steps are specified: 1. Depending on the size of the block u, the following applies: If u is a 16x16 luma block, the position (xO, yO ) of the upper-left sample of the 16x16 luma block inside the macroblock is set equal to 0, 0 and the variable nE is set equal to 16. Otherwise, if u is an 4x4 luma block, the position of the upper-left sample of the 4x4 luma block with index luma4x4BlkIdx inside the macroblock is derived by invoking the inverse 4x4 luma block scanning process in clause 6.4.3 with luma4x4BlkIdx as the input and the output being assigned to xO, yO), and the variable nE is set equal to 4. Otherwise (u is an 8x8 luma block), the position of the upper-left sample of the 8x8 luma block with index luma8x8BlkIdx inside the macroblock is derived by invoking the inverse 8x8 luma block scanning process in clause 6.4.5 with luma8x8BlkIdx as the input and the output being assigned to xO, yO) and the variable nE is set equal to 8. 2. Depending on the variable MbaffFrameFlag and the current macroblock, the following applies: If MbaffFrameFlag is equal to 1 and the curre