erived as follows: If the macroblock type is equal to B_8x8, currSubMbType is set equal to _mb_type[ mbPartIdx ]. Otherwise (the macroblock type is not equal to B_8x8), currSubMbType is set equal to "na". When predFlagLX is equal to 1, the derivation process for luma motion vector prediction in clause 8.4.1.3 is invoked with mbPartIdx subMbPartIdx, refIdxLX, and currSubMbType as the inputs and the output being mvpLX. The luma motion vectors are derived by mvLX[0]=mvpLX[0]+mvd_IX[mbPartIdx][ = subMbPartIdx [0] (8-172) mvLX[ = mvpLX[1 - mvd_IX[ mbPartIdx ][ subMbPartIdx [[]] (8-173) When ChromaArrayType is not equal to 0 and predFlagLX (with X being either 0 or 1) is equal to 1, the derivation process for chroma motion vectors in clause 8.4.1.4 is invoked with mvLX and refldxLX as input and the output being mvCLX. 8.4.1.1 Derivation process for luma motion vectors for skipped macroblocks in P and SP slices This process is invoked when mb_type is equal to P_Skip. Outputs of this process are the motion vector mvL0 and the reference index refIdxL0. The reference index refIdxL0 for a skipped macroblock is derived as: refIdxL0 = 0. (8-174) For the derivation of the motion vector mvL0 of a P_Skip macroblock type, the following ordered steps are specified: 1. The process specified in clause 8.4.1.3.2 is invoked with mbPartIdx set equal to 0, subMbPartIdx set equal to 0, currSubMbType set equal to "na", and listSuffixFlag set equal to 0 as input and the output is assigned to mbAddrA, mbAddrB, mvL0A, mvL0B, refIdxL0A, and refIdxL0B. The variable mvL0 is specified as follows: If any of the following conditions are true, both components of the motion vector mvL0 are set equal to 0: Rec. ITU-T H.264 (01/2012) mbAddrA is not available, mbAddrB is not available, refIdxL0A is equal to 0 and both components of mvL0A are equal to 0, refIdxL0B is equal to 0 and both components of mvL0B are equal to 0. Otherwise, the derivation process for luma motion vector prediction as specified in clause 8.4.1.3 is invoked with mbPartIdx = 0, sub