random number generation update