don't ignore main
code formatting
cleanup