https://medium.com/@dgodfrey206/the-c-20-standard-an-overview-of-new-c-features-part-3-concepts-157d6e3db1d3