https://medium.com/@architagr/know-how-elements-are-referenced-in-range-loops-to-avoid-common-pitfalls-in-go-b8cf4f327a4e