OK, the reason this all looks so bad here on GitHub is that you are mixing tabs and spaces. Be sure to set your editor to use 4-space tabs only.