You would probably not like to spend that much money. ![]()
Have a look at the Bounce2 library, it is lean and easy to grasp,
and you don't have to program the state change detection and debouncing by hand.
You should nevertheless program both actions at least once, to understand what is going on.