1. const declarations 2. var declarations 3. types and their methods 4. functions Each group alphabetically Exceptions: 1. `main` and `init` at the very bottom 2. re-order struct if layout/padding is important for performance reasons 3. consts where custom ordering makes sense or is important 4. var declarations referencing previous var references