https://mamchenkov.net/wordpress/2003/07/10/random-bits-31/
Random bits