Effective error correction