required with some edits
A functionality
Bonus Functionality