import java.util.stream.*;
import java.util.function.*;
import java.security.SecureRandom;
import java.math.BigInteger;
class Person {
final String name;
Person(String name) { this.name = name;}
public String toString() { return this.name;}
}
class RandomPeople {
private String generateRandomString(){
return new BigInteger(130, new SecureRandom()).toString(10);
}
Stream<Person> getPeople() {
return Stream.generate(new Supplier<Person>(){
long n = 0;
public Person get() {
return new Person("person_" + n++ + "-" + generateRandomString());
}
});
}
}
public class Main {
public static void main(String[] args) {
Stream<Person> stream = new RandomPeople().getPeople();
stream.limit(10).forEach(System.out::println);
}
}