experimenting with functional interface creation