many whitespace and indendation changes