I will solve this the tdd way which involves more rework but I think it is more appropriate and should end up the same anyway