I doubt it actually works correctly. When I get a random number out of 904625697166532776746648320380374280100293470930272690489102837043110636675, it's the probably that it has the same amount of digits is ~1:9 and has at least 3 digits less is ~1:900. But i constantly get way smaller numbers.