using c++11 lambda