some refactoring and voting buttons