circle button refactoring