US gas tops $4 a gallon on average as Iran war increases prices