adding-button-functions branch