Adding the decorator Pattern