fun with lambda expressions is getting out of control