https://javascript.plainenglish.io/javascript-destructuring-techniques-that-every-developer-should-know-dbe9b6d25e6c