refactor, better autoindent, document