hartmuts exercise.cpp + framework