private Address SelectRandomNode(ImmutableList<Address> addresses) { if (addresses.IsEmpty) return null; return addresses[ThreadLocalRandom.Current.Next(addresses.Count - 1)]; }