Error correcting codes. Theory of error-correcting codes.