https://blog.tdevin.com/posts/linear-block-code-error-correction/