added inline subheadings for better clarity: exact, sparse, etc