ECE440 Week 10: General Coding Theory