Basic framework for Problem019