fix: make buttons work again
refactor: cont'd