Combinatorial Optimization Lecture Notes (UIUC CS598CSC)