A binary block code where all words are codewords is in no way error-detecting. If an additional bit is added to each codeword so that the number of 1s in each new codeword is even, the new code is error-detecting. For example, the codewords 00, 01, 10, and 11 would become the new codewords 000, 011, 101, and 110. The additional bit is called a check digit, and in this case the construction is a parity check. It would detect any single error in a transmitted codeword. More complicated checksums can be used in order to detect or correct errors; for example, a Hamming code needs only 8 extra bits to be able to correct a single error for a block code of length 247.