everything seems to be working, except button