tasks 1-3, comments removed and code compressed. Nothing new...