added bits of mpp1