https://medium.com/@arijit83work/demystifying-java-collections-set-hashset-and-linkedhashset-77478543b1aa