https://www.mybluelinux.com/python-sorting/