Refactored MonthSupply Report to work with builder and visitor pattern