retrieved from https://stackoverflow.com/a/46135882 original author LWimsey <https://stackoverflow.com/users/6651824/lwimsey> (c) 2017 edited and made into a header-only lib by wanderer <a_mirre at utb.cz> (c) 2021