https://www.freecodecamp.org/news/javascript-rest-vs-spread-operators/