Almost pep8 compliant