1. A method comprising: receiving a signal containing an extended codeword that has been encoded with a block code and a single parity check code; extracting the extended codeword from the signal; determining a weakest bit of the extended codeword; checking a parity of the extended codeword; determining whether to flip the weakest bit of the extended codeword based on the parity of the extended codeword; obtaining a codeword by removing a parity bit associated with the single parity check code from the extended codeword; and block decoding the codeword.