skeleton for the task