I think we can use `ThreadLocalRandom.current()` instead of `new Random()` since the random is not being held on to and used across threads.