Default math.rand.Source is thread save while rand.New(Source) is not
Default pacakge rand uses Source that is thread safe with default seed
we can use the pacakge’s method to have thread safe random number generation
rand.NewSource() offers thread unsafe implementation.
One of the reason to choose the unsafe implementation to avoid
synchronization, especially when you have only single go routine.